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


Функция 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 возвращает один из следующих кодов состояния:

Возвращаемый код Описание
STOR_STATUS_NOT_IMPLEMENTED
Эта функция не реализована в активной операционной системе.
STOR_STATUS_SUCCESS
Операция прошла успешно.
STOR_STATUS_INSUFFICIENT_RESOURCES
Операция не удалось выделить запрошенную память из-за нехватки ресурсов.

Замечания

Если запрос завершается ошибкой, буфера буфера будет задано значение NULL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 7.
целевая платформа Всеобщий
заголовка storport.h (include Storport.h)
IRQL <=DISPATCH_LEVEL
правил соответствия DDI storPortIrql(storport)