LinuxとGNUプロジェクト

by Richard Stallman

日本語訳: Omoti
tomato1@nospam.mwnet.or.jp (nospamをはずすと正しいメールアドレスになります)

 [image of a Baby GNU] [ English | Korean | Portuguese | Russian ]

多くのコンピューターユーザーは、それとは気付かずに、the GNU system (18k characters)の派生バージョンを毎日使っている。 ひょんなことから、今日広く使われているGNUのバージョンは、"Linux"としてより知られている。そして多くのユーザーは、Linuxがどれほど深くGNU Projectとつながっているか気付いていない。

たしかにLinuxというものはある。それはカーネルであり、彼らはそれを使っている。しかし、誰もカーネルそのものだけを使うわけにはいかない。 カーネルはオペレイティングシステム全体の一部として組みこまれてはじめて使えるようになる。Linuxはたいていの場合GNUオペレイティングシステムと連携して使われる: そのシステムは基本的にGNUであり、その中でLinuxがカーネルとして動いていると言える。

多くのユーザーはこの違いを完全にはわかっていない。すなわち、カーネルとしてのLinuxとまた、彼らが"Linux"と呼ぶ全体のシステムとの間にある違いである。 あいまいな名前の使い方は理解を促進しない。

プログラマー達は一般的にLinuxはカーネルであると知っている。 しかし彼らはその全体のシステムが同様に"Linux" と呼ばれているのを一般的に聞いているので、彼らはしばしばその名前にふさわしいような歴史を思い浮かべる。例をあげると、多くの者が次のように信じ込んでいる。すなわち、 いったん Linus Torvaldsがカーネルを書き上げたのち、彼の友達が他のフリーソフトウエアを探し回り、そして特別な理由もなく、Unixライクなシステムを作るのに必要なほとんど全てがすでに利用可能な状態であった、と。

彼らが見つけたものは、GNUシステムで、それは偶然ではなかった。 利用可能なfree softwareが集まって完全なシステムになった。なぜなら、GNUプロジェクトは1984年からそのようなものを作ろうと行動していたからだ。 GNU宣言 (31k characters)で、GNUと呼ばれるフリーのUnixライクシステムの開発における目的を明らかにした。 GNUプロジェクトの 始めの宣言でもまた、GNUシステムについての独創的な計画について概略を述べている。その時までにLinuxは書かれ、そのシステムもほとんど完成していた。

ほとんどのフリーソフトウエアプロジェクトは、ある特定の仕事のための特定なプログラムを開発するという目的を持っている。 例えば、 Linus Torvalds はUnixライクなカーネル(Linux)に取り組んだし、 Donald Knuthはテキストフォーマッター(TeX)を書くことに取り組んだし、 Bob Scheiflerはウインドウシステム(X Window System)を開発することに取り組んだ、という具合に。 あるプロジェクトに由来するある特定のプログラムによって、この種のプロジェクトへの貢献を評価するのは自然である。

もし我々がGNUプロジェクトの貢献をこのような方法ではかろうとしたならば、どのような結論になっただろうか?あるCD-ROMベンダーは次のように認識している。すなわち、彼らの”Linux distribution”について、GNU softwareが単独のグループとしては最大の割合で、全体のソースコードのうち28%を占めており、そしてこの中に、本質的で主要な構成要素が含まれており、これ無しではシステムは存在しえない、と。Linuxそのものはだいたい3%ぐらいだ。 そういうことを考えると、もしあなたがあるシステムのプログラムを誰が書いたか、という判断基準でそのシステムの名前を決めようとするなら、もっともふさわしい単独の選択は"GNU"であろう。

しかし、その問題をそのように考えるのが正しいとは我々は思っていない。 GNU プロジェクトは、過去も、現在も、特定のソフトウエアパッケージを開発するプロジェクトではない。たしかに我々はC compilerを開発したが、GNUはC compilerを開発するプロジェクトではない。 GNUはテキストエディターを開発したが、そのためのプロジェクトではない。 GNUプロジェクトの目的は完全なフリーのUnixライクなシステムを開発することである。

そのシステムのフリーソフトウエアに対して多くの人々がすでに多大な貢献をした。そして、それら全てがクレジットに値する。しかし、それはシステムであり、便利なプログラムの寄せ集めではないというのが、GNUプロジェクトがそれを作ろうと取り組む理由である。 我々は完全なフリーなシステムを作るのに必要なプログラムのリストを作った。そして、 我々は整然と発見し、書き、またそのリストを埋めてくれる人を探した。我々は本質的だが興奮しない主要な構成要素を書いた。例えば、アセンブラーやリンカーのようなものである。なぜなら、それらなしではシステムは存在し得ないからである。 完全なシステムは単なるプログラミングツール以上のものが必要である。Bourne Again SHellや、ポストスクリプトインタプリタであるGhostscript、 そしてGNU C library などがまさに重要である。

1990年代の早期までに、カーネルは別として、我々はシステム全体を組みたてた(そして我々はまたカーネルの開発にも取り組んでいた、それはGNU Hurdと呼ばれ、machの上で走るものだ。) このカーネルの開発は昔からずっと、我々が想像していたよりはるかに困難で、我々は現在もそれを完成させようと取り組んでいる

幸運にも、あなたはそれを待つ必要はない。なぜなら、Linux が現在まともに動いているからである。 Linus Torvalds が Linux を書いたとき、彼は最後まで残されていた大きなギャップを埋めた。 人々は、それにより、Linux を GNU システムと組み合わせ、完全なフリーシステムを作ることが可能になる。すなわち、Linux をベースにした GNU である(または、短く言えば、GNU/Linuxシステムである)。

LinuxとGNUを組み合わせるといえば、簡単に聞こえるが、それは楽な仕事ではなかった。 GNU C library ( 略してglibcと呼ばれる)はかなりの変更を要した。なんの問題も無しに動くディストリビューションとして一つの完全なシステムを統合するのはまた、骨の折れる仕事だった。それには、どのようにシステムをインストールし、ブートするのか、という問題に取り組む必要があった。しかし、実際には我々はその問題には挑戦しなかった。なぜなら、我々はまだそこまで到達していなかったからである。たくさんのシステムやディストリビューションを開発した人達が重要な貢献をした。

GNUのほかにも、一つの別のプロジェクトが、独立してフリーのUnixライクなオペレイティングシステムを開発した。このシステムはBSDとして知られている。そしてそれはUC Berkeleyで開発された。 BSDの開発者たちは、 GNUプロジェクトの例を見て、彼らの仕事、すなわちフリーソフトウエアの開発に意欲を奮い立たされた。 そしてときおり、GNUの活動家によって勇気付けられた。しかし、彼らの実際の仕事はGNUとはほとんど重複することはなかった。 BSDのシステムは現在では、いくつかのGNUソフトウエアを使っている。ちょうどGNUシステムとその派生バージョンがいくつかのBSDのソフトウエアを使っているように。 しかし、全体としてみれば、それらは二つの別のシステムであり、個別に発展してきたものだ。現在存在しているフリーのオペレイティングシステムは、まず間違いなく、GNUの派生バージョンか、もしくはBSDの系統のシステムと言えるだろう。

GNUプロジェクトはGNU/Linuxシステムを、GNUシステムそのものと同様にサポートする。我々はそのために基金まで設立した。GNU C ライブラリーに対するLinux関係の拡張の移植作業に我々は資金を提供した。 それにより、今それらはうまく統合されている。そして最新の GNU/Linuxシステムはリリースされているライブラリーを無料で利用している。我々はまた、Debian GNU/Linuxの開発の初期段階に対して資金を提供した。

我々はLinuxベースのGNUシステムを現在我々の仕事のほとんどで使っている。 そしてあなたにもそれを使うように我々は希望する。しかし、"Linux"という名前をあいまいに使うことで、大衆を混乱させないでほしい。 Linuxはカーネルで、システムの重要で主要な構成要素の一つである。システム全体は、だいたいGNUシステムといえる。

まったくフリーのGNU/Linuxシステムをプリインストールしたコンピューターを売る会社はたくさんある。



GNU's home pageに戻る

FSF & GNUに対する問い合わせや質問はgnu@gnu.orgまで送ってください。またFSFへの別の連絡方法もあります。

これらのページに対するコメントは webmasters@www.gnu.orgに送ってください。その他の質問は gnu@gnu.orgに送ってください。

Copyright 1997, 1998 Richard Stallman

この全体の文章の変更のないコピーと再配布はどのような媒介物によっても、この注意書きを含めるならば、認められています。

Updated: 15 January 2000 prashant


訳注:この日本語訳は、
http://www.gnu.org/gnu/linux-and-gnu.html
の内容を、Omotiが日本語にしたものです。
誤訳、typoなどについての問い合わせは、
Omoti
tomato1@nospam.mwnet.or.jp (nospamをはずすと正しいメールアドレスになります)
にお願いします。

この訳文やHTMLの欠点を指摘してくださったたくさんの方々にお礼を申し上げます。

誤訳や、かたい訳など問題点に気付いた方は、ためらうことなく連絡をおねがいします。

Omotiがいままでにやった翻訳のリストはこちらです。

プロジェクト杉田玄白正式参加テキスト