Linux

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内, 検索
Linux
Linuxのマスコット「Tux」
OSの系統 UNIXライク
開発状況 開発中
最新安定版リリース 3.2.6 - 2012年2月13日(25日前) (2012-02-13 [+/−]
最新開発版リリース 3.3-rc3  -  2012年2月9日(29日前) (2012-02-09 [+/−]
使用できる言語 多言語対応
対応プラットフォーム DEC Alpha, ARM, AVR32, Blackfin, ETRAX CRIS, FR-V, H8/300, Itanium, M32R, m68k, Microblaze, MIPS, MN103, PA-RISC, PowerPC, s390, S+core, SuperH, SPARC, TILE64, Unicore32, x86, Xtensa
カーネル種別 モノリシックカーネル
ライセンス GNU General Public License

Linux読み方は後述)とは、一般的にはUNIXライクなコンピュータ用オペレーティングシステム (OS) の一群を指し、厳密にはその中核となる部分であるカーネルのことである。

現在では、パーソナルコンピュータに限らず、携帯電話のような組み込みシステムからメインフレームHPCC等のスーパーコンピュータまで、幅広く応用されている。

GNUプロジェクト伽藍方式の開発で遅れをとる一方、バザール方式の開発で成功を収めたことでも知られている。

目次

[編集] 概要

Linuxとは本来カーネルのみを指す呼称であるが、今日ではこのLinuxカーネルGNU Projectのソフトウェアや、X Window Systemなど別のプロジェクトやライセンスのもとで開発が行われたソフトウェア製品群をパッケージ化し、Linuxカーネルとともに配布するLinuxディストリビューションを指しており、これを単にLinuxと呼ぶこともある。

Linuxカーネルを用いて構築されたOS環境は、一般的にはUNIX系OS、UNIX互換OS等として分類される。ただし厳密には、本来のUNIXと混同して扱うことは適切ではない。なぜなら、UNIXの標準的なAPIなどを定めた仕様であるPOSIXをおおむね満たしているものの(たとえ実質的にPOSIXを満たしていたとしても)、ほとんどのディストリビューションがPOSIX自体を取得しておらず[注釈 1]、UNIXの商標を取得しておらず(商標UNIXではない)、既存のUNIXからのforkやソースコードの流用等も行われていない(血統上のUNIXでもない)からである。

かつては「ハッカークラッカーの意味ではない)のOS」としてのイメージが強かったが、最近ではユーザーフレンドリーなデスクトップ環境が充実し、さらにシステムやソフトウェアパッケージ等の管理システムも発達し、グラフィカルなラッパー等が充実した結果システムの保守運用も容易なものとなったため、それまで縁遠いものとされてきたエンドユーザーの一部にも普及し始めている。

Linuxは無料な上、オープンソースで改良も自由であるが、使用するにあたりソースの改良は公開しなければならないという条件がある。この多くの利用者の知識を取り入れるというウィキペディア(→オープンコンテント)とよく似た利用方法が、冷蔵庫やオーブンといった家電製品に携帯電話など、各方面に利用できる「幅広い機能」と数多くの利用者による修正を経た結果の「高い信頼性」に繋がっている。

[編集] 「Linux」の読み方

「Linux」はリーヌークス、リナックス、リヌックス、リヌクス、ライナックス、リーナクス等様々な読み方をされている。開発者であるスウェーデン系フィンランド人リーナス・トーバルズ本人のスウェーデン語の名前に由来していることから、スウェーデン語の発音「リーヌークス」と表記するのが正しいとされているが、リーナス個人が英語を母語とする文化圏の出身ではないため、「どのように呼んでもらっても構わない」としている。ただしインターネット上に公開されている、本人の英語の録音では「リヌックス」 /ˈlɪnʊks/ と発音されている。[1]

日本では各種の読み方が混在していたが、日本で最初のLinux専門誌LINUX JAPANが「リナックス」の読み方を採用し、一般誌が同誌に追従した事から、この読み方が一般に広まった。しかし、日本Linux協会の正確な読みは「にほんリヌックスきょうかい」である。

後付けではあるが、Linux を Linux Is Not UNIX の略としたり、Linus UNIX の略としたりする者もいる。

[編集] GNU/Linux

Linuxカーネルはその名の通り、OSの根幹としてコンピュータのシステム資源を統括するカーネルである。これを用いて具体的な応用を可能とするオペレーティングシステムを構成する場合には、他の多数のソフトウェアの助力を必要とする。(各種のライブラリやサブシステムなど)また、さらに具体的な作業や業務に応用する際には各種サーバやアプリケーション等のソフトウェアも必要となる。

GNU Projectではこうしたソフトウェアをフリーで開発・提供しており、実際に大多数のLinuxディストリビューションは一部ないしは全てのライブラリ環境(GNU Cライブラリなど)やツール環境(GNU Coreutils等)をGNUのプロダクトに依存している。そのため、Linuxカーネルを用いてUNIXと同等のシステムを構成する場合には、そうしたシステムは「GNU/Linux」などと呼ぶべきだと主張する者もいる。その他にもこの主張の根拠としては、「GNU自身のプロダクトではないものの、Linuxカーネルを含め多くのソフトウェアがその使用に際してユーザーライセンスとしてGNUが提唱するパブリックライセンス(GPLLGPL等)を採用している点」や「さらにこれらのソフトウェアの多くが事実上相互依存している点」などが挙げられている。(リチャード・ストールマン、またリーナス・トーバルズ自身もGNU/Linuxと呼称している[注釈 2]GNU/Linux名称論争を参照)。

[編集] 歴史

リーナス・トーバルズ

Linuxカーネルは、1991年に当時フィンランドヘルシンキ大学在学中だったリーナス・トーバルズが個人で開発を開始した。最初はアセンブリ言語で記述されたターミナルエミュレータだったが、その後、Minixよりも優れたMinixを作るために拡張された。

当時はインテル80386 CPUを搭載した32bit PC/AT互換パーソナルコンピュータが登場し、それまで32ビット環境を扱うために要求されたワークステーションミニコンピュータ等と比較すれば遥かに安価に、しかも個人でも入手が可能なものとなりつつあったため、リーナス・トーバルズはこれを使ってUNIX互換の機能を持つOSを動作させてみたいと考えていた。しかし商用UNIXは単純に高価であり、UNIXを模して実装されたMinixもまた教育用という動機からその機能を大幅に簡略化されていたために構造的ないくつもの問題を備えており、いずれもトーバルズの目的を果たすことは困難だった。このためトーバルズは自らOSカーネルの開発に着手し、既に使用していた自作のターミナルエミュレータを改造、ファイルシステムなどUNIX互換のサブシステムとAPIを作成し、GNU Projectのライブラリやツール環境などと組み合わせることでそれらのソフトウェアが使えるようにした。

登場した当初のLinuxの実装は極めて単純なものであり、既存の他のどのようなUNIXシステムに対しても、その機能と実績において比肩しうるものではなかった。しかし当時、フリーなUNIX互換OSを開発していたGNU Projectはカーネル (GNU Hurd) を完成しておらず(2006年現在もなお開発途上である)、AT&TのUNIXもフリーではなく、さらにBSDはAT&Tと係争中だったために、即座に利用可能な形で提供され、スクラッチ開発であることから権利上の問題も抱えていないと考えられる、クリーンかつフリーなUNIX互換カーネルと呼ぶことができるめぼしい存在は、Linuxの他になかった。 PCでも動作する、より本格的でフリーなUNIX(ライク)環境を求める潜在的なユーザーや開発者たちの多くは、当時は主に書籍として流通していた教育用OS「Minix」に流れていたが、トーバルズはLinuxをMinixのメーリングリスト上で公開し、GPLの下で利用可能にすることにした。これはインテルの32bitCPUを搭載したパーソナルコンピュータでしか動作しなかったが、ちょうど32bitパーソナルコンピュータの普及期だったこと、GPLによって誰もが改良可能だったことから、フリーですぐに使用でき、より多くの機能のあるOSを求める人々からの改良を促した。“適切なときに適切な場に居合わせた”ことが、後の大幅な成長に繋がったと言える。

実際にこの時期には、他にもカリフォルニア大学バークレー校Berkeley Software DistributionBSD系UNIXの80386への移植・実装(386BSD、のちのFreeBSDおよびNetBSD)を開始していた。市場において、マルチプロセスやメモリ保護・仮想CPUなど、近代的な32bit OSの実装が可能となる機能を搭載した安価な32bitパーソナルコンピュータが普及を開始し、UNIXが自らのコンピュータで動くものとなる可能性があったことが、こうした広義のPC-UNIXの移植や開発をスタートさせた主な要因であり、Linuxもまたそれらの現象のうちの1つだった。

その後、Linux Kernel Mailing List (LKML) が開発に使われ、改良に参加する一般有志はそこに集まることになった。PC-UNIXの隆盛など社会的な注目が高まる中、1997年ごろより商用目的への応用が注目され、ハイエンドシステムに必要な機能が付け加えられていく。ReiserFS、ext3に代表されるジャーナルファイルシステム、64bitファイルアクセス、非同期I/Oファイルアクセス、効率的なマルチプロセッサの利用などである。

2000年頃より、IBMヒューレット・パッカードSGIインテルなどの企業にフルタイムで雇用されたプログラマも開発に加わるようになり、開発スピードにはずみが付いた。このように、多くの人々の協力によってソフトウェアが開発されうるということは、それまでのプロプライエタリなソフトウェア開発の常識では考えられないことであり、エリック・レイモンドは、Linuxの開発を分析し、「伽藍とバザール」を著した。

2005年時点では、小~中規模のホストコンピュータ用OSとして、機能的には商用UNIXと比較しても遜色のない域に達している。主に各種ネットワークサーバウェブサーバデータサーバなど)の、小~中規模ネットワークにおけるサーバOSとして利用される例が一般的であり、また安価なPCやブレードサーバ等を束ねるクラスタ環境としても応用されている。

その一方で小規模な情報機器への組み込みOS環境としても普及しており、プリントサーバやストレージサーバ、ネットワークカメラやルータ等にも応用され、一部のPDAや携帯電話端末などの、小型情報端末の組み込みOSとしても普及している。

概して、一般消費者やオペレータの目に直接触れるフロントエンド環境としてよりも、インフラを担う「縁の下の力持ち」として応用される例が多い。

逆に、パーソナルコンピュータ市場におけるデスクトップ環境としては、普及率においてMicrosoft Windowsの圧倒的なシェアを覆すには程遠く、もっぱら安価なUNIX互換ワークステーションとして、それらの環境を必要とするユーザーの間で利用されるに留まっている。官公庁教育機関企業など導入やメンテナンスを補佐する専門職の存在する環境ではITのコスト削減のための有効な代替手段となりつつある。ただし、最近では初心者をターゲットにしたディストリビューションも登場しており、専門の技術者が居ない環境でも、比較的容易にワークステーションを構築できるように改善されている。

Linuxは学校教育の場でも用いられる。採用例は初等教育の段階から見られるが、特に大学では理数系・理工系分野での採用が顕著であり、その背景としてはUNIX系環境向けの極めて充実した理数系・工学系向けアプリケーションやツール環境の存在と、長年に渡るそれらの利用実績と知見・経験の蓄積とがある。より広範な一般教養のカリキュラムの中で使用されることもあるが、こちらは多くの学生が大学進学以前から既にWindowsに慣れ親しんでいるため、一般に受けが悪いとされる。しかし小中学生などを対象にした調査では、小学生の90%以上がLinuxは簡単と答えており、若い年齢ほどLinuxへの抵抗はないため初等教育からの採用が重要である[2]。教育用に特化したディストリビューションとして、gnuLinExSkolelinuxEdubuntuなどがある。2009年10月14日には大阪府箕面市が、Edubuntuのインストールされた中古パソコン500台を利用したシンクライアントシステムを構築することを発表した[3]他、大阪府交野市でも中古パソコンに利用するOSとしてXubuntuを採用した[4]

最近では、オフィススイートであるLibreOfficeOpenOffice.orgなど商用のソフトウェアにも劣らないフリーソフトウェアや、Windowsなど既存のオペレーティングシステムを意識したLinuxディストリビューションの登場により、エンドユーザー用のデスクトップ環境としての状況は改善されつつある。こうした状況を受けて国内外で一部の自治体がLinuxを搭載したデスクトップPCを導入する動きが見られる。他方で一般に販売されているソフトウェアの多数においては、Linux上で十分に代替しうる製品が存在しないこと、プリンターなどの周辺機器の対応が不十分な体制であること、サポートの問題等によりハードウェアの動作保障が不十分なことから、家庭向けのPCとしての導入は進んでいない。

日本でも近年、導入・維持コストの低さと、Windows現行版の作動しない旧式PCでも使用できる動作の軽さを買って、官公庁や自治体などで導入を検討する動きがある。これに対して、現場のPC環境変更にかかる苦労や工数、データ互換性の問題などを考慮せずに「無料だから」と安易にトップダウンで切り換える事を憂慮する意見もあるものの、最近ではLinuxを導入する企業も増えてきている。海外では公的な機関が相次いでLinuxの導入や推奨を決めており、Linuxの導入の流れは確実に強まりつつあるとする主張や指摘もある[要出典]

Linuxカーネルはフリーソフトウエアとして開発が行われており、世界中のプログラマや企業により改良され、発展し、世界的に利用されるOSとなった。この様にソースコードを簡単に変更できてデバイスに対応しやすいことは、Linuxが組み込みOSとして広く使われる理由の一つとなっている。

現在主流となっているカーネルVersion 2.x系列におけるマスコットキャラクターは、リーナス・トーバルズの嗜好を汲んでタックスと名付けられたペンギンが選ばれている。なお、カーネルVersion 1.xのマスコットキャラクターカモノハシだった[要出典]。一部にカモメだという誤解も見られる[5]が、カモメはSLS及びSlackwareの日本語拡張キットJE(Japanese Extension)のマスコットである。

2006年には、ISO/IEC 23360シリーズとして国際規格になっている。 Linux Standard Base (LSB) core specification 3.1 [注釈 3]

2008年には東京証券取引所の基幹システムの1つ「派生売買システム」にもLinuxが使われるようになった。 以降、東証ではシステムのLinux化が進められている。


[編集] 名前

リーナス・トーバルズは、自分の作品をFreak, Free, Unixを合成して「Freax」と呼ぼうと思っており、開発の初期の半年程の間は、彼はファイルを「Freax」というディレクトリに保存していた。トーバルズは「Linux」という名前も考えたが、最初はこれを自己中心的すぎるとして却下していた。

1991年の9月、ファイルは開発を促進するためにヘルシンキ技術大学FTPサーバ (ftp.funet.fi) にアップロードされた。トーバルズの協力者で、当時そのサーバの責任者であったAri Lemmkeは、「Freax」という名前を良く思わず[注釈 4]、彼はトーバルズに相談することなく、サーバ上のプロジェクトに「Linux」という名前をつけてしまった。しかし、その後トーバルズは「Linux」という名前をつけることに同意した。

[編集] Linuxカーネル開発の遍歴

  • 1991年 Version 0.01, ソースコード約1万行、ユーザー数1人(本人)
  • 1992年 Version 0.96, ソースコード約4万行
  • 1994年3月14日 Version 1.0.0, ソースコード 176,250行
  • 1995年3月 Version 1.2.0, ソースコード 310,950行
  • 1996年6月9日 Version 2.0.0
  • 1997年 Version 2.1.0, ソースコード約80万行
  • 1999年1月25日 Version 2.2.0, ソースコード 1,800,847行
  • 2001年1月4日 Version 2.4.0, ソースコード 3,377,902行
  • 2003年12月17日 Version 2.6.0, ソースコード 5,929,913行
  • 2008年 Version 2.6.x, ソースコード約1000万行。ただしコメントや空白行を除くと6,399,191行とのこと。[6]
  • 2011年5月19日現在 Version 2.6.39, ソースコード 14,619,185行

Linuxのソースコードは現在肥大化する傾向にあり、これを防ぐために古いコードやマイナーなデバイスドライバーのコードを削除するといったことも行われている。

最初のLinuxのリリースまでの開発はおよそ4ヶ月をかけて行われた。 開発にはアセンブリ言語にくわえてGCCを使用して、C言語をメインにコードを書いたとドキュメンタリー番組「Linuxの歴史」への出演の際に本人が語っている。

2010年時点では、Linuxカーネル2.6.33から2.6.34への変更で、コミットした人は1,100人を超えている[7]

[編集] Linuxディストリビューション

ディストリビューションの一つ、UbuntuインストールCD。ほとんどの場合はこのようなメディアでなく、必要なファイルのみがインターネットを通じて配布される。

Linuxのカーネル本体はソースコードとして単独で公開されており、他のプログラムによってコンパイル実行バイナリを作成する必要がある。また、サーバやアプリケーション、ウィンドウシステムなど実用プログラムを動作させるためにはライブラリが必要である。しかし、このような環境をゼロから構築して維持運用する作業は難解かつ煩雑であり、一般的なパーソナルコンピュータのエンドユーザーでは実質的に不可能である。

このため、Linuxカーネルやライブラリ、システムソフトウェア、アプリケーションなどを、あらかじめコンパイルされた実行バイナリとして、設定の雛型などと一緒にパッケージとしてまとめ、パッケージ管理システムインストーラなどと組み合わせて提供されている。このようにひとまとめにされた環境をLinuxディストリビューションと呼ぶ。これにより利用者は構築、運用に頭を悩ますことなく、すぐにLinuxを実用することができる。

多くのLinuxディストリビューションでは、カーネル、ライブラリ、ツール環境、コマンドラインシェル、コンパイラ、テキストエディタ、X Window System、ウィンドウマネージャ、デスクトップ環境、科学技術計算ツール、その他オフィスアプリケーションソフトなど、何千ものアプリケーションパッケージを選択できるようになっている。

[編集] 特殊な利用分野

LinuxはオープンソースのOSであるため、カーネルのみを取り出して他のコンポーネントと組み合わせられる。Microsoft Windowsなどのソースの開示や参照が困難なプロプライエタリOSと比較して、よりニッチな用途への対応や調整のキャパシティを広く取れることから、応用範囲はより広範であるとされる。

  • 1CD Linux (LiveCD) では、充分な搭載メモリ容量を確保できるPCでは、データの編集や蓄積などを要求されない参照や閲覧主体の作業であれば、そのほとんどの作業をCDからの起動で利用可能となる。一方、特殊な用途としては、X Window Systemを組み込まず、ごく短時間で起動するメディアプレーヤーシステムや、囲碁などの専用のもの等もある。
  • 1FD Linuxでは、一枚のFDに(時として特殊なフォーマット形式を利用して)Linuxを組み込み、PCルーターSambaサーバを構築できるものなどがある。
  • NASでは、NFSやSamba等によるUNIX環境やWindowsネットワークへの対応だけでなく、NetatalkによるAppleTalkへの対応を実現したものもある。また一部のNAS装置では、ソフトウェアを新たに導入することでストリーミングサーバなどの機能を追加できるものもある。
  • HDDレコーダー携帯電話端末、カーナビゲーションなどデジタル機器の組み込みシステム用OS。→組み込みLinuxを参照
  • スーパーコンピュータ 現在、汎用機やスーパーコンピュータ用カーネルとしてLinuxは広く採用されている。特にクラスター型HPCでの普及率は高く、2010年11月に発表されたスーパーコンピュータのランキングTop500.orgでは、Linuxを中心に構成されたシステムが500サイト中452サイト(SUSE LinuxやCentOS等のLinuxディストリビューションを含む)と9割を超えるシェアを占めている[8]
  • キャリアグレード linux 電話交換機などの大規模通信機器向けに最適化、カスタマイズされたもの。

[編集] ユーザーグループ

Linuxには複数のユーザーグループが存在する[9]

この節は執筆の途中です この節は執筆中です。加筆、訂正して下さる協力者を求めています

[編集] 脚注

[ヘルプ]

[編集] 注釈

  1. ^ POSIXの認定には決して少なくない時間と予算が必要であり、また認定はバージョン単位で取得する必要があることから、殆どのディストリビューションでは時間的・予算的な制約からこれを見送らざるを得ないという事情がある。ただし、独 Unifix Linux 2.0のように、かつてPOSIX認定を取得した例外的なディストリビューションも存在しなかった訳ではない。
  2. ^ ただし、「Revolution OS」のインタビューによれば、リーナスは「すべてのLinuxをGNU/Linuxと呼称するのはばかげている」と答えている。
  3. ^
    • ISO/IEC 23360-1:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 1: Generic specification
    • ISO/IEC 23360-2:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 2: Specification for IA32 architecture
    • ISO/IEC 23360-3:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 3: Specification for IA64 architecture
    • ISO/IEC 23360-4:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 4: Specification for AMD64 architecture
    • ISO/IEC 23360-5:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 5: Specification for PPC32 architecture
    • ISO/IEC 23360-6:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 6: Specification for PPC64 architecture
    • ISO/IEC 23360-7:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 7: Specification for S390 architecture
    • ISO/IEC 23360-8:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 8: Specification for S390X architecture
  4. ^ 「Freax」と語感の酷似している「Freaks」は英語で障害者の差別語であったため

[編集] 出典

  1. ^ Howto pronouce Linux?
  2. ^ Linuxは簡単という小学生は90%,教員は60%---経産省による導入実験,結果公開[1], ITpro
  3. ^ 大阪府箕面市、Edubuntu採用にみる決意” (日本語). ITmedia (2010年8月16日). 2010年1月31日閲覧。
  4. ^ 大阪府交野市がOpenOffice.orgとODF採用、中古PCのLinuxによる再生も” (日本語). 日経BP (2009年10月16日). 2010年8月19日閲覧。
  5. ^ JLA ロゴ募集の結果と, 不採用に関するお詫び”. 日本 Linux 協会運営委員会. 2011年7月23日閲覧。
  6. ^ http://linux.slashdot.org/article.pl?sid=08/10/22/1713241
  7. ^ Linux Weather Forecast | The Linux Foundation ([2])
  8. ^ Operating System share for 11/2010, TOP500 Supercomputing Sites
  9. ^ 国内外の Users Group

[編集] 関連項目

[編集] 外部リンク

個人用ツール
名前空間

変種
操作
案内
ヘルプ
ツールボックス
他の言語