Remove ads
ウィキペディアから
Mach(マーク[1])とは、カーネギーメロン大学のリチャード・ラシッド教授(実際の実装はアビー・テバニアンが中心[2])らのMachプロジェクトにより開発されたマイクロカーネルタイプのオペレーティングシステム (OS) を言う。名前は「複数非同期通信ホスト」を意味する英語「multiple asynchronously communication hosts」に由来している。
開発者 | カーネギーメロン大学 |
---|---|
OSの系統 | Unix系 |
開発状況 | 開発終了 |
最新安定版 | 3.0 / 1989年 |
カーネル種別 | マイクロカーネル |
ウェブサイト |
www-2 |
1980年代中頃、アメリカ国防総省高等研究計画局によって開発されていた実験用マルチプロセッサコンピュータ用のOSをアメリカ国防総省に提案、採用されたことにより 1985年からMachの開発は始まった。当初はスーパーコンピュータ・ワークベンチ・プロジェクト(supercomputer workbench project)と呼ばれていた。
当時、米国の研究機関で主に用いられていた 4.2BSD UNIXの設計は、古く効率の悪い仮想記憶機構、マルチプロセッサマシンに対して非効率な構造、移植性の悪い冗長なコードなど、当初のUNIXでは想定していない様々な機能をカーネルに追加したため、非常に見通しの悪い構造となっていた。これを解決することがMachの目的であった。
これらを実現することを目標に開発が行われた。
当初から4.3BSD UNIXと互換であることが決定されていたこともあり、4.3BSDのカーネルソースコードを元に修正を加えることで実装を行った。実際には3.0からがマイクロカーネルであり、Mach 2.5まではマイクロカーネルではない。
リチャード・ラシッド教授が1991年にマイクロソフトへ移籍した後も1994年までカーネギーメロン大学でMachプロジェクトは続いた。以後、Machの開発はユタ大学のMach 4プロジェクト、Free Software FoundationのHurdプロジェクト、カーネギーメロン大学の ARTプロジェクトなどに引き継がれていった。ユタ大学で Mach 4として分散環境を考慮したスレッドおよびメッセージの改良、Linuxデバイスドライバインターフェースの実装を行った。GNUプロジェクトではこのMach 4をベースに改良を加え、GNU Machとして公開している。ARTプロジェクトでは分散リアルタイムOS実現のため、実時間駆動型スケジューラなどがMach に組み込まれ、Real-Time Machとして公開された。これらの研究開発はMachのみならずBSDにもフィードバックされ、仮想記憶システムを含むいくつかの機能は4.4BSD Liteにも利用されている。
これらのMach生まれの基本概念は、その後のUNIXのみならず、数多くのOSに多大な影響を及ぼした。
この新しいOSの名前をどうするのかという雑談の中で出た MUCK (multiprocessor universal communication kernel) というアイディアを、リチャード・ラシッド教授の同僚のイタリア人 Darlo Giuse がMachと聞き間違えたことに由来する。最終的にはコインの裏表で決定した[5]。従って原則英語読みの「マーク」という発音が正しい。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.