Метод IDmaChannel::AllocateBuffer (portcls.h)
Метод AllocateBuffer выделяет общий буфер, к которому могут обращаться драйвер порта и оборудование DMA.
Синтаксис
NTSTATUS AllocateBuffer(
ULONG BufferSize,
PPHYSICAL_ADDRESS PhysicalAddressConstraint
);
Параметры
BufferSize
Задает размер выделенного буфера в байтах.
PhysicalAddressConstraint
Задает необязательное ограничение для физического адреса буфера. Если этот параметр не равен NULL, то только биты, заданные в адресе ограничения, будут отличаться от начала до конца буфера. Например, чтобы запросить буфер, который не пересекает границу в 64 килобайта, укажите физическое ограничение адреса 0x000000000000FFFF.
Возвращаемое значение
Этот метод возвращает NTSTATUS. Функция AllocateBuffer возвращает STATUS_SUCCESS, если вызов был успешным. В противном случае метод возвращает соответствующий код ошибки.
Комментарии
Этот метод должен вызываться только один раз после создания объекта канала DMA, если только выделенный ранее буфер не будет освобожден путем вызова FreeBuffer.
Требования
Требование | Значение |
---|---|
Заголовок | portcls.h |
IRQL | PASSIVE_LEVEL |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по