マイクロカーネル
Microkernel
まいくろかーねる
OSの中核には最小限の機能だけを残し、ファイルシステムやデバイス制御などをカーネル外のサーバプロセスとして分離する構造。障害の影響を局所化でき拡張も容易だが、プロセス間通信の分だけ性能が落ちる。
Related
他の資格での定義
カーネルの機能を最小限に絞り、ファイルシステムやデバイス制御などを利用者空間のプログラムとして分離した構造。障害の影響が広がりにくく拡張しやすいが、処理の受渡しが増え性能面で不利になる。
プロセスの管理、プロセス間通信、メモリの管理など必要最小限の機能だけをカーネルに置き、ファイルシステムやデバイスドライバなどのその他の機能を、ユーザーモードで動くサーバプロセスとして実現するOSの構成。機能の追加や交換がしやすく、一部の機能の障害がOS全体に及びにくいが、プロセス間の通信が増えて性能が下がりやすい。
OSのカーネルに、タスク管理、メモリ管理、プロセス間通信などの最小限の機能だけを残し、ファイルシステムやデバイスドライバなどはカーネルの外のプログラムとして動かすOSの構造。障害の影響が広がりにくく機能の追加も容易だが、プロセス間通信が増えて処理が遅くなりやすい。
Past Exams
過去問での出題
過去問で 3 回出題(エンベデッドシステムスペシャリスト試験 2・システムアーキテクト試験 1)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
OSの中核部分で、ハードウェアの抽象化、プロセス管理、メモリ管理、ファイルシステム管理、デバイス管理などの基本機能を提供する。カーネルモード(特権モード)で動作し、ハードウェアに直接アクセスできる。モノリシックカーネルとマイクロカーネルの設計方式がある。
実行中のプログラムのインスタンス。独自のアドレス空間、プログラムカウンタ、レジスタ、スタックを持つ。生成、実行可能、実行、待ち、終了の状態遷移を経る。スレッドはプロセス内の軽量な実行単位。
プロセス内で並行実行される軽量な処理単位。同一プロセス内のスレッドはメモリ空間を共有するため、スレッド間の通信が高速。ただし共有資源への同時アクセスによる競合条件を防ぐため排他制御が必要。
OSがタスクの実行を強制的に中断させて他のタスクにCPUを割り当てるスケジューリング方式。タイムスライス方式(ラウンドロビン)や優先度ベースのスケジューリングが代表例。応答性が高くリアルタイムシステムに適する。
各タスクに均等なタイムスライス(CPU割当て時間)を順番に割り当てるスケジューリング方式。タイムスライスが経過すると実行中のタスクは待ち行列の末尾に回される。公平性が高いが、タイムスライスの長さが性能に影響する。
複数のプロセスやトランザクションが共有資源に同時アクセスする際に、データの整合性を保つための制御機構。セマフォ、ミューテックスなどのOS同期機構や、ロック方式(共有ロック・専有ロック)、MVCC等のデータベース制御手法がある。デッドロックの防止も重要な課題。
