クラウド・インフラの用語一覧へ
このページの目次

カーネルとは?

読み方:カーネル

最終更新:2026/08/18

3秒でわかる

OS の中心で、CPU やメモリ、ディスクといった資源を管理するプログラム。アプリはカーネル越しにしかハードウェアへ触れません。

もう少し詳しく

どういうものか

カーネルは OS の中核部分で、CPU 時間の割り当て、メモリの割り当て、ファイルシステム、ネットワーク、デバイスの操作といった資源管理を一手に引き受けるプログラムです。アプリケーションは自分でディスクへ書き込むことはできず、システムコールという窓口を通じてカーネルに依頼します。

CPU には特権レベルがあり、カーネルは強い権限で動くカーネルモード、アプリは制限されたユーザーモードで動きます。この線引きがあるおかげで、ひとつのアプリの暴走が機械全体を巻き込まずに済みます。

なぜ必要か

複数のプログラムが同時に動く環境では、誰かが調停しないと成り立ちません。二つのアプリが同じメモリ領域を使えば内容が壊れますし、片方が CPU を独占すれば他は止まります。カーネルはこの取り合いを裁く立場にいます。同時に、ハードウェアの違いを吸収する役割もあり、アプリはディスクの番を知らずにファイルを読み書きできます。

具体例

Linux で今動いているカーネルを確かめる操作は次のとおりです。

uname -r # 5.15.0-91-generic カーネルのバージョン uname -a # 種別や<a href="/glossary/architecture" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">アーキテクチャ</a>まで表示 lsmod | head # 読み込まれているカーネル<a href="/glossary/module" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">モジュール</a> dmesg | tail # カーネルが出した最近のメッセージ # アプリが出しているシステムコールを覗く strace -c ls

strace の出力に並ぶ openatreadwrite が、アプリからカーネルへの依頼そのものです。

つまずきやすいところ

「Linux」という語をカーネルの意味で使う場合と、ディストリビューション全体の意味で使う場合が混在しています。厳密には Linux はカーネルの名前で、Ubuntu などはそのカーネルにシェルやコマンド群を組み合わせた配布物です。

カーネルとファームウェアの区別も曖昧になりがちです。電源投入直後に動いて OS を起動するのは BIOS や UEFI といったファームウェアで、カーネルはその後に読み込まれます。

もうひとつは、カーネルパニックとアプリのクラッシュの混同です。アプリが落ちてもカーネルは動き続けますが、カーネル自体が続行不能になると機械ごと止まります。

似た用語との違い

用語位置づけ
カーネル資源を管理する OS の中核
シェル人の入力をカーネルへの依頼に変える外側の殻
システムコールアプリがカーネルに仕事を頼むための窓口


覚え方

kernel は果実の「核」です。周りの果肉にあたるシェルやコマンド群を全部剥がしても、機械を動かす芯として残るのがこの部分だと考えると位置づけを取り違えません。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地カーネルインフラ

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

このコースが入っている学習分野

この用語を扱うコース

コース

Linux入門:コマンド操作のきほん

68レッスン
コース

LinuC レベル1(LPIC-1対応)対策

62レッスン
コース

コンピューターサイエンス:アルゴリズム / OS / ネットワーク / DB

135レッスン
Linuxコースの全編を見る