Funzione AtaPortGetUnCachedExtension (irb.h)

La routine AtaPortGetUncachedExtension alloca un buffer comune non gestito condiviso dalla CPU e dal dispositivo.

Nota I modelli di driver di porta ATA e ATA miniport possono essere modificati o non disponibili in futuro. È invece consigliabile usare i modelli di driver Storport e Miniport Storport.
 

Sintassi

PVOID AtaPortGetUnCachedExtension(
  [in] PVOID ChannelExtension,
  [in] ULONG UncachedExtensionSize,
  [in] ULONG IrbExtensionSize
);

Parametri

[in] ChannelExtension

Puntatore all'estensione del canale.

[in] UncachedExtensionSize

Specifica la lunghezza, in byte, del buffer comune non memorizzato. Impostare questo parametro su 0 se il driver miniport non richiede un'estensione non memorizzata.

[in] IrbExtensionSize

Specifica le dimensioni, in byte, richieste dal driver miniport per la relativa risorsa di archiviazione per richiesta, se presente.

Impostare questo parametro su 0 se il driver miniport non mantiene le informazioni per IRB per cui richiede l'archiviazione.

Valore restituito

AtaPortGetUncachedExtension restituisce un puntatore di indirizzi virtuale all'estensione non memorizzata. Se non è in grado di allocare la memoria richiesta o se la memoria è stata allocata in precedenza, restituisce NULL.

Commenti

Il driver miniport può usare le estensioni IRB come archiviazione per informazioni specifiche del driver determinate dal driver, ad esempio i dati necessari per elaborare una richiesta specifica.

Il driver della porta non inizializza le estensioni IRB, ma imposta un puntatore a un'estensione in ogni IRB che invia al driver miniport.

L'hardware HBA può accedere in modo sicuro a un'estensione IRB.

Il driver miniport non deve chiamare AtaPortGetUncachedExtension da qualsiasi routine diversa dalla routine IdeHwControl e solo quando elabora un'azione di controllo di StartChannel. Le chiamate di AtaPortGetUncachedExtension da altre routine di driver miniport comportano un'operazione errata o anche un errore di sistema. Il driver di porta libera automaticamente l'estensione non crittografata dopo che richiama IdeHwControl con l'azione di controllo StopChannel .

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione irb.h (include Ata.h, Irb.h)
Libreria Ataport.lib; Pciidex.lib

Vedi anche

IdeHwControl