「カーネル」の定義と位置付けが今ひとつ曖昧なのですが、
どなたかご指導お願いします。

A 回答 (1件)

「カーネル」はオペレーティングシステムの中核部分を示す言葉ですが、ここ15年ほどの間に2つの意味ができています。



1.古典的なOSにおける定義
オペレーシングシステムのからコマンドインタフェースを取り除いた部分。
主に,ファイルシステム、プロセス管理、ユーザ管理、通信、デバイス(CPUとメモリを含む)/リソース(システム設定を含む)管理、同期/タイマを指します。

2.新しいOSにおける定義
古典的なカーネルの定義から上位へのシステムインタフェース(システムコール/API)と下位へのシステムインタフェース(デバイス管理部分)を取り除いて独立性を持たせたもの。
マイクロカーネル、カーネライズドカーネルと呼ばれる。
上位インタフェース、下位インタフェースは交換可能であり、一つのマイクロカーネルで多くのオペレーティングシステムのエミュレーションを可能とする。

例えばlinuxは古典的なカーネルを持つOSでそのカーネル部分の多くが(親に当たる)minixカーネルからの流用です。
また、Microsoft Windowsも古典的なカーネルを持ちます。

対してMacOSはMachのマイクロカーネルの流れを汲む(直接的にはMachマイクロカーネルで動作していたNextStepの流れを汲む)カーネライズドカーネルを持ちます。
    • good
    • 0
この回答へのお礼

カーネルの範囲、APIとの違いなど、イメージとして良く分かりました。
職業柄、詳細部分への関心も募りますが、それでも今までもやもやしてたものが、すっきりとしました。ありがとうございました。

お礼日時:2001/04/05 11:29

このQ&Aに関連する最新のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ