カーネルはオペレーティングシステムのコアコンポーネントであり、コンピューターの物理ハードウェアとその上で実行されているプロセスの間のメインインターフェイスとして機能します。 カーネルは、CPU、メモリ、ディスクI / O、およびネットワーキングへのアクセスを提供することにより、複数のアプリケーションがハードウェアリソースを共有できるようにします。

コンピューターが一連のレイヤーで構成されていると想像してください。最も内側のレイヤーはハードウェアであり、最も外側のレイヤーはコンピューター上で実行されているソフトウェアアプリケーションです。 この例えでは、カーネルはハードウェアとアプリケーションの間に配置されます。これは、カーネルがハードウェアのリソースの管理とソフトウェアプログラムの実行だけでなく、これらのレイヤー間の相互作用の監視も担当するためです。

最近のコンピュータは、メモリをカーネルスペースユーザースペースに分割します。 ユーザースペースはアプリケーションソフトウェアが実行される場所であり、カーネルスペースは、メモリ割り当てやプロセス管理など、コンピューターの実行に必要な舞台裏の作業専用です。 カーネルとユーザースペースがこのように分離されているため、カーネルによって行われた作業は通常、ユーザーには表示されません。