マイクロカーネル
OSがマルチタスク機能等に対応して高機能化すると,すべてを一まとまりにするのではなく,入出力の管理や機器の制御など幾つかの部分に分けてモジュール化するようになる。そうした場合に,各モジュールを制御し,全体を管理して働く部分が必要になってくる。それがカーネルである。カーネルの中でハードウェアに依存する部分を,マイクロカーネルと呼んで切り分けている。UNIXに代表される従来のOSのアーキテクチャは,モノリシックカーネルと呼ばれる一枚岩の構造となっている。マイクロカーネルはこれとは異なり,アドレス空間,プロセッササイクル,プロセス間通信やイベント通知のための口,割込処理,トラップ処理等といった基本的なシステム資源だけを管理する。従来はOSカーネルによって提供されていたページング管理,ファイル管理,そしてネットワークプロトコル処理等の機能は,OSカーネル上で動作するサーバ,すなわちユーザレベルのアプリケーションとして実現する。