Metodo IDmaChannel::AllocateBuffer (portcls.h)

Il metodo AllocateBuffer alloca un buffer comune a cui è possibile accedere dal driver di porta e dall'hardware DMA.

Sintassi

NTSTATUS AllocateBuffer(
  ULONG             BufferSize,
  PPHYSICAL_ADDRESS PhysicalAddressConstraint
);

Parametri

BufferSize

Specifica le dimensioni in byte del buffer da allocare.

PhysicalAddressConstraint

Specifica un vincolo facoltativo da inserire nell'indirizzo fisico del buffer. Se questo parametro non è NULL, solo i bit impostati nell'indirizzo del vincolo variano dall'inizio alla fine del buffer. Ad esempio, per richiedere un buffer che non supera un limite di 64 kilobyte, specificare il vincolo di indirizzo fisico 0x000000000000FFFF.

Valore restituito

Questo metodo restituisce NTSTATUS. AllocateBuffer restituisce STATUS_SUCCESS se la chiamata ha esito positivo. In caso contrario, il metodo restituisce un codice di errore appropriato.

Commenti

Questo metodo deve essere chiamato una sola volta dopo la creazione dell'oggetto canale DMA, a meno che il buffer allocato in precedenza non venga prima liberato chiamando FreeBuffer.

Requisiti

Requisito Valore
Intestazione portcls.h
IRQL PASSIVE_LEVEL

Vedi anche

IDmaChannel