目次:
定義-カーネルとはどういう意味ですか?
カーネルは、オペレーティングシステムのコアコンポーネントです。 プロセス間通信とシステムコールを使用して、アプリケーションとハードウェアレベルで実行されるデータ処理との間のブリッジとして機能します。
オペレーティングシステムがメモリに読み込まれると、カーネルが最初に読み込まれ、オペレーティングシステムが再びシャットダウンされるまでメモリに残ります。 カーネルは、ディスク管理、タスク管理、メモリ管理などの低レベルのタスクを担当します。
Techopediaがカーネルを説明
コンピューターカーネルは、3つの主要なコンピューターハードウェアコンポーネント間をインターフェイスし、アプリケーション/ユーザーインターフェイスとCPU、メモリ、その他のハードウェアI / Oデバイスとの間のサービスを提供します。
カーネルはコンピューターリソースを提供および管理し、他のプログラムがこれらのリソースを実行および使用できるようにします。 カーネルはまた、アプリケーションのメモリアドレス空間をセットアップし、アプリケーションコードを含むファイルをメモリにロードし、プログラムの実行スタックをセットアップし、実行のためにプログラム内の特定の場所に分岐します。
カーネルは以下を担当します。
- アプリケーション実行のプロセス管理
- メモリ管理、割り当て、I / O
- デバイスドライバーを使用したデバイス管理
- カーネルサービスの実行に不可欠なシステムコール制御
カーネルには5つのタイプがあります。
- モノリシックカーネル:すべてのオペレーティングシステムサービスは、モノリシックカーネルのメインカーネルスレッドに沿って実行されます。モノリシックカーネルも同じメモリ領域に存在し、強力で豊富なハードウェアアクセスを提供します。
- マイクロカーネル:プリミティブまたはシステムコールを使用して、マルチタスク、メモリ管理、プロセス間通信などの最小限のOSサービスを実装するハードウェア上の単純な抽象化を定義します。
- ハイブリッドカーネル:カーネルコードがユーザースペースでサーバーとして実行される従来のマイクロカーネルのパフォーマンスオーバーヘッドを削減するために、カーネルスペースでいくつかのサービスを実行します。
- ナノカーネル:割り込みコントローラーやタイマーなどの基本的なサービスをデバイスドライバーに委任することで、メモリ要件を簡素化します。
- Exoカーネル:プロセッサ時間やディスクブロックなどの物理ハードウェアリソースを他のプログラムに割り当てます。これらのプログラムは、カーネルを使用してオペレーティングシステムの抽象化をシミュレートするライブラリオペレーティングシステムにリンクできます。




