Windows NT カーネルは、さまざまな Windows タスクがハードウェア抽象化層に安全にアクセスできるようにする Microsoft コンポーネントです。
一般的な 32 ビット シングルプロセッサ システムでは、カーネルはNTOSKRNL.EXEと呼ばれます。これは現在最も一般的なケースです。 32 ビット マルチプロセッサ SMP システムでは、名前はNTKRNLMP.EXEです。 PAE (物理アドレス拡張) システムでは、 Windows カーネル名はシングル プロセッサの場合はNTKRNLPA.EXE 、マルチプロセッサの場合はNTKRPAMP.EXEです。
Windows NT カーネルは、プリエンプティブ マルチタスクおよびマルチユーザータイプです。
- 強化されたマイクロカーネル[ 1 ]
- ハイブリッド[ 2 ] 。
この記事では、Windows Vista、Windows Server 2003、Windows XP、Windows 2000、および Windows NT について説明します。
ハードウェア層のさまざまなコンポーネント (ハードウェア抽象化層)
Windows カーネルは、ハードウェア コンポーネントにアクセスするためのオブジェクト マネージャーインターフェイスです。
Windows NT カーネルは、次の HAL ハードウェア コンポーネントに直接アクセスできる唯一の Windows NT コンポーネントです。
- DMA (ダイレクト メモリ アクセス)
- バスマッピング
- 時計とタイマー
- 割り込み管理
- 特権アーキテクチャ
入出力 (ディスクなど) および GDI グラフィカル インターフェイスの管理のために、HAL への直接アクセスを提供する他のコンポーネントがあります。これらは、WDM を尊重するカーネル モード ドライバー (KMD: カーネル モード ドライバー) です。モデル[ 3 ] (Windows ドライバー モデル)
オブジェクト マネージャーは Windowsレジストリにアクセスできます。

カーネルのチューニング
カーネルの設定が完了しました
- ブートスイッチによって異なります。ブート構成ファイルのboot.ini を参照してください。
- レジストリ経由 (セッション マネージャーおよびその他の基本的な Windows コンポーネントを参照)
歴史的
Windows Millennium、98、95、およびそれ以前のバージョンのカーネル
古いバージョンの Windows のカーネルでは、さまざまなコンポーネントがVxD (仮想デバイス ドライバー) 経由でハードウェア層に直接アクセスできました。
最も古い Windows カーネルは、協調的なマルチタスクとシングルユーザーでした。カーネル名は、Intel 80286マイクロプロセッサの場合はKRNL286.EXE 、 Intel 80386 、 Intel 80486などの場合はKRNL386.exeでした。このコンポーネントは、物理RAMを 2 つの独立した領域 (カーネル空間とユーザー空間) に仮想分割することがなかったため、真のカーネルではありませんでした。

NT カーネルの最初のバージョン
Windows NT カーネルの最初の正式リリースは 1993 年のバージョン 3.1 でした。カーネル設計者の 1 人は、以前 DEC 社の Windows NT システム設計に携わっていた David Cutler ( en :David Cutlerを参照) でした。
F. van Wensveen は、2 つのオペレーティング システムのカーネル間の次の共通点を指摘しています。
Windows Vista: カーネルを保護する PatchGuard
Windows の 64 ビット バージョン (XP、2003、Vista) にはPatchGuardコンポーネントがあり、その目的は、あらゆる形式の変更 (パッチなど) からカーネルを保護し、ルートキット(パッチ) の導入に対する Windows の脆弱性を軽減することです。裏口)。
このコンポーネントの導入は、ウイルス対策の発行元に問題を引き起こします。 Vista の現在の状態 (2007 年 1 月) では、 Microsoftが提供する API は、ウイルス対策会社の特定のニーズを満たすのに十分な機能を備えていません。

