Linuxカーネル

OSの中核、ハードウェアとソフトウェアの橋渡し

Linuxカーネルとは

カーネルはOSの中核部分で、ハードウェアとアプリケーションの間を仲介します。 プロセス管理、メモリ管理、デバイスドライバ、ファイルシステム、ネットワークスタックなど OSの基本機能を提供します。Linuxカーネルはモノリシックカーネルですが、 モジュールにより動的に機能を追加できます。

Linuxシステム構造

ユーザー空間(User Space)
アプリケーション、シェル、ライブラリ
↕ システムコール
カーネル空間(Kernel Space)
プロセス管理
メモリ管理
ファイルシステム
ネットワーク
↕ デバイスドライバ
ハードウェア
CPU、メモリ、ディスク、NIC

カーネルの主な役割

プロセス管理

  • • プロセスの生成・終了
  • • スケジューリング(CPU時間配分)
  • • プロセス間通信(IPC)

メモリ管理

  • • 仮想メモリ
  • • ページング・スワッピング
  • • メモリ保護

デバイス管理

  • • デバイスドライバ
  • • 割り込み処理
  • • I/O制御

ファイルシステム

  • • VFS(仮想ファイルシステム)
  • • 各種FS対応(ext4, xfs等)
  • • バッファキャッシュ

カーネルバージョン

5.15.0-generic
5 = メジャー15 = マイナー0 = パッチ

# カーネルバージョン確認

uname -r

cat /proc/version

SRE/インフラ観点

カーネルパラメータ(sysctl)

/proc/sys/ 配下のパラメータでカーネル動作をチューニング。 ネットワーク、メモリ、ファイルシステムの最適化に使用。

カーネルアップデート

セキュリティパッチ適用時は再起動が必要な場合あり。 Livepatch技術で再起動なしの適用も可能(一部)。

トピック詳細