OSというコンピュータの基盤部分を司るソフトウェアは、機能を追加するばかりでなく、一定のタイミングで機能を「取り去る」ことも重要だ。今回は、Lionで姿を消した「Rosetta」と「Front Row」を中心に4つの機能に注目してみよう。

■合わせてお読みください
【レビュー】奥の奥までOS X Lion 第1回 - Lionで変わる、Lionが変える「文書」のあり方 【レビュー】奥の奥までOS X Lion 第2回 - 未知のパーティション「Recovery HD」を探る

2005年6月のWWDCで「Intel Mac」が発表されてから、はや6年が経過した。当初2年とされた移行期間を経て、2009年リリースのSnow LeopardはPowerPCマシンで起動しなくなり、LionではついにPowerPCアプリケーションが動作しなくなった。それには2つの理由がある。

OS Xは、複数のアーキテクチャをサポートするために好都合な機構を備えている。OS X/Darwinが採用するバイナリフォーマット「Mach-O」は、単一ファイルに複数のバイナリを収録できるため、たとえバンドル構造を持たないUNIXコマンドであろうと、"IntelでもPowerPCでもネイティブの速度で"動くプログラムを容易に作成できるのだ。TigerやLeopardの頃は、そのような「ユニバーサルアプリケーション」が大量に流通していたのはご記憶のとおり。

典型的なUniversalアプリケーションは、3アーキテクチャ(i386/x86_64/PowerPC)ぶんのバイナリが収録されている

それがSnow Leopardのとき、標準装備のアプリケーションの多くがIntelバイナリしか収録しなくなり、サードパーティー製品も次第にPowerPCバイナリを収録しなくなった。PowerPCとIntelのバイナリが共存するユニバーサルアプリケーションの役目は、Snow Leopardをもって完了したと見ていいだろう。だから、今後はファイルサイズが嵩む「Universal」ではなく、「Intel」とのみ表示されたアプリケーションを入手すればいい。

システムから「Rosetta」が取り去られたため、PowerPCバイナリのみで構成されるアプリケーションはLionでは動作しない

もう1つ、Appleは「Rosetta」を用意していた。PowerPCバイナリをジャスト・イン・タイムにIntelバイナリへと変換、じゅうぶん実用的な速度でPowerPCバイナリ(非ユニバーサルアプリケーション)を実行できる技術だ。ただし、これは外部企業から調達した技術で、いわば"助っ人"。役目が終われば取り去られることが予想されていた。それがLionでいよいよ現実のものとなった。

さらに、/System/Library/Frameworksや/System/Library/PrivateFrameworksに収録されているシステムフレームワークからも、Snow Leopardまでは存在したPowerPCバイナリが消えている。Rosettaが別売オプションで提供されれば――と期待する向きもありそうだが、フレームワークごと(PowerPCバイナリ同梱版に)入れ替えられることは考えにくいため、今後もLionでRosettaが動くことはないと諦めたほうがいいだろう。

Rosettaの処理系が収録されていた/usr/libexec/oahディレクトリは、Rosetta無効時に使用される一種のダミー「RosettaNonGrata」を除き空になった