English [en]   ??????? [ar]   български [bg]   català [ca]   ?e?tina [cs]   Deutsch [de]   ελληνικ? [el]   espa?ol [es]   ????? [fa]   fran?ais [fr]   ????? [he]   hrvatski [hr]   Bahasa Indonesia [id]   italiano [it]   日本語 [ja]   ??? [ko]   lietuvi? [lt]   ?????? [ml]   Nederlands [nl]   polski [pl]   português do Brasil [pt-br]   roman? [ro]   русский [ru]   sloven??ina [sl]   Shqip [sq]   српски [sr]   ????? [ta]   Tagalog [tl]   укра?нська [uk]   簡體中文 [zh-cn]   繁體中文 [zh-tw]  

Free Software Free Society

Together we have the opportunity to empower the world through the use of free software. The only way to counter proprietary software companies and the billions of dollars they use to strip user rights is through the power of your voice and your generosity.

50 Joined
600 New Members

原文は英語で、これはその翻訳です。

LinuxとGNUシステム

リチャード?ストールマン

さらに詳しい情報はGNU/LinuxのFAQなんでGNU/Linux?もご覧ください。

多くのコンピュータ利用者は、毎日GNUシステムの変更版を使っていますが、気がついていません。ひょんなことから今日広く使われているGNUの版は、“Linux”としばしば呼ばれ、多くの利用者は、それが基本的にはGNUプロジェクトで開発されたGNUシステムであることを知りません

たしかに、Linuxというものは存在し、人びとはそれを使っています。ただし、それは単に使っているシステムの一部です。Linuxはカーネルです: システムの中のプログラムで、ほかのプログラムの実行のためにマシンのリソースを割り當てます。カーネルは、オペレーティング?システムの重要な部分ですが、それだけでは役に立ちません。カーネルは完全なオペレーティング?システム全體のコンテクストで初めて機能します。Linuxは通常GNUオペレーティング?システムと組み合わせて使われます。システム全體は基本的にはGNUであり、それにLinuxが加えられたものです。いわゆる“Linux”ディストリビューションは、すべて、本當はGNU/Linuxのディストリビューションなのです。

カーネルとしてのLinuxと、こちらもまた“Linux”と呼んでいるシステム全體との區別を、多くの利用者は、分かっていないのです。名稱のあいまいな使い方は理解を促進しません。そのような利用者は、リーナス?トーバルズがオペレーティング?システム全體を1991年に少しの助けとともに開発したと、しばしば考えています。

ふつう、プログラマたちはLinuxはカーネルであると知っています。しかし、システム全體もまた“Linux”と呼ばれていることをふつうに聞いているので、カーネルからシステム全體が名づけられるのにふさわしい歴史をしばしば想像してしまいます。たとえば、リーナス?トーバルズがカーネルLinuxを書き上げて、その利用者がLinuxと一緒に動く他の自由ソフトウェアを探し回ってみたところ、(どういうわけか)Unixライクなシステムを作るのに必要なものはすでにほぼすべてそろっていた、というようなことを多くは信じています。

かれらが見つけたのは偶然の産物ではありません。それはまだ完全ではないGNUシステムだったのです。追加することで完全なシステムを構成するのに十分なだけの自由ソフトウェアが入手可能だったのは、GNUプロジェクトが1984年以來、そうした完全なシステムを作るべく作業してきたからでした。GNU宣言によって、GNUと呼ばれる自由のUnixライクなシステムを開発するという目標が打ち出されました。また、GNUプロジェクトの最初の聲明において、GNUシステムの原案の一部が概説されています。Linuxが開始されるまでに、GNUはほぼ完成していたのです。

多くの自由ソフトウェアプロジェクトでは、ある特定の目的を持ったある特定のプログラムを開発するというのが目標になっています。たとえば、リーナス?トーバルズはUnixライクなカーネル(Linux)を書くことを目指していましたし、ドナルド?クヌースはテキストフォーマッタ(TeX)を書くことを目標にしていました。ボブ?シェイフラーはウィンドウシステム(Xウィンドウ?システム)の開発を目標にしました。プロジェクトからのある特定のプログラムによって、この種のプロジェクトの貢獻を測るというのは自然なことです。

もし、わたしたちがこのようなやり方でGNUプロジェクトの貢獻を測ろうとすると、どういう結論に至るでしょうか。あるCD-ROM販売業者によると、かれらの「Linux ディストリビューション」中ではGNUソフトウェアが全ソースコードの約28%という、単一の寄與としては最大で、またその中には、それ無しではシステムが成立しえない本質的かつ重要なコンポーネントが含まれていました。Linux自體は大體3%でした。(2008年において、割合は同様です。gNewSenseの“main”リポジトリ)で、Linuxは1.5%、GNUパッケージは15%です。) ですから、誰がそのシステム內のプログラムを書いたかという判斷基準でそのシステムの名前を一つ選ぶということであれば、もっともふさわしい選択は“GNU”ということになるでしょう。

しかし、これは、この問題を深く考える方法ではないでしょう。GNUプロジェクトはなにか特定のソフトウェアパッケージを開発するプロジェクトではありませんでしたし、今もそうではありません。わたしたちはCコンパイラを開発しましたが、GNUプロジェクトは、Cコンパイラの開発をするプロジェクトではありませんでした。わたしたちはテキストエディタを開発しましたが、GNUプロジェクトはテキストエディタを開発するプロジェクトではなかったのです。GNUプロジェクトは、完全な自由のUnixライクなシステム: GNUを開発することを目標としたのです。

多くの人々がシステムの自由ソフトウェアに多大な貢獻をしてきましたし、それらはみな稱賛に値します。しかしそれが単なる有用なプログラムの寄せ集めではなく、統合されたシステムであるのは、GNUプロジェクトがそれをシステムとしてまとめ上げる目標を立てたからです。わたしたちは自由で完全なシステムを構成するのに必要なプログラムのリストを作り、そのリストに載っているものすべてを組織的に探し、書き、あるいは書いてくれる人を探しました。わたしたちは、アセンブラやリンカといった、重要だがあまりエキサイティングではない(1)コンポーネントを書きました。それら無しではシステムはありえないからです。システム?コンポーネントのいくつか、プログラミング?ツールは、プログラマの間でそれ自身、人気が出ました。しかし、ツールではない(2)たくさんのコンポーネントもわたしたちは書きました。チェスのゲーム、GNU Chessも開発しました。完全なシステムにはゲームも必要ですから。

90年代はじめまでに、わたしたちはカーネル以外のシステム全體を組み立てていました。また、Machの上で動くGNU Hurdというカーネルのプロジェクトをわたしたちは開始していました。このカーネルの開発の困難さは予想をはるかに超えるものでした。2001年にGNU Hurdは確かに動くようになりましたが、一般の使用に供するのに十分と言えるまでには、まだまだ長い道のりがあります。

幸運なことに、Linuxがあったので、わたしたちはHurdを待つ必要はありませんでした。1992年にトーバルズがLinuxを自由ソフトウェアとしてから、それはGNUシステムの最後の主要なギャップに適合したのです。そして、LinuxをGNUシステムに組み合わせ、完全なシステムを作ることができるようになりました: Linuxも含んだGNUシステムのバージョンです。別の言葉で言えば、GNU/Linuxシステムです。

それらを一緒に動くようにするということは、とるにたらない仕事ではありませんでした。いくつかのGNUのコンポーネント(3)は、Linuxとともに動くのに相當な変更が必要となりました。ディストリビューションとして完全なシステムに統合し、「箱から出してすぐに」使えるとするのも大変な作業でした。どうシステムをインストールし、起動するかという問題を扱う必要があったからです。— そういう段階にまだ到達していなかったので、それは、わたしたちがそれまで取り組んだことのなかった問題でした。ですから、様々なシステム?ディストリビューションを開発した人々が重要な仕事をたくさんしました。しかし、それは、ものごとの本質として、誰かによって必ずなされなければならない仕事だったのです。

GNUプロジェクトは、GNU/Linuxシステムを、GNUシステムそれ自體と同じく、支持しています。FSFは、GNU CライブラリのLinux関連の拡張の書き直しに資金援助し、いま、それらはうまく統合され、最新のGNU/Linuxシステムでは現在のライブラリのリリースを変更なしで利用するようになりました。FSFは、また、Debian GNU/Linux の開発の初期段階に資金提供をしました。

今日、たくさんのGNU/Linuxシステムの異なる変種(「ディストロ」としばしば呼ばれます)があります。そのほとんどが不自由なプログラムを含みます。—開発者は、むしろLinuxに関連した“オープンソース”の理念にしたがい、GNUの“自由ソフトウェア”の理念にしたがいません。しかし、完全に自由なGNU/Linuxディストロもあるのです。FSFは、こういったディストリビューションのいくつかにコンピュータ設備を提供しています。

自由なGNU/Linuxディストリビューションを作るのは単にさまざまな不自由なプログラムを除去するだけの問題ではありません。近年では、通常の版のLinuxには不自由なプログラムも入っているからです。これらのプログラムはシステムが起動したときにI/Oデバイスにロードされることが意図され、Linuxの"ソースコード"のなかに長い數列として含まれています。自由なGNU/Linuxディストリビューションを保守するには、いまや、自由な版のLinuxも保守することが必然的に伴うのです。

GNU/Linuxを使うかどうかは別にして、どうか“Linux”という名稱をあいまいに使うことで一般大衆を混亂させないでください。Linuxはカーネルであり、システムに不可欠の重要なコンポーネントの一つです。全體としてのシステムはGNUシステムであり、Linuxが追加されたものなのです。この組み合わせについて語るときには、“GNU/Linux”と呼んでください。

參照として、“GNU/Linux” についてリンクを張りたいときは、このページとこちら http://www.nhjpbo.live/gnu/the-gnu-project.htmlが良い選択です。カーネルのLinuxについて述べ、參照としてリンクを加えたいときには、http://foldoc.org/linuxが使うのに適したURLです。

あとがき

GNUのほかに、別にプロジェクトがもう一つあり、Unixライクなオペレーティング?システムを獨立に作り上げています。このシステムはBSDとして知られ、カリフォルニア大學バークレー校において開発されました。80年代にはこれは不自由でしたが、90年代はじめに自由となりました。今日存在する自由なオペレーティングシステム(4)はGNUシステムの変種か、BSDシステムの一種と考えてまず間違いありません。

BSDはGNUのひとつの版かどうか(GNU/Linuxのように)、と、聞かれることがままあります。BSDの開発者たちは、GNUプロジェクトの例に觸発されて、かれらのコードを自由ソフトウェアとしました。GNUの活動家によって勵まされてきましたが、かれらのコードにはGNUとほとんど重複するところがありません。今日のBSDシステムもいくつかのGNUプログラムを使っています。GNUシステムとその変種がいくつかのBSDソフトウェアを使っているのと同様に。しかし、全體から見れば、この二つは別々に進化してきたものです。BSDの開発者はカーネルを書き、GNUシステムに加えたわけではありません。ですから、GNU/BSDというような名前は狀況に則したものではないでしょう。(5)

注:

  1. エキサイティングではないが重要なコンポーネントには、GNUアセンブラ(GAS)、リンカー(GLD) (両方とも今はGNU Binutilsパッケージに入っています)、GNU tar、などを含め、たくさんのものが含まれます。
  2. たとえば、Bourne Again SHell (BASH)、PostScriptインタプリタGhostscriptGNU Cライブラリはプログラミング?ツールではありません。GNUCash、GNOME、GNU Chessもそうではありません。
  3. たとえば、GNU Cライブラリです。
  4. これが書かれてから、だいたい全部が自由なウィンドウズライクなシステムが開発されましたが、技術的にはこれはまったくGNUあるいはUnixに似たものではありませんから、この問題に関係しません。Solarisのカーネルのほとんどは自由になりましたが、自由なシステムをそれから作りたいとすると、カーネルの足りない部分を置き換えるほかに、これもまた、GNUかBSDに載せる必要があるでしょう。
  5. 一方、この論説が書かれて何年かたった後、GNU Cライブラリは、BSDカーネルのいくつかの版に移植されました。これにより、GNUシステムをBSDのカーネルと組み合わせることが簡単になりました。GNU/Linuxのように、まさにこれらはGNUの変種です。ですから、たとえば、システムのカーネルに応じて、GNU/kFreeBSDやGNU/kNetBSDのように呼ばれます。ふつうの典型的なデスクトップ利用者がGNU/LinuxとGNU/*BSDを區別することはほとんどできないでしょう。
TOP

[FSFロゴ] “フリーソフトウェアファウンデーション(FSF)は、コンピュータのユーザの自由を促進する世界的なミッションを持つ非営利団體です。わたしたちは、すべてのソフトウェアユーザの権利を守ります。”

參加する ショップ

招财蟾蜍APP 福建11选5在线投注 香港赛马会资料 今天喜乐彩开奖结果 未成年人网上赚钱方法 排列五没有开出的号码查询 中国建筑股票行情 2018海南环岛赛28日 69棋牌游戏官网 海南飞鱼彩票注册 创业板股票涨跌幅 江西多乐彩老走势图 股票行情实时查询601857 15选5中奖规则 砖厂和沙厂哪个赚钱 双色球大奖得主 简书依靠什么赚钱