Функция VideoPortAllocatePool (video.h)

Функция VideoPortAllocatePool выделяет блок памяти пула, вставляя тег, предоставленный вызывающей стороны, в начале памяти.

Синтаксис

VIDEOPORT_API PVOID VideoPortAllocatePool(
  [in] IN PVOID        HwDeviceExtension,
  [in] IN VP_POOL_TYPE PoolType,
  [in] IN SIZE_T       NumberOfBytes,
  [in] IN ULONG        Tag
);

Параметры

[in] HwDeviceExtension

Указатель на расширение устройства драйвера мини-порта.

[in] PoolType

Указывает тип пула памяти для выделения. Для этого параметра можно задать одно из следующих значений:

Значение Значение
VpNonPagedPool Пул используется из непагрегированного объема памяти.
VpPagedPool Пул используется из выстраивной памяти.
VpNonPagedPoolCacheAligned Пул используется из памяти, выровненной в кэше, не погромощив.
VpPagedPoolCacheAligned Пул используется из выровненной по кэшу памяти с выстраиваемой памятью.

[in] NumberOfBytes

Указывает количество байтов памяти для выделения.

[in] Tag

Указывает четырехбайтовый тег выделения, состоящий из четырех символов ASCII, который однозначно идентифицирует драйвер, который выделяет память. Строка тега разделена одними кавычками.

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

При успешном выделении пула памяти VideoPortAllocatePool возвращает адрес выделенного пула памяти. В противном случае эта функция возвращает значение NULL.

Комментарии

VideoPortAllocatePool предназначен для замены VideoPortAllocateBuffer, который является устаревшим.

Строка тега должна быть указана в обратном порядке байтов. Рекомендуется, чтобы первая буква в строке (до ее изменения) была "D", чтобы обозначить драйвер дисплея; остальные три байта должны указывать на имя драйвера. Например, строка тега "zyxD" отображается как Dxyz, если пул является дампом. Тег отображается в любом аварийном дампе системы, который происходит.

Вызывающие объект VideoPortAllocatePool могут выполняться в irQL = DISPATCH_LEVEL только в том случае, если запрошенный Тип пула является одним из типов VpNonPagedXxx . В противном случае вызывающие операторы должны выполняться на DISPATCH_LEVEL IRQL < .

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows XP и более поздних версиях операционных систем Windows.
Целевая платформа Персональный компьютер
Верхняя часть video.h (включая Video.h)
Библиотека Videoprt.lib
DLL Videoprt.sys
IRQL См. раздел "Примечания".

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

VideoPortFreePool