広告を閉じる

チェコのコラムニスト、パトリック・ザンドル氏は今月、パソコンから携帯電話へのビジネスの変革と、アップルが世界で最も価値のある企業になった5年間続いた次の時代について論じた本を出版した。携帯電話における偉大な革命の背後にあるすべてのことと、それがその後まったく新しいタブレット市場の創出にどのように役立ったかを詳しく読むことができます。以下はこの本の最初のサンプルです。

iPhone OS X - iOS のオペレーティング システムはどのように作成されたか

このオペレーティング システムは、次期 Apple 携帯電話の成功にとっても決定的なものでした。これは 2005 年時点では完全に一般的ではなかった信念であり、「スマートフォン」はベストセラーではなく、逆に、単一目的のファームウェアを搭載した携帯電話が飛ぶように売れました。しかし、ジョブズは自分の携帯電話に、将来の拡張の可能性、開発の柔軟性、そして新たなトレンドに対応する能力を必要としていました。また、可能であれば、Mac プラットフォームとの互換性を最大限に高めたいと考えていました。これは、会社が別のオペレーティング システムの開発に圧倒されるのを恐れていたためです。これまで見てきたように、ソフトウェア開発は長い間 Apple の強みの XNUMX つではありませんでした。

この決定は、Motorola が招待されていなかった Cingular Wireless の代表者との秘密会議の直後の 2005 年 XNUMX 月に下されました。ジョブズ氏は、自身の携帯電話から得られる収益の一部をアップルが受け取ることになるとシンギュラー氏を説得し、セルラーネットワークの構築に真剣に取り組むよう説得することができた。当時でさえ、ジョブズ氏はモバイル ネットワークから音楽をダウンロードするというアイデアを推進していましたが、シンギュラーの代表者はインターネット ダウンロードによって生じる可能性のある負荷の増加について悲観的でした。彼らは着信音や Web サイトをダウンロードする経験について議論し、将来明らかになるように、ジョブズが自分のデバイスで生み出すことができた誇大宣伝を過小評価していました。それはすぐに裏目に出ます。

こうしてプロジェクトは始まります パープル2、ジョブズ氏はこれにより、モトローラとの不十分な協力関係の限界を超えたいと考えています。目標は、Apple がこれまでに取得した、または今後すぐに開発するテクノロジーに基づいた独自の携帯電話であり、その多く (FingerWorks など) は、ジョブズが発売したいタブレットの構築に使用することを計画していました。しかし、彼は選択を迫られました。iPod を組み合わせた携帯電話をすぐに発売して、iPod 販売の迫り来る危機を救うか、それとも夢を実現してタブレットを発売するかのどちらかです。 Motorola と提携すると携帯電話に iPod が搭載されないため、彼は両方を持つことはできませんが、Motorola ROKR が発売されるまでにはさらに半年かかりますが、それはその時点ですでに明らかでした。市場。結局、おそらく驚くべきことだが非常に合理的で、ジョブズは音楽市場を救うことに賭け、タブレットの発売を延期し、すべてのリソースをパープル 2 プロジェクトに移した。その目標は iPod を備えたタッチスクリーン電話を構築することであった。

同社の Mac OS X オペレーティング システムを携帯電話に適応させるという決定は、他に選択肢があまりなかったという事実だけでなく、将来のデバイスの統合の可能性も考慮したものでした。ジョブズ氏は、モバイル デバイスのコンピューティング能力とメモリ容量の増加により、将来的にはデスクトップで使用されているアプリケーションと同様のアプリケーションを電話機で提供できるようになり、単一のオペレーティング システム コアに依存することが有利であると確信しました。

開発をスピードアップするため、2つの独立したチームを創設することも決定した。ハードウェア チームは携帯電話自体を迅速に構築するタスクを担当し、他のチームは OS X オペレーティング システムを適応させることに重点を置きます。

 Mac OS X、OS X、iOS

Apple では、オペレーティング システムのバージョンのラベル付けに関して若干の混乱が生じています。 iPhone のオペレーティング システムのオリジナル バージョンには実際には名前がありません。Apple はマーケティング資料で「iPhone は OS X のバージョンを実行します」という簡潔な表現を使用しています。その後、電話のオペレーティング システムを指すために「iPhone OS」を使用し始めます。 2010 年の 2012 番目のバージョンのリリースにより、Apple は iOS という名前を体系的に使用し始めました。 XNUMX 年 XNUMX 月には、デスクトップ オペレーティング システム「Mac OS X」の名前が単に「OS X」に変更されるため、混乱を招く可能性があります。たとえば、この章のタイトルでは、iOS の核心は OS X から来ているという事実を考慮に入れようとしています。

ダーウィンを背景に

ここで、Darwin オペレーティング システムに向けて別の回り道をする必要があります。 Apple が 1997 年にジョブズの会社 NeXT を買収したとき、Sun Microsystems と協力して作成された OpenSTEP と呼ばれる NeXTSTEP オペレーティング システムとその亜種が取引の一部となりました。 NeXTSTEP オペレーティング システムは、Apple の新しいコンピュータ オペレーティング システムの基礎にもなる予定でした。結局のところ、これが Apple がジョブズの NeXT を買収した理由の 86 つでした。 NeXTSTEP の魅力的であり、当時はおそらく過小評価されていた魅力は、そのマルチプラットフォームの性質でした。このシステムは、Intel x68 プラットフォームと Motorola XNUMXK、PA-RISC、SPARC の両方で、つまり、デスクトップ プラットフォームで使用される実質的にすべてのプロセッサ上で動作できました。当時。また、すべてのプロセッサ プラットフォーム向けのプログラムのバイナリ バージョン、いわゆるファット バイナリを含む配布ファイルを作成することも可能でした。

このように、NeXT の遺産は、Apple が 1997 年の開発者会議で初めて発表した Rhapsody と呼ばれる新しいオペレーティング システム開発の基礎となりました。私たちの観点からすると、このシステムは、以前のバージョンの Mac OS と比較して多くの変更をもたらしました。これらは主に次のとおりです。

  • カーネルと関連サブシステムは Mach と BSD に基づいていました
  • 以前の Mac OS (Blue Box) との互換性のためのサブシステム - 後にクラシック インターフェイスとして知られるようになりました
  • OpenStep API の拡張実装 (黄色のボックス) - 後に Cocoa に進化しました。
  • Java仮想マシン
  • Displa PostScript に基づくウィンドウ システム
  • Mac OSをベースにOpenSTEPを組み合わせたインターフェース

Apple は、QuickTime、QuickDraw 3D、QuickDraw GX、ColorSync など、Mac OS のほとんどのソフトウェア構造 (フレームワーク) と、元の Apple コンピュータの Apple Filing Protocol (AFP)、HFS、UFS などのファイル システムを Rhapsody に移行することを計画していました。 。しかし、これは決して簡単な仕事ではないことがすぐに明らかになりました。 1 年 1997 月に最初の開発者リリース (DR2) がリリースされ、1998 年 1 月に 1999 番目の DR1 がリリースされましたが、やるべきことはまだたくさんありました。最初の開発者プレビュー (Developer Preview XNUMX) はわずか XNUMX 年後の XNUMX 年 XNUMX 月に公開され、そのシステムはすでに Mac OS X と呼ばれていました。その XNUMX か月前に Apple はサーバー バージョンの Mac OS X Server XNUMX を正式に分離しました。これにより、これを必要とする他のオープンソース部分を使用するシステムのソースコードをリリースするという条件の(多くの論争と議論の)部分が満たされ、Apple はそれをベースにしたシステムに組み込まれていました。 Mach カーネルと BSD カーネル上で。

Darwin は実際には、グラフィカル インターフェイスや、FairPlay 音楽ファイル セキュリティなどの多くの独自ライブラリを持たない Mac OS X です。後でバイナリ バージョンではなくソース ファイルのみが利用可能になるため、ダウンロードして、幅広いプロセッサ プラットフォーム上でオペレーティング システムとしてコンパイルして実行できます。今後、ダーウィンは Apple で 2 つの役割を果たすことになります。1 つは、Mac OS X を別のプロセッサ プラットフォームに移植することは、不可能なほど難しいことではないということを常に思い出させることです。そしてそれは、Appleのソフトウェアが閉鎖的でプロプライエタリであるという反対意見への答えとなるだろうが、これはAppleが後に特にヨーロッパで生み出すであろう印象である。アメリカでは、ダーウィンが教育現場でより広く普及しており、多くの学校サーバーでダーウィンが一般的に使用されており、オープン性と Apple ソフトウェア内の標準コンポーネントの使用に対する意識がはるかに高まっています。 Darwin は現在でもすべての Mac OS X システムの中核であり、そのオープンソース開発にはかなり広範な貢献者グループがおり、その開発は Mac OS X の中核にもフィードバックされています。

Cheetah と呼ばれる Mac OS X 10.0 の最初のリリースは、Rhapsody が開発を開始してから 2001 年後の XNUMX 年 XNUMX 月にリリースされました。これは、Apple のプラットフォームで使用するために簡単に変更できると考えられていました。同社はその XNUMX 年間、ユーザーに満足のいくものではなく、将来性のない Mac OS プラットフォームを使用させたため、多くの問題を引き起こしました。

こうして、ダーウィンはプロジェクト パープル 2 におけるオペレーティング システムの基礎となりました。当時、アップルが設計権益を持っていた ARM プロセッサを使用することを決定するか、それともデスクトップで使用され始めたばかりのインテルを使用することを決定するかが不確実でした。 Apple が PowerPC や Intel で行ったように、プロセッサ プラットフォームをそれほど苦痛なく変更できるようになったので、これは非常に賢明な選択でした。さらに、これはコンパクトで実証済みのシステムであり、インターフェイス (API) を追加する必要がありました。この場合は、携帯電話ライブラリを備えたタッチに最適化された OpenSTEP API である Cocoa Touch です。

最終的に、システムを 4 つの抽象化レイヤーに分割する設計が作成されました。

  • システムのカーネル層
  • カーネルサービス層
  • メディア層
  • Cocoa Touch タッチ インターフェイス レイヤー

なぜそれが重要なのか、また注目する価値があるのか​​?ジョブズは、携帯電話はユーザーの要求に完全に応えなければならないと信じていました。ユーザーがボタンを押すと、電話機が応答する必要があります。ユーザーの入力を受け入れたことを明らかに認識する必要があり、これを行うには、目的の機能を実行するのが最適です。開発者の一人は、Symbian システムを搭載した Nokia の携帯電話でこのアプローチをジョブズ氏にデモンストレーションしましたが、ダイヤルを押しても電話の反応が遅すぎました。ユーザーがリスト内の名前をスワイプし、誤って別の名前を呼び出しました。これはジョブズにとってイライラすることであり、携帯電話でそのようなものを見たくなかったのです。オペレーティング システムはユーザーの選択を優先して処理する必要があり、Cocoa Touch タッチ インターフェイスがシステム内で最も高い優先順位を持っていました。彼の後になって初めて、システムの他の層が優先されるようになりました。ユーザーが選択または入力を行った場合、すべてがスムーズに進んでいることをユーザーに安心させるために何かが起こる必要があります。このアプローチに対するもう 1 つの議論は、デスクトップ Mac OS X の「アイコンのジャンプ」でした。ユーザーがシステム ドックからプログラムを起動した場合、通常、プログラムがディスクからコンピュータの RAM に完全にロードされるまで、しばらくの間、目に見えるようなことは何も起こりませんでした。ユーザーは、プログラムが既にメモリにロードされていることを知らないため、アイコンをクリックし続けることになります。次に開発者は、プログラム全体がメモリにロードされるまでアイコンを跳ね返らせることで問題を解決しました。モバイル バージョンでは、システムは同様にユーザー入力に即座に応答する必要がありました。

その後、このアプローチはモバイル システムに深く浸透し、Cocoa Touch 内の個々の機能であってもシステム内で異なる優先度クラスで処理されるようになり、ユーザーが可能な限りスムーズな電話操作を実現できるようになりました。

現時点では、Apple は携帯電話上でサードパーティ製アプリを実行することに真剣には取り組んでいませんでした。この時点ではそれは望ましいことでさえありませんでした。もちろん、次期オペレーティング システムは、プリエンプティブ マルチタスク、メモリ保護、および最新のオペレーティング システムのその他の高度な機能を完全にサポートしていました。これは、メモリ保護 (Symbian)、マルチタスク (Palm OS)、またはその代替に苦労していた当時の他のオペレーティング システムとは対照的でした。両方とも (Windows CE)。しかし、ジョブズ氏は、今後のモバイルは主に Apple が提供する音楽を消費するために使用されるデバイスであると考えていました。サードパーティのアプリケーションは遅延するだけであり、ジョブズ氏は、配布システムなど、アプリケーションに関する多くの詳細を解決する必要があることに気づきました。そのため、モバイル OS X はバックグラウンドで追加のアプリケーションを実行する機能をネイティブにサポートしていましたが、Apple は人為的に制限を加えました。この可能性。 iPhone が登場したとき、この保護機能のない「ジェイルブレイク」された携帯電話のみが、新しいサードパーティ製アプリをインストールできました。 2007 年 XNUMX 月に iPhone が発売されてからずっと後、ジョブズ氏は、開発者は Web 専用アプリを作成し、Apple だけがネイティブ アプリを作成すると考えていました。

しかし、2006 年の夏になっても、モバイル版 OS X の開発はまったく満足のいく状態ではありませんでした。システムの基本的な移植は、わずか 2005 人のエンジニアのチームによって記録的な速さで行われましたが、携帯電話インターフェイスの個々の要素の相互接続と調整は絶望的なものでした。通話は途切れ、ソフトウェアは頻繁にクラッシュし、バッテリー寿命は不当に短かった。 200 年 XNUMX 月には XNUMX 人がプロジェクトに取り組んでいましたが、その数はすぐに XNUMX つの並行チームで XNUMX 人に増加しましたが、それでも十分ではありませんでした。重大な欠点は、Apple の仕事が秘密主義だったことでした。新しい人材は公募ではなく、多くの場合仲介業者を介した推薦によって見つけることができませんでした。たとえば、ソフトウェア チームのテスト部分は主にバーチャルで行われ、プロトタイピングとテストは主に電子メールで相互に通信し、長い間 Apple で働いていることさえ知らなかった人々で行われました。そのような秘密レベルに達するまで。

 

この本についての詳細は、次の URL でご覧いただけます。 パトリック・ザンドルのウェブサイト。この本は書店で紙版で購入できます ネオルクソール a コスマス、電子版も準備中です。

.