IDmaChannelSysteme::Start 方法 (portcls.h)
Start 方法會啟動次級 DMA 物件。
語法
NTSTATUS Start(
ULONG MapSize,
BOOLEAN WriteToDevice
);
參數
MapSize
指定要對應的已配置緩衝區位元組數目。 對應大小不得超過呼叫 IDmaChannel::AllocateBuffer 中所配置的緩衝區大小。
WriteToDevice
指定數據移動的方向。 如果為 TRUE,數據會從緩衝區移至裝置。 如果為 FALSE,數據會從裝置移至緩衝區。
傳回值
這個方法會傳回NTSTATUS。 如果呼叫成功,它會傳回STATUS_SUCCESS。 否則,方法會傳回適當的錯誤碼。 如果呼叫端嘗試啟動已啟動的通道,此方法會立即傳回錯誤碼STATUS_UNSUCCESSFUL。
備註
注意
Microsoft 支援多元且包容性的環境。 本文包含 Microsoft 適用於無偏差通訊 的術語參考,可辨識為排除。 本文中會使用單字或片語進行一致性,因為它目前會出現在軟體中。 當軟體更新為移除語言時,本文將會更新為一致。
方法會先設定對應緩存器,以對應配接器物件配置緩衝區的第一個 MapSize 位元組。 接下來,方法會啟動 MapSize 中指定的位元元組數目的 DMA 傳輸。
如需此方法的詳細資訊,請參閱 IDmaChannel::BufferSize 和 IDmaChannelCounte::ReadCounter。
規格需求
需求 | 值 |
---|---|
標頭 | portcls.h |
IRQL | PASSIVE_LEVEL |