Macintosh Developer Online (MDOnline)


2001年3月24日発行号 - Mac OS Xを解説する



「Browsing Mac OS X」というコーナー名で、Mac OS Xの製品版に関する一連の記事をお届けすることにします。ちなみに、Browsing Mac OSというサイトは私が提供しているMac OS関連のサイトです。MDOnline的に、Mac OS Xをブラウズしてみようという主旨です。おそらく、しばらくは毎日何かを書くことになりそうです。
今日は3本ありますが、「Macintoshの新しい歴史が今日から始まる」は、改めてMac OS Xとは何かというところから書いた記事なので、すでに詳しい人にとっては知っていることばかりだと思います。「Mac OS Xの現在の姿は「プロシューマー向け先進OS」」という記事は、Appleへの取材をもとに書いています。そして、Public Betaとの違いをとりあえずざっとまとめた記事は、むしろPublic Betaからがんがん使っている人にとっては有益な情報ということになるかと思います。
来週は火曜日からの配信になりますけど、TILも大量にあるので、ピックアップしながらということになるかとは思いますが、たくさんの記事を書くことになりそうです。いきなり、ネタがあり過ぎ状態になってしまいました。
(新居雅行 msyk@mdonline.jp


Browsing Mac OS X》Mac OS Xの現在の姿は「プロシューマー向け先進OS」

Macintoshの歴史にはいろいろな節目があった。中でも、68kからPowerPCへの大転換は古いユーザなら記憶に留めているだろう。その時は実はシステム的には変わりなく、一般ユーザにとっては何を騒いでいるのか意味不明だったかもしれない。もっとも、そこで転換をしなかったら、Macintoshの進化は止まっていたかも知れないのだが…。そして、今回のMac OS Xの登場は、実はPowerPCの時以上の転換点でもあるのだ。PowerPCのときはアプリケーション環境的には変更はなかったため、互換性に微妙な問題はあったものの同じアプリケーションが使えたのでそれほどのこともなかった。しかしながら、Mac OS Xは違う。Classic環境が用意されているというものの、Carbon対応で行くにしても、Cocoaを使うにしても、Javaだとしても、デベロッパーに対しては大なり小なり「ソフトウエアを作り直す」という大きな開発コストを強いることになるからだ。もちろん、そのために費用はかかるが時間もかかる。結果的に、Mac OS Xがユーザの手に渡る時に、必ずしもユーザが使っているアプリケーションがMac OS Xにネイティブ対応するということは実現しないのである。だが、「アプリケーションがないからダメ」と決めつけて良いものだろうか?
AppleのCEOのスティーブ・ジョブズ氏は、2001年夏ごろに、Mac OS Xのピークを持ってくるといった意味の発言をしている。つまり、プリインストールの始まる時が本来のスタートアップだという意味にも解釈できる。個人的な見解であるが、2001/3/24に発売されたMac OS X 10.0は事実上の「拡張デベロッパーリリース」であると感じている。だけど、デベロッパーだけがある意味での供給者ではない。熱心にMacintoshを使うユーザも市場を牽引する力をあるとAppleは考えているようだ。その意味で、開発者だけでなく、積極的なユーザを巻き込んだ展開に入る時期が必要だと考えての今回のリリースだと考えるべきだろう。すべての状況が固まってからリリースするのでは、変化の激しい時代には乗り遅れる。むしろ、Appleとして積極的に変化をつくり出すという意図が見えてくる。
アプリケーションや対応製品が不足ぎみという状況については、アップルコンピュータでMac OS Xのマーケティングを担当する櫻場氏は「それはどうしても仕方ないことですし、時間が解決するものだと考えています」と話す。その意味では現状ではMac OS Xという環境自体の未成熟さは認識していると言えるだろう。そして、「すべてのユーザに対してMac OS Xに変えてほしいとは今の段階では勧めることはしません。むしろ、状況が安定してきてからアップデートした方がいいユーザも多いことも理解しています。その意味ではそうしたユーザの方々には夏以降にアップデートされる方がメリットは大きいでしょう」とは話す。つまり、すべてのコンシューマ向けにリリースされたのがMac OS X 10.0ではないということだ。その意味で、個人的な見解であるが、Mac OS Xは今現在はプロシューマ向けOSであると感じた。もちろん、DTPユーザなど、状況的にMac OS Xに変更できないユーザもプロシューマに含まれるのだが、いずれにしても、まずはコンピュータ技術に詳しい人から使いはじめることで、環境の整備に向かうという方向性を持たせたいようだ。
Mac OS XにはDeveloper Toolsが添付されている。これにより、Mac OS X対応アプリケーションを開発することができるのだ。Public Beta以降も、無料でなることができるADC Online会員ならダウンロードできたとは言え、パッケージにCD-ROMとして開発ツールをつけることにはさまざまな見方もできるだろう。この件については「純粋に開発者層を広げたいのが1つですが、UNIXをコアに持つところから今までのMac OSとは違った領域の人たちからの注目も集められないかと考えました」と櫻場浩氏は話している。「そのためにも、製品としてMac OS Xを出していることが重要で、デベロッパーやユーザからのニーズやポテンシャルを集め、そうした声を反映するということが今必要なのです。」特にPublic Betaで行われていたフィードバックの効果を高く評価しているそうで、同じように今後もフィードバックをもとにした機能の改定を行う考えだそうだ。「コアなユーザの方々にはどんどんとたたいて欲しいと思います。そういう人たちに引っ張って行ってもらいたいと考えています」とも話している。
Mac OS Xの正式発売によって、フィードバックが終わったわけでもなく、開発が終了したわけでもない。Appleはまだまだこれからもユーザの意見を集めて、よりニーズにマッチしたOSに機能アップさせようとしている。Mac OS Xはこれからも進化するOSであり、その鍵はMac OS Xを使うユーザにもあると言えるだろう。

カテゴリ:Mac OSテクノロジー, Browsing Mac OS X


Browsing Mac OS X》Mac OS Xがついに正式発売、Public Betaからここが変わった

Mac OS Xが発売されたが、やはりMac OS X Public Betaから使い込んだという方も多いことだろう。この記事では、そうした方々に向けて、Mac OS XでのPublic Betaから変わったところを紹介していきたい。なお、そうした変更点に関する正確に記述されたドキュメントなどを参照しているわけではないので、見落としている点もあるかと思うが、その点は御容赦いただきたい。

★AppleメニューがClassic Mac OSの位置に
Public Betaの何の機能もなくてメニューバーの中央にあったAppleメニューが、左端に移動し、システムの終了や各種システム設定などの機能を呼び出せるようになった。ただし、項目の登録はできない。「最近使った項目」や「強制終了」あたりも、Appleメニューから呼び出すことができる。

★Dockからのポップアップメニューが出るようになった
Dockに登録したアイコンを、マウスで押し続けると、吹き出しのようにメニューが出てくるようになった。ただし、この中身はアプリケーションで用意するようであるが、開発者向けにどうすればここに項目が出てくるのかを解説した文書がないのが残念なところだ。なお、Dockの右半分(文書アイコンの領域)にフォルダを登録すると、そのフォルダ以下の階層に移動するために、このポップアップメニューを利用できる。(Finderの項目をDockのフォルダのアイコンにドラッグ&ドロップできるが、Dockのフォルダのアイコンからポップアップした項目にドラッグ&ドロップができない)

★インストール後の作業について
インストール後に、登録作業が入るようになった。これは、必ず登録作業をしなければならない模様だ。

★AirMacに対応した

★QuickTime 5.0になった

★ハードディスクが自動的にデスクトップにマウントされるようになった

★Classic環境として動くのはMac OS 9.1である

★ルートによるログインができなくなった
(アカウントに関しては回を改めて、詳しく説明をしたい)

★PostScript以外のプリンタに対応した
Epson、HP、Canonのプリンタドライバが、Mac OS Xに最初から入っている。対応機種については、各メーカで確認しよう。

★システム環境設定(System Preferences)にいろいろ変更点がある
細かくあげると切りがないが、大きいところでは「ユーザ」というアイコンが加わっていることや、「ネットワーク」での設定状況や場所の設定があることなどが目立つ。また、設定の変更のためにパスワードを入力する必要があったが、既定の状態では必要なkなった。ただし、ロックはかけられる。

★ログインするとき、アカウントとパスワードを入れないのが既定値となった

★メニューバーに時計が表示されるようになった
なお、Public Betaで自動的に起動していたClockも、/Applicationsフォルダにある。

★Javaの実行環境がおおむねちゃんとなった

★ホームフォルダに、Movies、Pictures、Sitesというフォルダがある

★FinderのウインドウのタイトルバーがClassic Mac OSと同機能に

★iDisk関連の機能
iDiskへ接続するための設定をインストーラで入力し、記録されるようになった。FinderでiDiskへ接続するメニューが用意されている。

★iToolsのメールアカウントに関して
Mac OS Xとは直接関係ないが、iToolsのアカウントがMailに設定される。SMTPサーバもアップルのサーバになっている。

★Dockにディスプレイの解像度設定が加わる
マウスでクリックすると、ポップアップして、解像度や色数を設定できる。ほかに、Dock用ユーティリティとして、バッテリをチェックするものや、AirMacの電波強度を見るものなどが、/Applications/Dock Extrasにある。Dockはコントロールバーへの道を進んでいる?

★Apple System Profiler
これは、Mac OS Xできちんと動くようになったと言うべきだろう。カーネル機能拡張形式のドライバなどの一覧ができるようになっている。

★Cocoaアプリケーションで「サービス」が動く
アプリケーションメニューには「サービス」という項目があり、Grabなどを呼び出せるようになっているが、Public Betaではほとんど機能しているのを見られなかったと思われる。いろいろな場面で「サービス」が使えるようになっている。

カテゴリ:Browsing Mac OS X, Mac OS X


Browsing Mac OS X》Macintoshの新しい歴史が今日から始まる

2001年3月24日、Mac OS X 10.0が正式に発売された。1984年にMacintoshが発売されたときに搭載されたSystem 1.0から、脈々とバージョンを重ねて最新版としてはMac OS 9.1まで進化したMac OS(Classic Mac OSと呼ぶ)からは大きな転換となる。Mac OS XはClassic Mac OSとはまったく違うところをベースにして開発された新しいOSである。2000年9月にMac OS X Public Betaとして、公開ベータ版が出荷され、一般ユーザからのフィードバックを集め、ある意味での完成版が、3/24に発売された「Mac OS X 10.0」である。日本語版を含む各国語版が1つのCD-ROMに組み込まれた完全に国際化されたOSである。
Classic Mac OSは、非常に限られたメモリしかもち得なかった初期のMacintoshの環境に、ある意味では最適化されていた。しかしながら、メモリの大容量化、ハードディスクの登場、カラー機能やマルチメディアといったさまざまな環境の変化に、それなりには追随していたが、ソフトウエアを安定して稼動させるという点においては、やはりその土台が単一のアプリケーションを動かすという初期のMac OSの基盤をそのまま引きずっていたと言える。複数のアプリケーションを切り替えて使うのが当たり前の現在においては、これ以上の安定性の確保やあるいは発展性という点では頭打ちとも言える状況であった。もちろん、Appleはそうした状態を今までなおざりにしていたわけではない。古くはCoplandなどOSの基盤をより強固にするという試みは行われたが、伝えられるところによればそうした試みはとん挫している。そして、1996年末紆余曲折の上、NeXT Computerを買収して吸収する形で、そのときのNeXT社のOSであるOPENSTEPをベースに次世台OSを作り上げるという基本方針を打ち立てた。その後、新しいOSはRhapsodyというコード名でデベロッパーに配付されるものの、Classic Mac OSとの互換性が低く、既存のアプリケーションはまったく0から書き直さないといけないという状況がデベロッパーの不評を買った。そこで、1998年にCarbonという枠組みをAppleは提示し、従来のアプリケーションを最小限の労力で新しいOSに十分に対応したと言える状況に持ち込むことを約束したのである。そうして、2000年9月にPublic Beta、2001年3月に正式発売へと漕ぎ着けたのが「Mac OS X 10.0」ということだ。Public Beta以降、デベロッパーの対応も活発化したが、正式発売でさらにそれは加速することは間違いはない。なお、2001年夏(間違いなく7月)におそらくは改定されるであろうMacintoshのハードウエア製品から、Mac OS Xが標準でバンドルされるようになる。Mac OS XはMac OS 9.1を、その中で動かすことができる。また、Mac OS 9.1だけを起動するということも可能である。ユーザのニーズに応じて、Classic OSについてもさままな利用ができるようになっている。

□Mac OS XがMac OSと違うところ
Mac OS Xは今までのMac OSとどこが違うのだろうか。いちばん大きな違いは、OSの土台部分である。OPENSTEPは古くから、Machというカーネル(ソフトウエアを動かす基盤になる部分)を持ち、オペレーティングシステムとしての機能を実現するBSDを組み込んでいた。それを引き継ぎ、より新しいバージョンにするなどして、Mac OS XのベースになるOSを作り上げている。その部分はDarwinと呼ばれ、ソースコードが公開されている。この部分は「コアOS」とも言われる。いずれにしても、Mach、BSDにより、UNIXとして知られているOSと同様な基盤を持つことになる。UNIXはさまざまな方向に進化を遂げ、よく名前が知られているところではLinux、FreeBSD、SolarisなどのOSがある。いずれも、効率的なメモリ利用や複数のソフトウエアを並行的に実行処理、同時実行しているソフトウエアの分離等の機能を擁しており、安定した稼動を実現すると言うのが大きな特徴となっている。Mac OS Xによって、そうした特徴がMacintoshでも利用できるのである。
Mac OSでは、複数のアプリケーションが稼動できたが、協調的なマルチタスクと言い、それぞれのアプリケーションが適当に他のアプリケーションなどにも実行の機会を与えるという方式であった。そのため、アプリケーションが不安定になるとシステム全体が利用できなくなることもあったし、実行の機会を与える処理が後回しになると、事実上は複数のアプリケーションが稼動しているとは言えない状況にもなり得たのである。さらにソフトウエアは、一般にはメモリに展開して稼動するが、ソフトウエアごとに利用するメモリ空間は分離されていなかった。そのため、あるソフトウエアの不具合により別のソフトウエアにまで影響が波及する。また、やはり単一アプリケーションしか稼動しなかった時代の名残りとも言えるのが、アプリケーションが利用するメモリをあらかじめ指定するという必要がある点だ。一般にはそこで確保したメモリ以上のデータ領域を取れないためにメモリ不足ということが発生する。一方、その領域はアプリケーションが独占的に使うため、余分に確保すると使わない領域が増え、同時に利用できるアプリケーションも限定されてくるなど、メモリ利用効率は決して高いとは言えない状態であった。
一方、Mac OS Xは、複数のソフトウエアの稼動を、OSによってスケジューリングして稼動する。こうした方式を「プリエンティティブマルチタスク」と呼んでいる。そのため、1つのソフトウエアの都合で他のソフトウエアが稼動する機会が失われるということは論理的にはなくなる。従って、複数のソフトウエアをよりスムーズに動かすということが期待できるのである。また、「メモリ保護」としてソフトウエアが使うメモリを、OSのレベルで完全に分離し、相互干渉が起きないようにもなっている。あるソフトウエアが完全にフリーズしても、そのままシステムは使い続けることができるほどの堅牢さを持つということだ。また、メモリ管理も洗練された。Mac OSでは、システムが利用できるメモリを指定し、さらにアプリケーションでのメモリを指定するということになっていたが、そうした考え方はMac OS Xでは存在しない。もちろん、物理メモリを数多く積む程処理に対しては有利になるのは変わらないが、システムあるいはアプリケーションの上限ということに対してはほとんど自動的に効率的に処理され、利用者が過度に気にする必要はなくなったと言えるだろう。
また、UNIXというOSは、ネットワーク機能はインターネットと相性が良い。相性が良いというよりも、UNIXのネットワーク機能がインターネットになったわけだ。Mac OSもWindowsも独自のネットワーク機能を持っていたが、今ではTCP/IPを中心とした機能が主流である。Mac OSでもOpen Transportとして強固なネットワーク機能は構築してきたが、Mac OS XではコアOS自体にインターネットの機能が組み込まれている。
(続く)

カテゴリ:Mac OSテクノロジー


Browsing Mac OS X》Macintoshの新しい歴史が今日から始まる(その2)

□Mac OS Xで動くアプリケーション
土台がしっかりしていても、アプリケーションがないことにはなにもできないのは言うまでもない。そのための枠組みとして、Mac OS Xはいくつもの選択肢を用意している。もっとも、その選択権はある意味では開発者側にゆだねられている面もある。しかしながら、過去との互換性、他のプラットフォームとの共通性など、豊富な選択肢を与えているという点でも注目することができる。
まず、OPENSTEPから引き継がれたアプリケーション実行環境として「Cocoa」がある(古くはYellow Boxなどと呼ばれていた)。Cocoaのフレームワークは完全にオブジェクト指向で設計されたものとなっている。オブジェクト指向の特徴である開発効率の高さに加え、フレームワークの使い方自体の明解さがデベロッパーに受けている。以前はObjective-Cというマイナーな言語での開発しかできないかったのだが、現在は他にJavaでも開発ができるなど、選択肢が増えている。とりわけ、開発ツールのInterface Builderで設計したGUIをベースにアプリケーションなどを作成することができるところは、スピーティに開発をすすめるという点では有利である。また、CocoaはOPENSTEP時代から組み込まれている機能でもあり、CocoaベースのアプリケーションはMac OS Xの本来の特徴を十分に生かすことができる点で、「ネイティブアプリケーション」とも呼ばれる。
一方、Classicと呼ばれる環境は、Mac OS 9.1自体を、Mac OS Xの中で起動することにより、Mac OS Xの中でも、Mac OS 9.1対応のアプリケーションを動かしてしまうというものである。しかも1つのウインドウの中だけでMac OS 9.1のアプリケーションが動くというわけではなく、他のネイティブアプリケーションとあたかも近い感じで利用できる。最初に起動した時にはMac OS 9.1の起動時間が余分にかかったり、ウインドウなどのみかけがMac OS 9.1タイプであるなどの違いがあるが、いずれにしても、Mac OS 9.1対応アプリケーションがそのまま動くと言う環境をMac OS Xには組み込まれている。もっとも、処理速度の低下や、場合によっては印刷ができなくなるなどの制約はあるため、完全ではない。しかしながら、かなり高いレベルで、Mac OS 9.1の環境をMac OS Xの中に実現しているのである。
さらに、Carbonというフレームワークが用意されている。Carbonは、Classic Mac OSで用意されていたシステム機能の多くを、そのままMac OS Xでも利用できるようにしたものだ。しかも、Mac OS Xのマルチタスクやメモリ保護といった機能を十分に利用できることもあって、Carbon対応アプリケーションも「ネイティブアプリケーション」と呼ぶのが一般的となってきている。Classic Mac OSと機能面で共通なので、Classic Mac OS向けのアプリケーションのソースコードをある程度の手直しで、Mac OS Xでもネイティブアプリケーションとして稼動させることができる。従来のデベロッパーにとってはこれまでのノウハウを生かせるわけで、新しいOS対応ソフトウエアを作成しようという気力がうまれる。今現在、Classic Mac OS向けのアプリケーションが次々とCarbon対応している。ただし、実際にネイティブと言えるようになるためには、小手先の改良ではだめなことも多いため、かなり気合いをいれてかからないとCarbon化できないとも評価できるだろう。ただし、当初はCarbonはCocoaに至るためのステップの1つのように言われていたものの、AppleもCarbon環境をかなり充実させているために、Carbonも1つの確固としたネイティブアプリケーション実行環境と言えるまでになっている。
そして、忘れていはいけないのはJava2 Standard Editionの対応だ。クロスプラットフォーム対応のソフトウエア実行環境としてJavaがブームになったのは、1996〜1997年だが、その後のWindowsの対応からデスクトップ向けの利用は頭打ちになったものの、サーバ開発、あるいは携帯電話などでは今や中心的な開発言語となりつつある。クロスプラットフォームはもちろん特徴ではあるが、現在ではバグが潜在しにくい言語としてのJavaや、あるいはライブラリ機能の充実などを目当てにJavaが使われるようになっていると言えるだろう。Javaのライブラリ機能としては高機能ユーザインタフェースコンポーネント群のSwingあたりが有名だが、Swingに基づいてJavaで作成したプログラムがMac OS Xでも稼動するのである。Javaは遅いというのが通説になっているが、現在のJavaは十分に実行スピードも確保できていると言えるだろう。
グラフィックスに強いMac OSという定評は、Mac OS Xでも崩れることはないだろう。2次元画像処理は、PDFフォーマットを基調にしたQuartz、そして3次元画像処理は業界標準のOpenGL、そしてマルチメディアはQuickTimeが搭載されている。なお、従来のQuickDrawはなくなったわけではなく、Carbonアプリケーションでは使うことも多いかもしれないが、コアな機能とは言えなくなっているようだ。

□Mac OS XのオペレーションとAqua
こうした基盤を持つMac OS Xであるが、それを実際に使う必要がある。もちろん、ウインドウに表示するという形式はMac OSと同様だが、まず、ウインドウやスクロールバー、ボタンといったコントロール類のデザインを「Aqua」というコンセプトに基づいた統一的かつオリジナリティの高いデザインで統一した。「水」という意味を持つ単語から想像できるように、水色を基調として、水滴の雰囲気があるかなり印象に残るデザインである。ただし、Classic環境で稼動させたアプリケーションはAquaは利用しない。また、彩度が強いという要望にも応えて、グレーな雰囲気の見かけも選択できるようになっている。
ウインドウが表示されることに加えて、Dockという機能が利用できるのがMac OS Xのユーザインタフェースの大きな特徴だろう。画面下にアイコンが並ぶのがDockである。Dockにはいろいろな機能が込められており、また今後も改良・拡張するものと思われる。1つの機能はアプリケーションや文書のアイコンを登録しており、起動や呼び出しを行うというものだ。また、そのアプリケーションへのドラッグ&ドロップの受付もDockで行えるのが一般的だ。デスクトップにあったゴミ箱もDockに移動しているが、アプリケーションの文書ウインドウから利用しづらかったゴミ箱も、常に前面に出ているDockの中にある方が使いやすい。もっとも、Dock自体がウインドウの一部に重なり、たとえばウインドウの右下のサイズボックスを操作しづらくなるという点もあるのだが、Dockを画面下にマウスを移動したときにだけ表示するように切り替えることなどでこうした問題も対処できるようにはなる。
そして、ファイル処理を行うなどの基本アプリケーションとしてのFinderも、Mac OSと同様Mac OS Xにもある。同じFinderという名前であるが、機能的には大きく違っている。ファイルの一覧を階層的に表示する独特のカラムビューという表示形態があったり、ウインドウ自体にツールバーがあってボタンがありさらにそれをカスタマイズできたり、フォルダをダブルクリックしても新しいウインドウは開かないのが既定の状態であるなど、従来のユーザにとっては考え方をある程度は変えないと使いこなせないものとなっている。

□Mac OS Xに遅かれ早かれ移行せざるを得ない
こうした特徴のあるMac OS Xであるが、やはりできればネイティブアプリケーションで使いたい。そうしたアプリケーション対応が行われるまではMac OS 8/9を使い続けるユーザも多いというのが予想だ。だが、Mac OS Xへの移行は、Appleにとっては後戻りできない段階に踏み込んだものなのである。ズバリ言って、Mac OS Xがだめなら、Macintoshコミュニティは存在しなくなると言っても良い。もちろん、今日発売だから今日から使わないと意味はないとまでは言わない。しかしながら、人によっては違うけども、これからMacintoshを使い続けるのであれば、いつかはMac OS Xへユーザも踏み込まなければならない時が来るのである。その大転換のスタートが、2001年3月24日なのである。

カテゴリ: