注
ATA ポート ドライバーと ATA ミニポート ドライバー モデルは、今後変更または使用できない可能性があります。 代わりに、Storport ドライバー を使用し、Storport ミニポート ドライバー モデル することをお勧めします。
Microsoft Windows NT 4.0 では、IDE バスに関連付けられているポート/ミニポート ドライバー ペアは、SCSI ミニポート ドライバー atapi.sysSCSI ポート ドライバーにリンクされている 、scsiport.sysです。
Microsoft Windows 2000 および Windows XP では、IDE ポート ドライバー atapi.sys は、 scsiport.sysや他のラッパー ドライバーにリンクしなくなった独立したドライバーです。
Windows 2000 および Windows XP の IDE ドライバー モデルには、atapi.sys(ポート ドライバー)、 pciidex.sys (コントローラー ドライバー)、 pciide.sys (汎用 コントローラー ミニドライバー) の 3 つのシステム提供ドライバーがあります。 次の図に、3 つのドライバーをすべて示します。
図の下部から、スタック内の各ドライバーについて次に示します。
Windows 2000 および Windows XP の IDE スタックは、PCI バス ドライバー上に階層化されています。
Microsoft は、ほとんどの IDE コントローラーを管理できるネイティブ IDE コントローラー ドライバーとミニドライバー のペアを提供しています。 IDE コントローラー ドライバー pciidex.sysは、ドライバー ペアのハードウェアに依存しない側面を処理し、ミニドライバー (pciide.sys) はハードウェアに依存する側面を処理します。
ベンダーは、ネイティブ ミニドライバー、 pciide.sysを使用する代わりに、独自の IDE コントローラー ミニドライバーを提供することを選択できます。 ベンダーのミニドライバーは、Microsoft が提供するコントローラー ドライバーと連携して、コントローラー とミニドライバーのペアを形成する必要があります。 ネイティブの Microsoft コントローラー ドライバーで適切に動作するためにベンダーのミニドライバーが満たす必要がある要件については、「ベンダー が提供する IDE コントローラー ミニドライバーの要件」を参照してください。
Microsoft では、IDE ポート ドライバー atapi.sys ( チャネル ドライバーとも呼ばれます) を提供しています。これは、各 IDE チャネルの機能デバイス オブジェクト (FDO) を作成および管理するためです。 ポート ドライバーは、IDE コントローラーとミニドライバーのペアの上に階層化されています。 記憶域クラス ドライバーから受け取る SCSI 要求ブロック (SRB) を、基になる IDE コントローラーで必要な形式に変換します。 特に、SRB 内に含まれるコマンド記述子ブロック (CDB) は、ATAPI デバイスと SCSI デバイスで異なる方法で定義されます。 ポート ドライバーは、CDB を再パッケージ化して ATAPI トランスポート プロトコルと互換性を持たせ、IDE バスの特殊性から上位レベルのドライバーを保護します。
Microsoft では、すべての CD-ROM (タイプ 5 SCSI) デバイスを管理できる CD-ROM クラス ドライバーを提供しています。
前の図のドライバー スタックに対応するデバイス オブジェクト スタックの図を表示するには、「 PCI IDE コントローラーのデバイス オブジェクトの例」を参照してください。
Windows Vista 以降のバージョンのオペレーティング システムでは、IDE スタックは ATA ポート ドライバーによって管理されます。