Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция DxgkDdiSubmitCommand отправляет буфер DMA в одну из аппаратных единиц выполнения команд GPU.
Синтаксис
DXGKDDI_SUBMITCOMMAND DxgkddiSubmitcommand;
NTSTATUS DxgkddiSubmitcommand(
[in] IN_CONST_HANDLE hAdapter,
[in] IN_CONST_PDXGKARG_SUBMITCOMMAND pSubmitCommand
)
{...}
Параметры
[in] hAdapter
Дескриптор к блоку контекста, связанному с адаптером отображения. Ранее этот дескриптор отображался в dxgkrnl в выходном параметре MiniportDeviceContext функции DxgkDdiAddDevice .
[in] pSubmitCommand
Указатель на структуру DXGKARG_SUBMITCOMMAND , описывающую буфер DMA, который KMD отправляет в аппаратную единицу выполнения команд.
Возвращаемое значение
DxgkDdiSubmitCommand возвращает STATUS_SUCCESS после успешного завершения. Если драйвер возвращает код ошибки, операционная система вызывает ошибку системы. См. примечания.
Замечания
DxgkDdiSubmitCommand работает с адресациями физической памяти, а dxgkDdiSubmitCommandVirtual вызывается с виртуальной памятью.
Поскольку операции разбиения по страницам считаются системными операциями, они не связаны с определенным контекстом приложения или контекстом графики. Поэтому при отправке для операции разбиения по страницам функция DxgkDdiSubmitCommand вызывается с значением NULL, указанным в элементе hDevice структуры DXGKARG_SUBMITCOMMAND , на которую указывает параметр pSubmitCommand .
Однако если архитектура определенного оборудования и драйвера должна иметь устройство внутренне, драйвер должен внутренне создать устройство во время инициализации адаптера и хранить устройство внутри системы в качестве устройства по умолчанию для использования в операциях разбиения по страницам.
Драйвер может записать значение, указанное в элементе SubmissionFenceIdDXGKARG_SUBMITCOMMAND , в команду забора в буфере кольца. Дополнительные сведения о командах ограждения см. в .
Если драйвер возвращает код ошибки, Dxgkrnl приводит к возникновению системной ошибки. В файле аварийного дампа ошибка отмечается сообщением BugCheck 0x119, которое будет иметь следующие четыре параметра.
- 0x2 (определяет причину ошибки)
- Код ошибки NTSTATUS, возвращенный из вызова драйвера сбоем
- Указатель на структуру DXGKARG_SUBMITCOMMAND
- Указатель на внутреннюю структуру данных планировщика
DxgkDdiSubmitCommand должен быть недоступен, так как он выполняется в IRQL = DISPATCH_LEVEL.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista |
целевая платформа | Настольный |
заголовка | d3dkmddi.h |
IRQL | DISPATCH_LEVEL |