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][注釈 2]こと、UNIXの商標を取得していない(商標UNIXではない)こと、既存のUNIXからのforkやソースコードの流用等も行われていない(血統上のUNIXでもない)ことなどから、本来のUNIXと混同して扱うことは適切ではない。 かつては「ハッカー(クラッカーの意味ではない)のOS」としてのイメージが強かったが、最近ではユーザーフレンドリーなデスクトップ環境が充実し、さらにシステムやソフトウェアパッケージ等の管理システムも発達し、グラフィカルなラッパー等が充実した結果システムの保守運用も容易なものとなったため、それまで縁遠いものとされてきたエンドユーザーの一部にも普及し始めている。 日本国内ではLinux初心者のことを慣用的にタコと呼ぶ場合がある。これは現在では必ずしも罵倒語や蔑称ではなく、対外的には愛称に当たるものとして定義されている[1][注釈 3]が、タコと呼んだり呼ばれることを嫌う向きも少なからずある。 Linuxはリーヌークス、リナックス、リヌックス、リヌクス、ライナックス、リーナクス等様々な読み方をされている。開発者であるスウェーデン系フィンランド人リーナス・トーバルズ本人のスウェーデン語の名前に由来していることから、スウェーデン語の発音「リーヌークス」と表記するのが正しいとされているが、リーナス個人が英語を母語とする文化圏の出身ではないため、「どのように呼んでもらっても構わない」としている。ただしインターネット上に公開されている、本人の英語の録音では「リヌックス」 /?l?n?ks/ と発音されている。[2] 日本では各種の読み方がカタログギフト していたが、日本で最初のLinux専門誌LINUX JAPANが「リナックス」の読み方を採用し、一般誌が同名称に追従した事から、この読み方が一般に広まった。しかし、日本Linux協会の正確な読みは「にほんりぬっくすきょうかい」である。 後付けではあるが、LinuxをLinux Is Not UniXの略としたり、LINus UniXの略としたりする者もいる。 Linuxカーネルはその名の通り、OSの根幹としてコンピュータのシステム資源を統括するカーネルであり、これを用いて具体的な応用を可能とするオペレーティングシステムを構成する場合には、他の多数のソフトウェアの助力を必要とする。各種のライブラリやサブシステムを抜きにしてこれらを構成することは不可能であり、さらに具体的な作業や業務に応用する際には、各種サーバやアプリケーション等のソフトウェアも必要となる。 GNU Projectではこうしたソフトウェアをフリーで開発・提供しており、実際に大多数のLinuxディストリビューションでは一部ないしは全てのライブラリ環境(glibc、GNU Cライブラリ)やツール環境(GNU bintuilsやfile utils等)をGNUのプロダクトに依存しているという事実、またGNU自身のプロダクトではないものの、Linuxカーネルを含め多くのソフトウェアがその使用に際してユーザーライセンスとしてGNUが提唱するパブリックライセンス(GPLやLGPL等)を採用し、さらにこれらのソフトウェアの多くが事実上相互依存している点などからも、Linuxカーネルを用いてUNIXと同等のシステムをリサイクルショップ 神戸 する場合には、そうしたシステムは「GNU/Linux」などと呼ぶべきだと主張する者もいる(リチャード・ストールマン、またリーナス・トーバルズ自身もGNU/Linuxと呼称している[注釈 4])。 リーナス・トーバルズLinuxカーネルは、1991年に当時フィンランドのヘルシンキ大学在学中であったリーナス・トーバルズが個人で開発を開始した。最初はアセンブリ言語で記述されたターミナルエミュレータであったが、その後、Minixよりも優れたMinixを作るために拡張された。 当時はインテルの80386 CPUを搭載した32bit PC/AT互換パーソナルコンピュータが登場し、それまで32ビット環境を扱うために要求されたワークステーションやミニコンピュータ等と比較すれば遥かに安価に、しかも個人でも入手が可能なものとなりつつあったため、リーナス・トーバルズはこれを使ってUNIX互換の機能を持つOSを動作させてみたいと考えていた。しかし商用UNIXは単純に高価であり、UNIXを模して実装されたMinixもまた教育用という動機からその機能を大幅に簡略化されていたために構造的ないくつもの問題を備えており、いずれもトーバルズの目的を果たすことは困難であった。このためトーバルズは自らリサイクルトナー カーネルの開発に着手し、既に使用していた自作のターミナルエミュレータを改造、ファイルシステムなど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 DistributionもBSD系UNIXの80386への移植・実装(386BSD、のちのFreeBSDおよびNetBSD)を開始していた。市場において、マルチプロセスやメモリ保護・仮想CPUなど、近代的な32bit OSの実装が可能となる機能を搭載した安価な32bitパーソナルコンピュータが普及を開始し、UNIXが自らのコンピュータで動くものとなる可能性があったことが、こうした広義のPC-UNIXの移植や開発をスタートさせた主な要因であり、Linuxもまたそれらの現象のうちの1つであった。