Linux 【リナックス】
概要
Linux(リナックス)とは、世界で最も普及している、オープンソースのオペレーティングシステム(OS)。いわゆるUNIX系OSの一つで、主に業務用コンピュータシステムやデジタル家電、携帯端末などで利用されている。主にネットワーク上で他のコンピュータに機能やサービスを提供するサーバコンピュータ用として利用されるが、スマートフォンなどの携帯端末、家庭用ゲーム機やデジタル家電、スーパーコンピュータ、メインフレームまで、様々な種類や用途のコンピュータ製品に組み込まれ広く普及している。一般的なパソコンでも動作するが、パソコン向けOSはWindowsやmacOSなどの製品が強く、熟練者以外はあまり使わない。
非営利団体のリナックス・ファウンデーション(Linux Foundation)が開発を主導し、世界中の有志の開発者たちが共同で開発や修正に取り組んでいる。「GPL」(GNU General Public License)と呼ばれる利用規約(ライセンス)に基づきオープンソースソフトウェアとして無償配布されており、誰でも自由に入手、使用、改変、再配布、自らのソフトウェアへの組み込みなどを行うことができる。
Linuxカーネル
狭義のLinuxは、コンピュータのハードウェアの制御や管理、プログラムの実行制御などを行う中核部分である「Linuxカーネル」(Linux kernel)を指す。
先行するUNIX系OSを参考に設計や仕様が決められたが、既存のソフトウェアのプログラムコード自体は流用せずにゼロから開発されている。開発には主にC言語が用いられ、わずかな手直しで様々なCPUや機種で動作させることができる。
当初は一般的なパソコン製品に搭載されていた米インテル(Intel)社のx86系32ビットCPU(IA-32)向けに開発されたが、徐々に対応機種を増やし、現在では64ビットCPUのx86-64系や、モバイル機器・組み込み機器で一般的なARM系、IBM製メインフレームのz/Architecture系など、20種類を超えるプロセッサに対応している。
全体的な構造としては「モノリシックカーネル」となっており、実用上の性能や限られたメモリ容量でも効率的に動作することを重視している。「カーネルモジュール」と呼ばれるソフトウェア部品の追加や入れ替えにより、用途に応じて柔軟に構成を変更できるようになっている。
Linuxディストリビューション
カーネルだけがあってもそのままでは利用者がコンピュータに導入して操作可能な状態にはできないため、OSとして機能するよう必要なプログラム群をまとめた配布パッケージが作成されており、これを「Linuxディストリビューション」(Linux distribution)という。
ディストリビューションにはカーネルの他に、シェルやライブラリ、コンパイラなどの開発ツール類、テキストエディタ、ブートローダなど、起動や操作、ソフトウェアの導入・実行に必要なソフトウェアが含まれる。用途に応じて、各種のサーバソフトウェアやアプリケーションソフト、GUIを提供するデスクトップ環境(ウィンドウマネージャなど)が同梱されることもある。
Linuxディストリビューションは誰でも自由に開発・配布できるため、個人や数人のグループから企業、大規模オープンソースプロジェクトまで様々な開発主体が様々な機種・用途向けのものを提供している。パソコン向けやサーバ向けとしてはDebian GNU/LinuxやUbuntu Linux、Red Hat Enterprise Linux、CentOS、Fedoraなどがよく知られる。
組み込みLinux
汎用のディストリビューションをパソコンやサーバなどで使用する以外にも、電子機器などのメーカーが自社製品を制御するコンピュータの組み込みOSとしてLinuxカーネルをベースとしたシステムを独自に開発して組み込む事例も数多くあり、単純な普及台数ではそちらの方が多いとも言われる。
テレビやビデオレコーダー、家庭用ゲーム機などのデジタル家電製品の多くがLinuxベースの組み込みシステムを採用している。カーネルの一部を改変してリアルタイムOS化し、乗り物や産業機械などの制御に用いるシステムもある。
最も有名な例としては、スマートフォンやタブレット端末のOSおよびソフトウェア環境として米グーグル(Google)社が主導した開発された「Android」(アンドロイド)がある。Linuxカーネルのカスタム版を基盤としたモバイル機器向けOSで、米アップル(Apple)社のiOSと市場を二分している(汎用プラットフォーム化しているため狭義の組み込みLinuxからは外れているとする考え方もある)。
起源
1991年に当時フィンランドのヘルシンキ大学の大学生だったリーナス・トーバルズ(Linus B. Torvalds)氏が、教育用のシンプルなUNIX系OS「MINIX」(ミニックス)を参考に独自のOSを開発し始めた。
“Linux” の名称は氏のファーストネームと、MINIXを含む当時のUNIX系OSの多くが “~x” (~ックス)というネーミングを好んだ(商標権の問題で「~ UNIX」とは名乗れなかった)ことに由来する。ただし、そのように命名したのは当時の関係者で、本人ではないとされる。
氏は初期のLinuxをGPLによりオープンソースとして公開し、主に大学や研究機関が接続されていた初期のインターネットを通じて様々な人が開発に参加するようになった。カーネル以外に必要なツール類はGNUプロジェクトが開発していたものを取り込むことで、カーネルの開発に集中することができた。
GNU側も独自カーネル(GNU Hurd)の開発が難航していたため、Linuxカーネルを取り込むことで、大目標としていた「GPLで公開可能な完全なOSパッケージ」を作成できるようになり、両者は相互補完的な関係で共に発展・普及していった。
関連用語
Linux用語辞典
- ⊖ツール
- ⊖コマンド
- 内部コマンド
- 外部コマンド
- lsコマンド
- cdコマンド
- cpコマンド
- mvコマンド
- lnコマンド
- atコマンド
- psコマンド
- catコマンド
- headコマンド
- tailコマンド
- lessコマンド
- moreコマンド
- wcコマンド
- teeコマンド
- touchコマンド
- setコマンド
- echoコマンド
- chmodコマンド
- chrootコマンド
- diffコマンド
- fsckコマンド
- nohupコマンド
- chownコマンド
- umaskコマンド
- envコマンド
- niceコマンド
- dfコマンド
- odコマンド
- whichコマンド
- whereisコマンド
- whatisコマンド
- aproposコマンド
- xargsコマンド
- zcatコマンド
- basenameコマンド
- chattrコマンド
- lsattrコマンド
- lsusbコマンド
- md5sumコマンド
- ⊖リモート
- ⊖ネットワーク
- ⊖圧縮・アーカイブ
関連リンク (外部サイト)
他の辞典による解説 (外部サイト)
この記事を参照している文書など (外部サイト)
- 国立研究開発法人産業技術総合研究所(AIST) ニュース「複数のAIアクセラレータを搭載した評価チップの設計を完了、試作を開始」にて引用 (2021年5月)
- 東京大学 大学院工学系研究科 プレスリリース「複数のAIアクセラレータを搭載した評価チップの設計を完了、試作を開始」にて引用 (2021年5月)
- 埼玉女子短期大学研究紀要 第35号「ラズベリーパイ3によるDHCPサーバーの構築」(PDFファイル)にて引用 (2017年3月)