Funzione IoCreateController (ntddk.h)
La routine IoCreateController alloca la memoria per e inizializza un oggetto controller con un'estensione del controller di dimensioni determinate dal driver.
Sintassi
PCONTROLLER_OBJECT IoCreateController(
[in] ULONG Size
);
Parametri
[in] Size
Specifica il numero di byte da allocare per l'estensione del controller.
Valore restituito
IoCreateController restituisce un puntatore all'oggetto controller o un puntatore NULL se non è stato possibile allocare memoria per l'estensione del dispositivo richiesta.
Commenti
Un oggetto controller rappresenta in genere un controller di dispositivo fisico con dispositivi collegati in cui un singolo driver esegue richieste di I/O. L'estensione del controller viene allocata da un pool non in pagine ed è garantita l'accessibilità da qualsiasi routine del driver e in un contesto di thread arbitrario.
L'oggetto controller viene usato per sincronizzare le operazioni di I/O con i dispositivi di destinazione per i quali le richieste di I/O possono essere inviate contemporaneamente a un singolo driver monolitico. Un driver può anche usare un oggetto controller per sincronizzare le operazioni tramite i canali del dispositivo.
Se IoCreateController restituisce NULL, l'avvio del dispositivo dovrebbe non riuscire.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 2000. |
Piattaforma di destinazione | Universale |
Intestazione | ntddk.h (include Ntddk.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDDIs(storport), IrqlIoPassive2(wdm), PowerIrpDDis(wdm) |