20年前の今週、Mac OS Xの最初のバージョンが店頭に並びました。比喩的な話ではありません。このソフトウェアはディスクで消費者に直接販売され、希望小売価格は129ドル(インフレ調整後の現在の約190ドル)でした。
2001年当時、Mac OS X 10.00 Cheetahは、初代MacintoshのSystem 1ソフトウェアに多くを由来とする、古びつつあったClassic Mac OSから、やや骨太な脱却を遂げたものでした。それ以来、このプラットフォームは2度のアーキテクチャ移行(PowerPCからIntel、そしてArmへ)を経て成熟し、世界のデスクトップ市場シェアの約10%を占めるまでに成長しました。
しかしながら、そこにたどり着くのは簡単ではありませんでした。
大きな問題から大きな猫へ
Mac OS Xの物語は2001年ではなく、1985年に始まりました。スティーブ・ジョブズが取締役会でのクーデターの失敗と数々の製品失敗によりAppleから追放されたのです。Apple Lisaプロジェクトは惨憺たる失敗に終わり、わずか1万台しか売れませんでした。Macintoshは比較するとはるかに成功を収めたものの、PC市場におけるIBMの台頭を食い止めることはできず、同社の高い販売目標も達成できませんでした。
ジョブズはAppleを離れた後もコンピュータ業界に関わり続け、後に高等教育市場向けのワークステーションクラスのマシン開発を目指したNeXT社を設立しました。1988年に発表された最初のコンピュータは、25MHzのMotorola 68030 CPUと68882 FPUを搭載した、黒いアルミニウム製のキューブ型で、パワフル(ただし非常に高価)なマシンでした。RAMは8MB、ハードディスクは330MBまたは660MB(オプション)でした。NeXTSTEPと呼ばれる特注のUNIXベースのオペレーティングシステムが搭載されており、MachカーネルとBSDカーネルを基盤とし、オブジェクト指向プログラミングの原則を全面的に採用していました。
革命的でしたが、6,500ドル(現在の価値で14,500ドル)という高額な価格を覆すには至りませんでした。大学は購入をためらいましたが、このハードウェアは最初のウェブブラウザとサーバー、そしてid SoftwareのDoomとQuakeの開発に使用されました。1993年までにNeXTはハードウェア事業から撤退し、NeXTSTEPをIBM互換PC、PA-RISC、SPARC、そしてMotorola 68kアーキテクチャに移植することに専念しました。
Appleにも独自の問題がありました。Macintoshは停滞していました。それまで別々だったDOSとWindowsを統合したWindows 95は大成功を収め、Microsoftの市場シェア拡大に貢献しました。1995年の登場当時、Windows 95は初めてコンピュータを購入する人でも非常に使いやすく、プリエンプティブマルチタスクなど、Mac OS 7にはない機能を備えていました。それに加え、当時のCEOマイケル・スピンドラーがMac OS 7をサードパーティメーカーにライセンス供与するという、破滅的な決断を下したことで、利益率の高いハードウェア売上高はさらに縮小しました。
次のステップ
1997年、Appleは破産まであと数週間という状況でした。1996年にスピンドラーの後任としてCEOに就任したギル・アメリオは、ヘイルメリー(万策尽きた)策としてNeXTを買収し、ジョブズをロスアルトスのガレージで創業した会社に呼び戻しました。翌年にCEOに就任することになるジョブズが最終的にAppleを再建する一方で、Appleが最も関心を寄せていたのはNeXTSTEPオペレーティングシステムでした。
ファットiPhone、11年経った今:iPadは10年以上経ったが、いまだにその用途は不明だ
続きを読む
ご存知の通り、当時のMac OSは停滞していました。Windowsは周辺機器のサポートやインターネットといった面で飛躍的な進歩を遂げていましたが、Appleはプリエンプティブマルチタスク、マルチスレッド、保護メモリといった基本的なシステムレベルの機能をまだ実装していませんでした。Amelio時代、AppleはNukernelと呼ばれるクリーンシートカーネル上に新しいOSを開発しようと試みましたが、開発地獄の炎の穴に突き落とされてしまいました。
ジョブズが指揮を執り、NeXTSTEPをベースとした新しいオペレーティングシステムの開発が開始されました。旧来のMac OS 9ナノカーネルは、NeXTSTEPカーネルの直系の後継であるDarwinに置き換えられました。オブジェクト指向プログラミング、Objective-C言語、DockといったNeXTの機能も導入されました。これは過去との完全な決別であり、Aquaと呼ばれる全く新しいインターフェースと、開発者が既存のソフトウェアを移植できるAPIを備えていました。
Mac OS X 10.0 の UI のフルリリース版 (クリックして拡大)
これが最終的にMac OS X 10.00 Cheetahへと発展しました。その功績は今も受け継がれていますが、発売当初は期待外れでした。Mac OS 9との機能的な互換性がなく、DVD再生やCD書き込み機能は発売当初は利用できませんでした。パブリックベータ版がリリースされたにもかかわらず、多くの開発者(MicrosoftやAdobeを含む)がAqua APIに対応するためのソフトウェアアップデートを行っていませんでした。また、特に下位互換性のあるClassic APIを使用するアプリケーションを実行すると、動作が非常に遅くなっていました。
さらに悪いことに、Mac OS X の Unix 基盤と保護されたメモリにより、以前のバージョンに比べて安定性が向上すると多くの人が期待していたものの、ソフトウェアには致命的なバグが満ち溢れており、外部周辺機器を使用する際に頻繁に発生していました。
それ以来歩んできた道
Mac OS X Cheetahの初期段階で発生した問題はAppleの躍進を止めることはなく、これらの問題の多くはその後のリリースで解決されました。次のリリースであるMac OS X 10.1 Pumaは、パフォーマンスの向上とClassic Mac OSとの機能の整合性向上に重点が置かれ、既存ユーザーには無料アップデートとして提供されました。
次のメジャーアップデートは2002年に行われました。Mac OS X 10.2 Jaguarでは、CUPS(Common Unix Printing System)のリリースにより、長年のプリンターサポートに関する問題が解決されました。CUPSはその後オープンソース化され、現在ではLinux界隈で広く利用されています。この頃には、AppleはMac OS Xに非常に自信を持っており、ジョブズは同社の世界開発者会議(WWDC)のステージ上で、Classic Mac OS Xの模擬葬儀を行いました。
YouTubeビデオ
当時、Mac OS XはPowerPCプラットフォーム専用でした。10年が過ぎた頃には、消費電力などの主要な指標において、Mac OS XはIntelのチップとの競争に苦戦していました。Appleに代わってPowerPCチップを製造していたIBMは、既に65nmプロセスへの移行を進めていたIntelよりも大きなノードで製造していました。かつては処理能力において競争優位を誇っていたAppleでしたが、その優位性を失う可能性に直面していました。
そして2005年、AppleはMac OS X 10.4.4 TigerからIntelへの移行を発表しました。これは以前から計画されていたことでした。Mac OS Xの各バージョンがリリースされるたびに、Appleは密かにx86ポートを開発していたため、社内での再設計はほとんど必要ありませんでした。
Appleは過去にIntelへの移行を示唆したことがあります。後にMac OS X Server 1.0となるRhapsody OSは、PowerPCとx86の両方でリリースされ、IBM RISC System/6000とDEC Alphaアーキテクチャ向けのバージョンも検討されました。さらに、Mac OS Xの基盤となるNeXTSTEPもIntelプロセッサで利用可能でした。こうした準備と経験により、Appleは将来への前兆を察知し、方向転換することができました。
移行という点では、Intelへの移行は極めてスムーズでした。特にMac OS ClassicからMac OS Xへの衝撃的な移行に比べれば、その差は歴然でした。レガシーアプリはRosetta互換モード(後に2012年に廃止)を介して実行できました。開発者はユニバーサルバイナリを使用して、PowerPCとIntelの両方のプラットフォームをターゲットにできました。さらにAppleは、一般公開に先立ち開発者向けにレンタル用の「移行キット」を提供し、開発者が有利なスタートを切れるようにしました。
振り返ってみると、この経験はAppleの次のプラットフォームシフトに影響を与え、同社は2020年にIntelから独自のArmベースのApple Siliconプロセッサに移行しました。開発者ツールやリリース前の移行ハードウェアに至るまで、同じ戦略を採用しています。
プラス・サ・チェンジ
Mac OS Xの発売から20年が経ち、いくつかの変化がありました。Objective-Cの人気は低下し、Appleの構文がより優れたSwiftプログラミング言語が台頭しています。名称も何度か変更され、Appleは2012年にOS Xという名称に変更し、最終的にバージョン10.12 SierraのリリースでmacOSとなりました。MetalグラフィックスAPIの導入により、ゲームやビジュアル重視のアプリのレンダリングパフォーマンスが向上し、SiriなどのiOSおよびiPadOSの機能も搭載されました。
Apple: Swiftを高速な新しいプログラミング言語にカスタマイズします
続きを読む
しかし、2001年に初めて導入されたUNIXの基盤からNeXTSTEP Dockに至るまで、その基盤は今も健在です。WindowsはUIを何度も変更してきましたが、macOSは以前のバージョンとほぼ共通点を保っています。レトロなApple製品のコレクターとして(筆者はMac OS 7時代のPerformaから、ジョブズ氏亡き後のPowerBookやiBookまで、約30台のマシンを所有しています)、これほど変化がほとんどないことに驚いています。Mac OS X 10.3 Jaguarを搭載したiBook G4でも、最新世代のM1 MacBook Airと全く同じように使いこなせます。
これが Mac OS X の物語です。成功するとは思えませんでしたが、基本を正しく理解することは、スティーブ・ジョブズの崇拝よりも重要です。®