そもそもオペレーティングシステムって何なんだろう? 実際に何をするものなのでしょうか? オペレーティング・システムとは、コンピュータで何かをするためのプログラミングのレベルです。 オペレーティング・システムは、基本的なレベルでコンピュータのハードウェアと相互作用し、ハードウェアが解釈できる言語にコマンドを送信します。 OSは、あなたのマシン上の他のすべてのアプリケーションのためのプラットフォームとして機能します。 OS がなければ、コンピューターはただの文鎮になってしまいます。
その中心は、数字を処理するデバイスです。 ゼロと1、つまりビットの形で入力を受け、さまざまな回路やプロセッサを通過させます。 ハードウェアは厳格なルールに従って動作する。 このルールを定義するのが、論理ゲートと呼ばれるもので、入力を受けて予測可能な形で出力するものである。 単純なコンピュータの中には、特定のタスクだけを実行するため、オペレーティングシステムを必要としないものもあります。 しかし、パーソナルコンピューターはより多機能である必要があります。 オペレーティングシステムによって、複雑なプログラムはハードウェアの能力にアクセスして結果を得ることができる。 ハードウェアの物理的特性と私たち自身の想像力だけが、プログラムができることを制限することができます。
広告
コンピュータの回路に物理的にプログラミングして、オペレーティング システムを設計することができます。 これには、何百万もの論理ゲートを使用して電気経路を構築する必要があります。 しかし、そのようなオペレーティング システムは柔軟性に欠けるでしょう。 だから、Mac OS XやWindowsのようなオペレーティング・システムはソフトウェアなのです。 ソフトウェアは、ハードウェアよりも柔軟性があり、ソフトウェアのパッチやバージョンアップで変更することができる。 ハードウェアと同じことをするには、物理的なチップや回路基板を交換することになります。
オペレーティング システムは、コンピュータのマネージャのようなものです。 OS の仕事は、ソフトウェアが何を必要とし、ハードウェアが何を提供できるかを監視することです。 コンピュータ上でアプリケーションを実行すると、OSはタスクを完了するために必要なリソースを割り当てます。 これには、処理能力、メモリの割り当て、コンピュータのストレージへのアクセスなどが含まれます。 理想的には、OSはコンピュータのハードウェアに過度の負担がかからないようにします。
OSはまた、プログラムがコンピュータ上で実行できるようにします。 OSがなければ、プログラマはハードウェア上で直接実行するアプリケーションを設計しなければならない。 これはあまり効率的ではありません。 OSは、ハードウェアに対するアプリケーションのインターフェースとして機能します。 OSは、アプリケーション・プログラム・インターフェース(API)を通じてこれを行う。 プログラム開発者は、APIに対応したアプリケーションを構築します。 プログラマーが重大なバグなしにアプリケーションを構築するのに良い仕事をしたと仮定すると、そのアプリケーションはオペレーティング システム上で問題なく動作するはずです。 ファームウェアは、ハードウェア レイヤーの上に直接存在するプログラミングのレベルです。 オペレーティング システム自体には含まれません。 Macのファームウェアは、Macコンピュータの電源を入れたときに実行される最初の保存されたプログラムです。 その仕事は、コンピュータのCPU、メモリ、ディスクドライブ、ポートにエラーがないかどうかをチェックすることです。 Macのファームウェアに相当するものは、PCではBIOSと呼ばれ、基本入出力システムの略称です。 ブートローダーと呼ばれる 2 番目のプログラムは、ファームウェアから報告されたエラーがないことを前提に、Mac OS X をロードします。
次は、Mac OS X がどのように動作するかを詳しく見ていきましょう。