Metodo IDmaChannelSlave::Start (portcls.h)
Il metodo Start avvia un oggetto DMA subordinato.
Sintassi
NTSTATUS Start(
ULONG MapSize,
BOOLEAN WriteToDevice
);
Parametri
MapSize
Specifica il numero di byte del buffer allocato che devono essere mappati. Le dimensioni della mappa non devono superare le dimensioni del buffer allocato nella chiamata a IDmaChannel::AllocateBuffer.
WriteToDevice
Specifica la direzione dello spostamento dei dati. Se TRUE, i dati devono essere spostati dal buffer al dispositivo. Se FALSE, i dati devono essere spostati dal dispositivo al buffer.
Valore restituito
Questo metodo restituisce NTSTATUS. Restituisce STATUS_SUCCESS se la chiamata ha esito positivo. In caso contrario, il metodo restituisce un codice di errore appropriato. Se il chiamante tenta di avviare un canale già avviato, il metodo restituisce immediatamente con il codice di errore STATUS_UNSUCCESSFUL.
Commenti
Nota
Microsoft supporta un ambiente diversificato e inclusivo. Questo articolo contiene riferimenti alla terminologia che la guida allo stile Microsoft per la comunicazione senza pregiudizi riconosce come esclusioni. La parola o la frase viene usata in questo articolo per la coerenza perché attualmente viene visualizzata nel software. Quando il software viene aggiornato per rimuovere la lingua, questo articolo verrà aggiornato in allineamento.
Il metodo configura prima i registri mappa per eseguire il mapping dei primi byte MapSize del buffer allocato per l'oggetto adapter. Successivamente, il metodo avvia un trasferimento DMA del numero di byte specificati in MapSize.
Per altre informazioni su questo metodo, vedere IDmaChannel::BufferSize e IDmaChannelSlave::ReadCounter.
Requisiti
Requisito | Valore |
---|---|
Intestazione | portcls.h |
IRQL | PASSIVE_LEVEL |