GNU / LinuxオペレーティングシステムへのGNUの主な貢献は何ですか?

GNU / LinuxオペレーティングシステムへのGNUの主な貢献は何ですか?

私は読んだGNU/Linux FAQ、彼らが全員にシステム全体をGNU / Linuxと呼ぶように要求する理由の1つは次のとおりです。

  • オペレーティングシステムの開発にGNUが大きく貢献しました。

GNU / Linuxオペレーティングシステムの開発にGNUがどのような大きな貢献をしたのか疑問に思いました。

つまり、GNU/Linux オペレーティングシステムの主要/主要コンポーネントは何ですか?

答え1

最も重要なのは、GCCコンパイラ、glibc Cライブラリ、coreutils、およびbinutilsのネイティブUnixツール、おそらくそれを使用する場合はbashシェルとGnomeデスクトップ環境です。

単純なソースコード行数は相対的な重要性を考慮しません。 DebianやFedoraの完全なソフトウェアを選択すると、ほとんどの人はそのうちの小さな部分もインストールしません。そして(非常に体系的でない限り)おそらく興味があり、多くのパッケージをインストールして確認するためにインストールしてから忘れてしまったでしょう。したがって、ダウンロードしたパッケージに関する統計(Debianが保持していると思うものなど)も公正な説明ではありません。

後で追加:会ったばかりこのページ作成者:O'Reilly(Linuxシステムへの貢献を示すポスターが付属)

答え2

vonbrandの回答に加えて、GNU / Linuxオペレーティングシステムへの大きな貢献は、Linux(カーネル)が出てきたときにすでに多くのGNUエントリが存在し、全体のエコシステムとして機能しており、オープンソースライセンスに応じて利用可能に無料で利用できます。プロジェクトが始まりました。

また、無料のUnixレプリカを構築することであったGNUプロジェクトの元の目標が何であるかを忘れないでください。 Unixは、オペレーティングシステムが準拠する必要があるすべてのAPI、コマンド、および機能を含む一連の仕様であり、現在もそうです。この標準は、移植可能なアプリケーションを構築する開発者にとって非常に便利です。

GNU libcとGNU coreutils / binutilsは、ほとんどのLinuxカーネルベースのオペレーティングシステムに対してこれらのAPIとコマンドを提供します。これは他のすべてが構築できる基礎を形成します。

目的と複雑さにかかわらず、残りのコンポーネントはオプションであり、Unix標準によって指定されていないため、技術的にはUnixオペレーティングシステムとそのレプリカの一部ではありません。

これがまさにLinuxディストリビューションをLinux/GNU/TeX/X11/Python/ISC/Apache/etc.と呼ぶことは意味がないと思う理由です。 GnuとLinuxだけがコアを形成し、すべてのUnix / Linuxの共通基盤を提供するからです。生態系を楽しみにしています。

TEX/X11/Gnome/KDE/Perl/Python/ISC/Apache/Tomcat/LibreOffice/Mozilla/Chromium/ どんなに役に立っていても Unix/Linux に属しません。

答え3

この記事を読むことをお勧めしますLinuxおよびGNUシステム&GNUプロジェクトGNU貢献のアイデアを得る。


以下はいくつかの引用です。LinuxおよびGNUシステム:

  • 貢献の概要:

    このようにGNUプロジェクトの貢献度を測定しようとすると、どのような結論が出るのでしょうか。あるCD-ROM販売業者は、「Linuxディストリビューション」で次のことを発見しました。GNUソフトウェアこれは、ソースコード全体の約28%を占める最大規模の単一チームであり、システムがなければ不可能な重要な主要コンポーネントの一部を含みます。 Linux自体は約3%です。 (2008年の割合は似ていました。Linuxの場合は1.5%、gNewSenseの「デフォルト」リポジトリにあるGNUパッケージの場合は15%です。)したがって、プログラムを作成した人に基づいてシステム名を選択する場合は、システム名を選択してくださいお勧めします。適切な単一の選択は「GNU」です。

  • 目標の説明:

    しかし、それは問題について考える最も深い方法ではありません。 GNUプロジェクトは特定のソフトウェアパッケージを開発するプロジェクトではなく、今でもそうです。これはプロジェクトではありませんCコンパイラ開発、私達ははい。私たちはテキストエディタを開発しましたが、これはテキストエディタを開発するプロジェクトではありませんでした。 GNUプロジェクトは、完全な無料のUnixシリーズシステムであるGNUの開発を始めました。

  • 基本成分表示:

    多くの人がシステムのフリーソフトウェアに大きな貢献をしており、彼らのソフトウェアはその功績を認める価値があります。しかし、これが単に有用なプログラムのコレクションではなく統合システムであるのは、GNUプロジェクトがそれを統合システムにするために努力しているからです。私たちは完全な無料システムを作成するために必要なプログラムのリストを作成し、リスト内のすべてを体系的に見つけて作成または作成する人を見つけました。重要だが退屈な内容について書いてください。(1)コンポーネントがないとシステムが不可能なためです。プログラミングツールとして知られている一部のシステムコンポーネントは、それ自体でプログラマの間で人気がありましたが、私たちが書いているコンポーネントの多くはツールではありません。(2)システム全体にもゲームが必要だったので、チェスゲームGNU Chessも開発しました。


Wikipediaの記事GNU>構成要素:

システムの基本コンポーネントは次のとおりです。GNUコンパイラコレクション(湾岸協力協議会)GNU Cライブラリ(glibc)とGNUコアユーティリティ(コアユーティリティ)、[8]GNUデバッガ(GDB)もあります。GNUバイナリユーティリティ(バイユチル),[38]GNUバッシュシェル[33][39]そして小人デスクトップ環境。[40]

また、訪問GNUパッケージリスト>基本システムウィキペディアで。


したがって、主要コンポーネントは次のようにリストできます。

  1. GNU Binutils
  2. GNU Coreutils
  3. GNU Cライブラリ
  4. GNUコンパイラコレクション(元の名前:GNU Cコンパイラ)
  5. GNU タール
  6. GNUグータ
  7. 小人

そしてもっと。


さらに、よくある質問:

Linus Torvaldsは、1990年にフィンランドでGNUについて講義したことによって部分的に影響を受けました。このような影響がなかったとしても、彼はUnixシリーズのカーネルを書いたかもしれませんが、フリーソフトウェアではなかったかもしれません。 Linuxは1992年、LinusがGNU GPLに従って再配布して無料になりました。


さらに、彼らは単にシステムへの最大の貢献のために私たちにGNU / Linuxを呼ぶように頼むのではなく、もっと重要なことは、GNUの理想主義と目標を紹介し、保存し、奨励したいということに注意してください。なぜGNU/Linuxを選ぶのですか?

関連情報