AtaPortRequestSynchronizedRoutine 関数 (irb.h)
AtaPortRequestSynchronizedRoutine ルーチンは、割り込みサービス ルーチン (ISR) との同期を要求するためにミニポート ドライバーによって使用されます。
メモ ATA ポート ドライバーと ATA ミニポート ドライバー モデルは、今後変更または使用できない可能性があります。 代わりに、 Storport ドライバー と Storport ミニポート ドライバー モデルを使用することをお勧めします。
構文
BOOLEAN AtaPortRequestSynchronizedRoutine(
[in] PVOID ChannelExtension,
IDE_HW_DPC CallBackRoutine
);
パラメーター
[in] ChannelExtension
チャネル拡張機能へのポインター。
CallBackRoutine
呼び出すルーチンへのポインター。
戻り値
なし
解説
通常、このルーチンは、IDE_CHANNEL_CONFIGURATION構造体の SyncWithIsr メンバーを FALSE に設定するミニポート ドライバーによって使用されます。 SyncWithIsr が FALSE に設定されている場合、ミニポート ドライバーは AtaPortRequestSynchronizedRoutine ルーチンを使用して、ISR で変更されたデータ構造への同期されたアクセスを確保する必要があります。
ChannelExtension に格納されているチャネル拡張機能へのポインターは、呼び出されるとワーカー ルーチンに渡されます。
ポート ドライバーは、 SynchronizedRoutine によって指されているルーチンを呼び出すと、 ChannelExtension に格納されているチャネル拡張機能へのポインターを渡します。
SynchronizedRoutine 関数ポインターは、次のように Irb.h で宣言されます。
typedef
VOID
(*IDE_HW_DPC) (
IN PVOID ChannelExtension
);
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | irb.h (Ata.h、Irb.h を含む) |