IDmaChannelSlave::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 和 IDmaChannelSlave::ReadCounter。
要求
要求 | 價值 |
---|---|
標頭 | portcls.h |
IRQL | PASSIVE_LEVEL |