AtaPortRequestSynchronizedRoutine-Funktion (irb.h)
Die AtaPortRequestSynchronizedRoutine-Routine wird vom Miniporttreiber verwendet, um die Synchronisierung mit der Interruptdienstroutine (ISR) anzufordern.
Syntax
BOOLEAN AtaPortRequestSynchronizedRoutine(
[in] PVOID ChannelExtension,
IDE_HW_DPC CallBackRoutine
);
Parameter
[in] ChannelExtension
Ein Zeiger auf die Kanalerweiterung.
CallBackRoutine
Ein Zeiger auf die zu aufrufende Routine.
Rückgabewert
Keine
Bemerkungen
Diese Routine wird in der Regel von Miniporttreibern verwendet, die das SyncWithIsr-Element der IDE_CHANNEL_CONFIGURATION-Struktur auf FALSE festlegen. Wenn SyncWithIsr auf FALSE festgelegt ist, sollte der Miniporttreiber die AtaPortRequestSynchronizedRoutine-Routine verwenden, um den synchronisierten Zugriff auf Datenstrukturen sicherzustellen, die in der ISR geändert werden.
Der In ChannelExtension gespeicherte Zeiger auf die Kanalerweiterung wird beim Aufruf an die Workerroutine übergeben.
Wenn der Porttreiber die Routine aufruft, auf die von SynchronizedRoutine verwiesen wird, übergibt er den Zeiger an die Kanalerweiterung, die in ChannelExtension gespeichert ist.
Der SynchronizedRoutine-Funktionszeiger wird in Irb.h wie folgt deklariert:
typedef
VOID
(*IDE_HW_DPC) (
IN PVOID ChannelExtension
);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | irb.h (include Ata.h, Irb.h) |