Поделиться через


Метод IDmaChannelSlave::Start (portcls.h)

Метод Start запускает подчиненный объект DMA.

Синтаксис

NTSTATUS Start(
  ULONG   MapSize,
  BOOLEAN WriteToDevice
);

Параметры

MapSize

Указывает количество байтов выделенного буфера, которые необходимо сопоставить. Размер карты не должен превышать размер буфера, выделенного при вызове IDmaChannel::AllocateBuffer.

WriteToDevice

Задает направление перемещения данных. Если задано значение TRUE, данные должны быть перемещены из буфера на устройство. Если значение FALSE, данные должны быть перемещены с устройства в буфер.

Возвращаемое значение

Этот метод возвращает NTSTATUS. Он возвращает STATUS_SUCCESS, если вызов был выполнен успешно. В противном случае метод возвращает соответствующий код ошибки. Если вызывающий объект пытается запустить уже запущенный канал, метод немедленно возвращается с кодом ошибки STATUS_UNSUCCESSFUL.

Комментарии

Примечание

Корпорация Майкрософт поддерживает разнообразную и инклюзивную среду. В этой статье содержатся ссылки на терминологию, которую руководство Майкрософт по общениям без предвзятости распознает как исключающую. Слово или фраза используется в этой статье для обеспечения согласованности, так как они в настоящее время отображаются в программном обеспечении. При обновлении программного обеспечения для удаления языка эта статья будет обновлена, чтобы она была в соответствии.

Метод сначала настраивает регистры карты для сопоставления первых байтов MapSize выделенного буфера для объекта адаптера. Затем метод запускает передачу DMA числа байтов, указанного в MapSize.

Дополнительные сведения об этом методе см. в разделах IDmaChannel::BufferSize и IDmaChannelSlave::ReadCounter.

Требования

Требование Значение
Заголовок portcls.h
IRQL PASSIVE_LEVEL

См. также раздел

Интерфейс IDmaChannelSlave