オペレーティングシステムコードのどの部分がカーネルに関連付けられていますか? [閉鎖]

オペレーティングシステムコードのどの部分がカーネルに関連付けられていますか? [閉鎖]

オペレーティングシステムコードのどの部分がカーネルに関連付けられていますか?

システム図は理解していますが、コーディング部分に課題があります。

ベストアンサー1

...「カーネル」部分(Linux/QNX/BSD、など...)

「関連性」が何を意味するのかを定義する必要があります。できる議論を試みるみんなコードは関連カーネルで:

  • カーネルがなく、何もないユーザー空間でも実行されません。
  • ユーザ空間アプリケーションがなければ、システムは本質的に役に立たない。

さらに、カーネルの種類に応じて、システムの他の部分はやや強い依存関係を持っています。

  • 完全(例えばLinux)は、通常、ドライバのようなものがカーネルに常駐する大規模なコードベースです。
  • 雑種(例:Windows)コンポーネントはカーネルスペースとユーザースペースに分けられます。
  • マイクロカーネル(例:QNX)は、ドライバがユーザースペース「アプリケーション」として実装されている比較的小さなコードベースです。

もちろん、これはカーネル自体を使用しない「ベアメタル」システムには適用されません。


要求に応じてLinuxカーネルをより深く掘り下げると、主要なサブシステムがあることがわかります。

各サブシステムには追加のサブシステムがあります(一部は上記の括弧内に表示されます)。

あなたの意見で提案されているように図を描くことはできますが、非常に複雑になります。

この記事を読んでみるのもいいと思います。Linuxカーネル分析「何が起こっているのかをよりよく理解するために。

おすすめ記事