
カーネルの概念について本当に混乱しています。
カーネルはアプリケーションとハードウェアの間にあり、カーネルはアプリケーションから入力を受け取り、ハードウェアに処理の指示を送るということを知りました。
私の知る限り、Windows ではカーネルという単語は聞きません。
ここで疑問なのは、カーネルとは実際何なのかということです。
答え1
カーネルは、あなたが言う通りのものです。カーネルは、実行ファイルがハードウェアと通信できるようにします。簡単に言えば、ユーザーは高レベルのソフトウェア(たとえばGUIインターフェイス)と対話し、カーネルはCPUとデバイスへの要求を変換する役割を担っています(イメージソース):
カーネルはメモリ管理も担当し、すべてのデバイス(サウンドカード、グラフィックカード、キーボードなど)を処理し、プロセス管理を制御します。基本的に、カーネルははオペレーティングシステムです。それが「カーネル、OSの中核となります。
Windows を含むすべての OS にはカーネルがありますが、Windows の世界ではカーネルについてあまり語られません。なぜなら、カーネルについては何もできないからです。カーネルはクローズド ソースであるため、Microsoft 以外のだれも変更できません。そのため、コードにアクセスしたり、カーネルについて書いたりする人は少数です。しかし、カーネルは確かに存在します。現在の Windows カーネルは「NT カーネル」と呼ばれ、最近の (およびそれほど新しくない) Windows のバージョンはすべてカーネルに基づいています。
カーネルの詳細については、次のリンクを参照してください。