コンテンツにスキップ

Linuxカーネル (制御プログラム) @基本ソフトウェア

はじめに

本サイトにつきまして、以下をご認識のほど宜しくお願いいたします。


01. Linuxカーネルとは

狭義のOSであり、ソフトウェア全体に関する様々な管理機能を持つ。

広義のOSは、ユーティリティや言語プロセッサーも含む基本ソフトウェア全体である。


02. Linuxカーネルの仕組み

アーキテクチャ

▼ モノリシックカーネルの場合

モノリシックカーネルアーキテクチャのLinuxカーネルは、システムコール、各種管理コンポーネント、デバイスドライバー、といったコンポーネントから構成される。

linux_kernel_architecture

▼ マイクロカーネルの場合

記入中...


システムコール

▼ システムコールとは

カーネルを操作できる関数 (例:read、writeなど) である。

▼ システムコールの仕組み

上位のソフトウェア (アプリケーションソフトウェア、ミドルウェア) のプロセスは、システムコールにパラメーターを渡し、システムコールを実行する。

システムコールはパラメーターに応じてカーネルを操作し、上位のソフトウェアのプロセスにカーネルの処理結果を返却する。

linux_kernel_system-call


管理コンポーネント

▼ プロセス管理

▼ メモリ管理

▼ ストレージ管理

▼ I/O (入出力) 管理

▼ ジョブ管理

▼ 通信管理

デバイスドライバーとミドルウェア間で実行されるデータ通信処理を管理する。

▼ 運用管理

ミドルウェアやアプリケーションの運用処理 (メトリクス収集、障害対応、記憶情報の保護) を管理する。

▼ 障害管理

ソフトウェアに障害が発生した時の障害修復を管理する。