MacOSXの心臓部はXNUカーネルである。 カーネルは、オペレーティング システムの最初にロードされる部分を指します。 カーネルは、メモリ、CPU プロセッサの割り当て、およびディスク ドライブなどのハードウェア リソースを制御および監視します。 XNUカーネルは、Machと呼ばれる古いコンピュータアーキテクチャシステムのコードを含んでいます。 Machはカーネギーメロン大学の製品で、1980年代から存在している。 このコードは、仮想メモリ管理やマルチタスクなど、Macコンピュータ内の基本的な機能の一部を担っている。 また、このコードは、CPU がオーバーヒートし始めた場合に、Mac OS に CPU の処理速度を低下させる権限を与えています。 これは、デバイス ドライバーを制御するために、C++ プログラミング言語の特殊で限定されたバージョンに依存します。 デバイス ドライバーは、外部デバイスがコンピューターと相互作用することを可能にするものです。 例えば、プリンターから印刷するためには、コンピューターにデバイスドライバが必要な場合があります。 コンピュータから他のデバイスへ、あるいはその逆へと移動するすべての要求と情報を処理することは、要求の多い仕事です。 I/Oキットは、Macコンピュータが異なるテクノロジーを介して複数のデバイスを同時に処理することを可能にします。 USB、FireWire、Thunderboltの各ケーブルを使って、Macにデバイスを同時に接続できるのは、そのためです。
Advertisement
XNU カーネル 3 部はコンピューターのセキュリティ ガードとバウンサー(用心棒)となっています。 UNIX の Berkeley Software Distribution (BSD) 派生版に基づき、カーネルのこの部分は、システムのセキュリティとパーミッションの維持を担当します。 Macのコンピュータにログインすると、BSDがあなたのアクセスレベルを決定します。 管理者はほぼ自由にプログラムなどのデータをダウンロードしたり削除したりすることができます。 他のユーザーレベルでは、そのような自由な許可を持っていないかもしれません。 このため、管理者は通常のユーザーがアクセスできるプロセスとできないプロセスを定義することができます。 XNU カーネルの BSD エレメントは、Mac コンピュータのプロセスの同期化も支援します。 カーネルおよびハードウェアとともに、これらの層はコンピュータ エンジニアがスタックと呼ぶものを形成します。 スタックとは、コンピュータのソフトウェアとハードウェアのさまざまなレイヤーの関係を概念化する方法にすぎません。 スタックの一番下には、ハードウェアとファームウェアがあります。 その次の階層は、OSカーネルです。 その次にコア・サービス、そしてアプリケーション・サービス層があります。 Mac OS X のコア サービスのコンポーネントは、さまざまな言語でのテキスト検索やシステム API などのタスクをコンピューターが処理できるようにする複数のフレームワークで構成されています。 アプリケーション サービス層は、基本的なグラフィック ユーザー インターフェイス (GUI) システムです。 これは一般的なユーザーが目にするレイヤーで、グラフィック環境を構築するものです。 アプリケーション・サービス層はまた、さまざまなアプリケーション間の通信チャネルとして機能し、それらの相互作用を可能にします。
次に、いくつかの Mac OS X 機能を見てみましょう。