OSとは(全体像)
OSは、コンピュータのハードウェアと、アプリ(ソフト)の間に立つ仲介役のこと。アプリが直接ハードを操作しなくても動くように、CPU・メモリ・ファイル・周辺機器をまとめて管理してくれる。
身近にたとえると、マンションの管理人だ。住人(アプリ)は自分で電気配線や水道をいじらず、管理人(OS)に「電気を使いたい」「部屋を使いたい」とお願いする。管理人が資源を割り振り、トラブルを防ぐ。
押さえるのは、OSが3つの層でできていることだ。
- カーネル … OSの中核。実際に資源を管理する。
- シェル … 人とOSの対話窓口(コマンドや画面)。
- ユーティリティ … ファイルのコピーなどを助ける補助プログラム。
詳しく:3層構成とカーネル設計3種だけ覚えれば戦える
ここが記事の心臓部。まずOSの3層を整理しましょう。
OSの3層構成
| 層 | 役割 | たとえ |
|---|---|---|
| カーネル | プロセス・メモリ・ファイル・周辺機器を管理する中核 | 管理人 |
| シェル | 人との対話窓口(コマンド入力やGUI) | 受付窓口 |
| ユーティリティ | コピーや一覧表示などの補助プログラム | 共用の道具 |
ここで取り違えやすいのが「OS=カーネル」という誤解です。OSはカーネル・シェル・ユーティリティを合わせたもので、カーネルはその中核にすぎません。
次に、その中核カーネルの作り方(設計)には3種類あります。
カーネル設計の3種
| 設計 | 特徴 | 代表OS |
|---|---|---|
| モノリシック(一体型) | 全機能を中核に集約。高性能だが、不具合の影響が広がりやすい | Linux・伝統的なUnix |
| マイクロカーネル | 最小限だけ中核に。残りは外側に分ける。安定だが性能は落ちやすい | QNX(車載)など |
| ハイブリッド | 両者の中間。バランス重視 | Windows・macOS |
モノリシックは全部を中核に詰め込む一体型で高性能、マイクロカーネルは中核を最小限にして外に分けるので安定、ハイブリッドはその中間です。ここで一番のひっかけが「Linuxはマイクロカーネル」という誤り。Linuxはモノリシックです。
わかりやすく言い換えると
要するに、2つの「広さ」と「設計」を押さえればOKです。
①OSは3層 … カーネル(中核)+シェル(窓口)+ユーティリティ(道具)。カーネルだけではない。
②カーネル設計は3種 … モノリシック(一体・高性能・Linux)/マイクロ(分割・安定)/ハイブリッド(中間・Windows)
つまり、「OSはカーネルだけじゃない」「Linuxはモノリシック」、この2点が試験の急所です。
試験のツボ
🔴 一番出る:カーネル設計の3種
①モノリシック = 一体型・高性能(Linux・伝統的Unix)
②マイクロカーネル = 中核は最小・安定/ハイブリッド = 中間(Windows・macOS)
🔴 次に出る:Linuxはモノリシック
①Linuxは全機能を中核に集約した一体型
②「Linuxはマイクロカーネル」は誤り
🟡 押さえると安定:OSは3層
①カーネル(中核)+シェル(対話窓口)+ユーティリティ(補助)
②「OS=カーネルだけ」ではない
よくある間違い
①「Linuxはマイクロカーネルである」→ ✗ Linuxはモノリシック(一体型)。マイクロカーネルの代表はQNXなど。
②「OSとはカーネルのことだけを指す」→ ✗ OSはカーネル・シェル・ユーティリティを合わせたもの。カーネルは中核にすぎない。
③「マイクロカーネルは全機能を中核に集約する」→ ✗ 全機能を中核に集約するのはモノリシック。マイクロカーネルは中核を最小にする。
試験での出題パターン
実際の問題でたしかめてみよう。
オリジナル問題1(カーネル設計)
カーネル設計に関する次の記述のうち、正しいものはどれか。
- カーネル設計はモノリシックの1種類しかなく、マイクロやハイブリッドは存在しないとされる
- モノリシックは全機能を中核に集約した一体型で高性能、マイクロカーネルは中核を最小にする
- モノリシックは中核を最小限にし、マイクロカーネルは全機能を集約する方式とされているのだ
- カーネル設計はどれもまったく同じしくみで、性能や安定性に違いはないものとされている
解答は 2 ですよ。
モノリシックは全機能を中核に集約した一体型で高性能、マイクロカーネルは中核を最小にする設計ですね。ハイブリッドはその中間です。
選択肢1の「1種類だけ」、選択肢3のモノリシックとマイクロが逆、選択肢4の「どれも同じ」はどれも誤りですよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 3種類ある |
| 2 | ✓ | モノリシックは一体型・マイクロは最小核 |
| 3 | ✗ | 説明が逆 |
| 4 | ✗ | 性能や安定性が違う |
オリジナル問題2(Linuxの設計)
Linuxのカーネル設計に関する次の記述のうち、正しいものはどれか。
- Linuxは全機能を中核に集約したモノリシック(一体型)のカーネル設計を採用しています
- Linuxは中核を最小限にしたマイクロカーネルで、機能の大半を外側に分けているとされる
- Linuxはカーネルを一切持たず、シェルだけで動くOSとして設計されているものとされている
- Linuxはハードウェアの一種であり、OSやカーネルとは無関係なものとされているものだ
解答は 1 ですよ。
Linuxは全機能を中核に集約したモノリシック(一体型)ですね。「Linuxはマイクロカーネル」は代表的なひっかけです。
選択肢2の「マイクロカーネル」、選択肢3の「カーネルを持たない」、選択肢4の「ハードウェア」はどれも誤りですよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✓ | Linuxはモノリシック |
| 2 | ✗ | マイクロカーネルではない |
| 3 | ✗ | カーネルが中核にある |
| 4 | ✗ | LinuxはOS(ソフトウェア) |
オリジナル問題3(OSの構成)
OSの構成に関する次の記述のうち、正しいものはどれか。
- OSとはカーネルのことだけを指し、シェルやユーティリティは含まないものとされているのだ
- OSはハードウェアそのものを指す言葉で、ソフトウェアはまったく含まないものとされている
- OSはカーネルを除いたシェルだけを指し、資源の管理は行わないものとされているものだ
- OSはカーネル・シェル・ユーティリティの3層からなり、カーネルはその中核を担っている
解答は 4 ですよ。
OSはカーネル・シェル・ユーティリティの3層からなり、カーネルはその中核を担いますね。「OS=カーネルだけ」ではありません。
選択肢1の「カーネルだけ」、選択肢2の「ハードウェアそのもの」、選択肢3の「シェルだけ」はどれも誤りですよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | シェル・ユーティリティも含む |
| 2 | ✗ | OSはソフトウェア |
| 3 | ✗ | カーネルが中核で資源を管理する |
| 4 | ✓ | 3層からなりカーネルが中核 |
まとめ
押さえどころ
- 🔴 カーネル設計3種 = モノリシック(一体型・高性能・Linux)/マイクロカーネル(最小核・安定)/ハイブリッド(中間・Windows・macOS)。
- 🔴 Linuxはモノリシック = 全機能を中核に集約した一体型。「マイクロカーネル」は誤り。
- 🟡 OSは3層 = カーネル(中核)+シェル(対話窓口)+ユーティリティ(補助)。カーネルだけではない。
次に学ぶ
執筆: SikakuQuest編集部