GNU Hurd
テンプレート:Infobox OS GNU Hurd(グニュー ハード)は、GNUプロジェクトによって開発中の、GNU Mach上で動作しオペレーティングシステム (OS) の機能を提供するサーバ[1]群。
Hurdは、「Hird of Unix Replacing Daemons.」の頭文字であり、さらにHirdは、「Hurd of Interfaces Representing Depth.」の頭文字である。また、「herd of gnus」(ヌーの群れ)とも掛けている。
勘違いされることが多いが、厳密な意味ではHurdはカーネルではなく、マイクロカーネルであるMachと、その上で動くサーバ群であるHurdの組合せによって一般的なカーネルのサービスを提供する。
概要
リチャード・ストールマンが提唱し、1990年から開発が始まった[2]。UNIX代替品の開発を目標とするGNUプロジェクトにとって、カーネルに相当するHurd(及びMach)の開発は最重要課題とも言えるが、その開発スピードは遅く、2011年現在でも正式版のリリースには至っていない。また、Hurdを採用したディストリビューションとして、Debianによる開発版が存在するが、これについても公式版のリリース時期は未定である。
開発の遅れにより、UNIX互換のフリーなカーネルとしては、GNUのプロジェクトによるものではないLinuxがデファクトスタンダードとなっている。Linuxとの開発スピードの違いは、伽藍方式とバザール方式の違いによるとも言われるが、ストールマン自身は、開発の遅れはマイクロカーネルのデバッグが予想以上に難しかったためで、Hurdに比べLinuxが早く開発できた理由はLinuxがモノリシックカーネルであることによるとし、自分の戦略的なミスであったと述べている[3]。
歴史
特に断らない限りGNU自身によるドキュメントを出典とする。
1986年2月、リチャード・ストールマンがGNUの公式カーネルとしてマサチューセッツ工科大学で開発されたテンプレート:仮リンクを使用すると表明し、同年12月までにフリーソフトウェア財団(以下FSF)はTRIXの改良を開始した。
1987年〜1988年ごろ、FSFは自分でTRIXを改良するよりも、別の人の手によるカーネルを使いたいと考え始める。当時の候補としてはTRIXを改良し続けることの他にカリフォルニア大学バークレー校で開発されたspriteを使うこと、そしてカーネギーメロン大学で開発され後に公式カーネルとなるMachを使うことがあった。
1990年、Machが4.3BSDに関する部分をカーネルからユーザランドへ除出することでGNUの再配布ライセンスに適合するようになる[4]と、FSFはMachの上で動くHurdの開発を開始した。ここにMachがGNUの公式カーネルとなった。 テンプレート:See also
1994年4月にブートができ、ファイルシステム、認証サーバ、initなどを動かすことに成功する。同年7月にはemacsを、11月にはgccを動かすことにも成功した。
1996年4月に、バージョン0.0(テスト版)のソースコード及びi386アーキテクチャ上で動くバイナリが公開される。
その後テンプレート:いつ他のGNUソフトウェアと組み合わせて完全なOSとして利用できるものがリリースされ、またDebianプロジェクトによるコンパイル済みバイナリDebian GNU/Hurdも配布されている。しかし、「製品レベルのシステムと比べて期待されるようなパフォーマンスや安定性はない[5]」状態であり、現在も開発中で正規版をリリースするには至っていない。