0

(マイクロ) カーネルのオーバーヘッドとは何ですか? また、マイクロカーネルのサイクルを増加させるコンポーネントは何ですか? 情報源は役に立ちます。

4

2 に答える 2

3

マイクロカーネルは、ほとんどの OS レベルのサービス (ドライバー、ファイル システム、ネットワーキングなど) を特権カーネル モードから削除し、それらを専用のユーザー レベル アプリケーションに配置することで、カーネルをより安全/フェイル セーフにするよう努めています。マイクロカーネル自体は、これらのアプリケーションを開始して通信するためのメカニズムのみを提供します。

このアプローチの利点は、ユーザー アプリケーションがハードウェア レベルの分離 (アドレス空間) を利用するため、ドライバーがクラッシュしてもシステム全体が停止しないことです。ここまで宣伝。

ただし、固有の問題があります。従来の (モノリシック) カーネルでは、すべてのコンポーネントが同じ特権アドレス空間で実行され、呼び出しなど、ファイル システム機能は単純な関数呼び出しです。マイクロカーネルベースのシステムでは、これらの呼び出しはカーネルが提供するメカニズムを介した通信関係になるため、そのような呼び出しのコストは数十サイクルから数百サイクルに上昇します。

これが、マイクロカーネル システムが従来のオペレーティング システムよりも遅いと噂されている理由であり、マイクロカーネルの実装者がカーネルが提供する通信メカニズムを可能な限り高速にすることに非常に独特である理由です。

于 2013-10-09T10:49:46.143 に答える
2

これをチェックしたかどうかわかりませんが、ここにあります。

于 2013-08-11T19:38:20.220 に答える