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 に設定するミニポート ドライバーによって使用されますSyncWithIsrFALSE に設定されている場合、ミニポート ドライバーは AtaPortRequestSynchronizedRoutine ルーチンを使用して、ISR で変更されたデータ構造への同期されたアクセスを確保する必要があります。

ChannelExtension に格納されているチャネル拡張機能へのポインターは、呼び出されるとワーカー ルーチンに渡されます。

ポート ドライバーは、 SynchronizedRoutine によって指されているルーチンを呼び出すと、 ChannelExtension に格納されているチャネル拡張機能へのポインターを渡します。

SynchronizedRoutine 関数ポインターは、次のように Irb.h で宣言されます。

typedef
VOID
(*IDE_HW_DPC) (
  IN PVOID ChannelExtension
  );

要件

要件
対象プラットフォーム デスクトップ
Header irb.h (Ata.h、Irb.h を含む)

こちらもご覧ください

AtaPortControllerSyncRoutine