Linux

Linuxの最新ニュースをまとめて検索!

Linux
Linuxのマスコット「Tux」
Linuxのマスコット「Tux」
OSの系統 UNIXライク
最新リリース Kernel 2.6.31(カーネル) / 2009年9月9日
カーネル種別 モノリシックカーネル
ライセンス GNU General Public License
開発状況 2.4系および2.6系カーネルのリリース
  

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

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

目次

[編集] 概要

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

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

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

[編集] "Linux"の読み方

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

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

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

[編集] GNU/Linux

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

GNU Projectではこうしたソフトウェアをフリーで開発・提供しており、実際に大多数のLinuxディストリビューションでは一部ないしは全てのライブラリ環境(glibc、GNU Cライブラリ)やツール環境(GNU bintuilsやfile utils等)をGNUのプロダクトに依存しているという事実、またGNU自身のプロダクトではないものの、Linuxカーネルを含め多くのソフトウェアがその使用に際してユーザーライセンスとしてGNUが提唱するパブリックライセンス(GPLLGPL等)を採用し、さらにこれらのソフトウェアの多くが事実上相互依存している点などからも、Linuxカーネルを用いてUNIXと同等のシステムを構成する場合には、そうしたシステムは「GNU/Linux」などと呼ぶべきだと主張する者もいる(リチャード・ストールマン、またリーナス・トーバルズ自身も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互換ワークステーションとして、それらの環境を必要とするユーザーの間で利用されるに留まっている。

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

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

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

Linuxカーネルはフリーソフトウエアとして開発が行われており、世界中のプログラマや企業により改良され、発展し、世界的に利用されるOSとなった。

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

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

1991年 Linux Version 0.01, ソースコード約1万行、ユーザー数1人(本人)

1992年 Linux Version 0.96, ソースコード約4万行、ユーザー数約1000人

1997年 Linux Version 2.10, ソースコード約80万行、ユーザー数約350万人

2007年 カーネル部のソースコードは500万行を超えたと発表され、今後とも増え続けるとされている。

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

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

詳細は「Linuxディストリビューション」を参照

Linuxのカーネル自体はソースコードとして単独で公開されており、他の応用プログラム等と組み合わせてコンパイルし実行バイナリを得ることによって初めて、各種サーバやアプリケーション、ウィンドウシステム等を動作させることができる。しかし、このような環境をゼロから構築し維持運用してゆく作業は難解且つ煩雑なものであり、少なくともパーソナルコンピュータの一般的なエンドユーザーの知見やスキルでは実質的に不可能と言ってよい。

このため、ライブラリやシステムソフトウェア、アプリケーション等を、ソースリストの状態ではなくあらかじめコンパイルして実行バイナリとし、さらに設定の雛型などを添付した上で、tar形式のアーカイブrpm/deb形式などのパッケージとしてまとめ、サポートスクリプトやパッケージ管理システムインストーラ等と組み合わせた形で提供されることが多い。このようなひとまとめにされた環境を、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。NECPanasonicNTTドコモ向け端末、Motorolaの携帯電話などで採用されている。
  • スーパーコンピュータ 現在、汎用機やスーパーコンピュータ用カーネルとしてLinuxは広く採用されている。特にクラスター型HPCでの普及率は高く、2007年6月に発表されたスーパーコンピュータのランキングTop500.orgでは、Linuxを中心に構成されたシステムが500サイト中389サイトと8割近いシェアを占めている[注釈 3]
  • キャリアグレード linux 電話交換機などの大規模通信機器向けに最適化、カスタマイズされたもの。

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

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

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

[編集] 脚注

[ヘルプ]

[編集] 注釈

  1. ^ POSIXの認定には決して少なくない時間と予算が必要であり、また認定はバージョン単位で取得する必要があることから、殆どのディストリビューションでは時間的・予算的な制約からこれを見送らざるを得ないという事情がある。ただし、独 Unifix Linux 2.0のように、かつてPOSIX認定を取得した例外的なディストリビューションも存在しなかった訳ではない。
  2. ^ ただし、「Revolution OS」のインタビューによれば、リーナスは「すべてのLinuxをGNU/Linuxと呼称するのはばかげている」と答えている。
  3. ^ 第29回 TOP 500リストより算出。なお、Blue Geneなどシステムの一部にLinux以外のカーネルも採用するシステムは除外した。

[編集] 出典

  1. ^ Howto pronouce Linux?
  2. ^ Linuxは簡単という小学生は90%,教員は60%---経産省による導入実験,結果公開[1], ITpro
  3. ^ 国内外の Users Group

[編集] 関連項目

ウィキブックス
ウィキブックスLinux関連の教科書や解説書があります。
ウィキメディア・コモンズ

[編集] 外部リンク

ace:Linuxarz:لينكسckb:گنو/لینوکس

最終更新 2009年10月9日 (金) 14:07 (日時は個人設定で未設定ならばUTC)。
【Linux】変更履歴

ご利用上の注意