2006年02月11日

Mach

読み方 : マーク
別名 : Machマイクロカーネル, マークマイクロカーネル, Mach micro-kernel
分野 : OS

 カーネギーメロン大学のRichard Rashid教授らのグループが米国防総省の援助を受けて開発したマイクロカーネル型のOS。1985年に最初のバージョンが公開され、その後、改良が進められると同時に、商用・非商用を含め多くのOSの基盤部分として採用された。

 Mach自体は、従来のOSの中核部分を抜き出して再構成したようなソフトウェアになっており、その上で動作する多くのサブシステムをあわせて、OSとしての機能を発揮するようになっている。

 また、複数のCPUを動作させるマルチプロセッサ機能や、ネットワーク上に分散したコンピュータが連携するための機能、巨大なメモリ空間のサポートなどが盛り込まれている。

 それまでのUNIX系OSのカーネルは、多くの機能を抱え込んで複雑になりすぎ、また、機種依存コードとそうでないものが混在していたため、他機種への移植に莫大な労力が必要だった。

 これに対し、MachはOSとして必要最低限の機能だけを提供し、また、ハードウェアの設計に依存する部分を自身の内部に隠蔽した。このような設計は、従来の「複雑な」OS基盤(モノリシックカーネル)と区別して「マイクロカーネル」と呼ばれる。

 Machを基盤に採用したOSは、サブシステムを追加することでOSの機能を拡張することができ、また、最小限の労力で他機種へ移植できる。ただし、マイクロカーネルと上位層の通信にかかるオーバーヘッドのせいで、処理速度が向上させにくいという欠点もある。

 当初のMachはまだ多くの機能を自身の中に抱え込んでおり、事実上モノリシックカーネルだったが、バージョンアップするたびに機能を外部に出し、そのたびにパフォーマンスが下がっていった。このため、いったん外に出した機能をカーネル空間に戻したり、ライブラリでエミュレートしたりすることを余儀なくされた。

 こうしたマイクロカーネルの欠点はいまだ克服されておらず、実用性やパフォーマンスを重視する多くのOSはモノリシックカーネルを採用している。

 Machを採用しているOSには、IBM社のOS/2やOSFのOSF/1、Apple社のMac OS X、NeXT社のNEXTSTEPとOPENSTEPなどがある。
posted by シンビアン at 08:35| Comment(0) | TrackBack(0) | Series60プログラミングテクニック | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。