共用方式為


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 MB 到 16 MB 範圍內的物理記憶體,此值會設定為 0x800000 (8 MB) 。

[in] HighestAcceptableAddress

配置有效的最高實體位址。 例如,如果裝置只能參考低於 16 MB 的實體記憶體,此值會設定為 0xFFFFFF (16 MB - 1) 。

[in, optional] BoundaryAddressMultiple

此配置不可跨越的實體位址倍數。

[in] CacheType

對應的所需快取類型。

[in] PreferredNode

如果該節點上有頁面可用,則應該從該節點進行配置的慣用節點。

[out] BufferPointer

接收已配置記憶體區塊起始位址的變數。 從這個例程傳回時,如果這個變數為零,則找不到連續的範圍來滿足要求。 如果這個變數不是 NULL,它會包含指標 (例如,系統非分頁部分的虛擬位址) 配置的實際連續記憶體。

傳回值

StorPortAllocateContiguousMemorySpecifyCacheNode 例程會傳回下列其中一個狀態代碼:

傳回碼 Description
STOR_STATUS_NOT_IMPLEMENTED
此函式不會在作用中的操作系統上實作。
STOR_STATUS_SUCCESS
作業成功。
STOR_STATUS_INSUFFICIENT_RESOURCES
作業因為資源不足而無法配置要求的記憶體。

備註

如果要求失敗, BufferPointer 將會設定為 NULL

規格需求

需求
最低支援的用戶端 從 Windows 7 開始提供。
目標平台 Universal
標頭 storport.h (包含 Storport.h)
IRQL <=DISPATCH_LEVEL
DDI 合規性規則 StorPortIrql (storport)