Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La routine StorPortAllocateContiguousMemorySpecifyCacheNode alloca un intervallo di memoria fisicamente contigua non memorizzata in pagine.
Sintassi
ULONG StorPortAllocateContiguousMemorySpecifyCacheNode(
[in] PVOID HwDeviceExtension,
[in] SIZE_T NumberOfBytes,
[in] PHYSICAL_ADDRESS LowestAcceptableAddress,
[in] PHYSICAL_ADDRESS HighestAcceptableAddress,
[in, optional] PHYSICAL_ADDRESS BoundaryAddressMultiple,
[in] MEMORY_CACHING_TYPE CacheType,
[in] NODE_REQUIREMENT PreferredNode,
[out] PVOID *BufferPointer
);
Parametri
[in] HwDeviceExtension
Puntatore all'estensione del dispositivo hardware per la scheda bus host (HBA).
[in] NumberOfBytes
Numero di byte da allocare.
[in] LowestAcceptableAddress
Indirizzo fisico più basso valido per l'allocazione. Ad esempio, se il dispositivo può fare riferimento solo alla memoria fisica nell'intervallo da 8 MB a 16 MB, questo valore verrà impostato su 0x800000 (8 MB).
[in] HighestAcceptableAddress
Indirizzo fisico più alto valido per l'allocazione. Ad esempio, se il dispositivo può fare riferimento solo alla memoria fisica inferiore a 16 MB, questo valore verrà impostato su 0xFFFFFF (16 MB - 1).
[in, optional] BoundaryAddressMultiple
Indirizzo fisico multiplo che questa allocazione non deve attraversare.
[in] CacheType
Tipo di cache desiderato per il mapping.
[in] PreferredNode
Nodo preferito da cui deve essere effettuata l'allocazione se le pagine sono disponibili in tale nodo.
[out] BufferPointer
Variabile che riceve l'indirizzo iniziale del blocco di memoria allocato. Al termine della restituzione da questa routine, se questa variabile è zero, non è stato possibile trovare un intervallo contiguo per soddisfare la richiesta. Se questa variabile non è NULL, contiene un puntatore (ad esempio, un indirizzo virtuale nella parte non di paging del sistema) alla memoria fisicamente contigua allocata.
Valore restituito
La routine StorPortAllocateContiguousMemorySpecifyCacheNode restituisce uno dei codici di stato seguenti:
| Codice restituito | Descrizione |
|---|---|
|
Questa funzione non viene implementata nel sistema operativo attivo. |
|
Operazione riuscita. |
|
L'operazione non è riuscita ad allocare la memoria richiesta a causa di risorse insufficienti. |
Osservazioni
Se la richiesta non riesce, BufferPointer verrà impostata su NULL.
Fabbisogno
| Requisito | Valore |
|---|---|
| client minimo supportato | Disponibile a partire da Windows 7. |
| piattaforma di destinazione | Universale |
| intestazione | storport.h (include Storport.h) |
| IRQL | <=DISPATCH_LEVEL |
| regole di conformità DDI | storPortIrql(storport) |