Функция StorPortAllocateContiguousMemorySpecifyCacheNode (storport.h)
Подпрограмма StorPortAllocateContiguousMemorySpecifyCacheNode выделяет ряд физически смежных некашированных непагированных памяти.
Синтаксис
ULONG StorPortAllocateContiguousMemorySpecifyCacheNode(
[in] PVOID HwDeviceExtension,
[in] SIZE_T NumberOfBytes,
[in] PHYSICAL_ADDRESS LowestAcceptableAddress,
[in] PHYSICAL_ADDRESS HighestAcceptableAddress,
[in, optional] PHYSICAL_ADDRESS BoundaryAddressMultiple,
[in] MEMORY_CACHING_TYPE CacheType,
[in] NODE_REQUIREMENT PreferredNode,
[out] PVOID *BufferPointer
);
Параметры
[in] HwDeviceExtension
Указатель на расширение аппаратного устройства для адаптера шины узла (HBA).
[in] NumberOfBytes
Количество выделенных байтов.
[in] LowestAcceptableAddress
Самый низкий физический адрес, допустимый для выделения. Например, если устройство может ссылаться только на физическую память в диапазоне от 8 МБ до 16 МБ, это значение будет иметь значение 0x800000 (8 МБ).
[in] HighestAcceptableAddress
Самый высокий физический адрес, допустимый для выделения. Например, если устройство может ссылаться только на физическую память ниже 16 МБ, это значение будет иметь значение 0xFFFFFF (16 МБ – 1).
[in, optional] BoundaryAddressMultiple
Физический адрес, который не должен пересекать это выделение.
[in] CacheType
Требуемый тип кэша для сопоставления.
[in] PreferredNode
Предпочтительный узел, из которого следует выделить, если страницы доступны на этом узле.
[out] BufferPointer
Переменная, получающая начальный адрес выделенного блока памяти. При возврате из этой подпрограммы, если эта переменная равна нулю, не удалось найти непрерывный диапазон для удовлетворения запроса. Если эта переменная не null, она содержит указатель (например, виртуальный адрес в неупакованной части системы) на выделенную физически связанную память.
Возвращаемое значение
Подпрограмма StorPortAllocateContiguousMemorySpecifyCacheNode возвращает один из следующих кодов состояния:
Возвращаемый код | Описание |
---|---|
|
Эта функция не реализована в активной операционной системе. |
|
Операция прошла успешно. |
|
Операция не удалось выделить запрошенную память из-за нехватки ресурсов. |
Замечания
Если запрос завершается ошибкой, буфера буфера будет задано значение NULL.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 7. |
целевая платформа | Всеобщий |
заголовка | storport.h (include Storport.h) |
IRQL | <=DISPATCH_LEVEL |
правил соответствия DDI | storPortIrql(storport) |