Linuxカーネル
Linuxカーネルの起動画面(バージョン 3.0.0) | |
作者 | リーナス・トーバルズ |
---|---|
開発元 | リーナス・トーバルズ, および多数のコミュニティーメンバー |
初版 | 1991年9月17日 |
最新版 | 6.9.1[1] - 2024年5月17日 [±] |
リポジトリ | |
プログラミング 言語 | C言語、アセンブリ言語[2]、Rust[3] |
対応OS | Linux |
種別 | カーネル (モノリシックカーネル) |
ライセンス | GNU General Public License v2 |
公式サイト |
www |
Linuxカーネルは、Unix系オペレーティングシステムであるLinuxのカーネル。リーナス・トーバルズによって開発が開始された。ライセンスにGPL︵バージョン2︶を採用する自由なソフトウェアである。
通常、Linuxカーネルと言えばリーナスが管理・公開している公式版︵メインライン・カーネル︶を指すが、Linuxディストリビューションで使用されているカーネルは、バージョンが古かったり、ベンダーが独自の改造を施してあることが多い。例えば、Androidで使用されているカーネルもそのひとつである。このような非公式のカーネルは、ベンダー側が対応すべきとしているため、Linux Kernel Mailing Listなどでは基本的に対応対象外となっている。
開発の初期には、MINIXを参考としており、影響を受けてもいるが、MINIXのコードは使用せず、ゼロから書かれた︵IBM PCを端末エミュレータとして動かすためのコードから成長させたものと言われている︶。
GPLを採用したことがLinuxを共有の物として開発することを推進させた、とされている。[要出典]また、Linuxの開発とインターネットの発展が時期的に一致したことも、Linuxの開発コミュニティ形成に寄与した。
また、開発に際して、よりオープンな開発体制をとり、現在バザール方式と呼ばれている、誰でもLinux Kernel Mailing Listへのバグ報告や修正、機能拡張パッチを公開でき、その中から最終的にリーナスと彼が任命したメインテナーがコーディネータとなって、公式版のLinuxカーネルの質を保っている。
対応アーキテクチャ[編集]
Linuxカーネルは各種命令セット (ISA) に対応している。各アーキテクチャで共有されているコードが多いため、CPUに依存した部分を変更すれば移植できるようになっている。
公式サポート[編集]
バージョン5.11.11(2021年3月30日)時点。括弧書きはarchディレクトリ内の名称。
- DEC Alpha (
alpha
) - ARC (
arc
) - ARM (
arm
/arm64
) - AMD64 (
x86
) - C6x (
c6x
) - H8 (
h8300
) - Qualcomm Hexagon (
hexagon
) - IA-64 (
ia64
) - MC68000 (
m68k
) - MicroBlaze (
microblaze
) - MIPS (
mips
) - Nios II (
nios2
) - Andes NDS32 (
nds32
) - OpenRISC (
openrisc
) - PA-RISC (
parisc
) - PowerPC (
powerpc
) - RISC-V (
riscv
) - SuperH (
sh
) - SPARC (
sparc
) - x86(
x86
、i486以降) - Xtensa (
xtensa
) - z/Architecture (
s390x
)