共用方式為


AtaPortRequestSynchronizedRoutine 函式 (irb.h)

迷你埠驅動程式會使用 AtaPortRequestSynchronizedRoutine 例程來要求與中斷服務例程 (ISR) 同步處理。

附注 ATA 埠驅動程式和 ATA 迷你埠驅動程式模型未來可能會改變或無法使用。 相反地,我們建議使用 Storport 驅動程式Storport miniport 驅動程式模型。
 

語法

BOOLEAN AtaPortRequestSynchronizedRoutine(
  [in] PVOID      ChannelExtension,
       IDE_HW_DPC CallBackRoutine
);

參數

[in] ChannelExtension

通道延伸模組的指標。

CallBackRoutine

要呼叫之例程的指標。

傳回值

沒有

言論

此例程通常由小型埠驅動程式使用,這些驅動程式會將 IDE_CHANNEL_CONFIGURATION 結構 SyncWithIsr 成員設定為 FALSE。 當 SyncWithIsr 設為 FALSE時,迷你埠驅動程式應該使用 AtaPortRequestSynchronizedRoutine 例程,以確保同步存取 ISR 中修改的數據結構。

通道延伸模組的指標,儲存在 ChannelExtension 會在呼叫時傳遞至背景工作例程。

當埠驅動程式呼叫由 SynchronizedRoutine所指向的例程時,它會將指標傳遞至儲存在 channelExtension channelExtension中的通道延伸模組指標。

SynchronizedRoutine 函式指標會在 Irb.h 宣告,如下所示:

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

要求

要求 價值
目標平臺 桌面
標頭 irb.h (包括 Ata.h、Irb.h)

另請參閱

AtaPortControllerSyncRoutine