RTL_HEAP_PARAMETERS結構 (ntifs.h)
RTL_HEAP_PARAMETERS 結構包含建立堆積時要套用的參數。
語法
typedef struct _RTL_HEAP_PARAMETERS {
ULONG Length;
SIZE_T SegmentReserve;
SIZE_T SegmentCommit;
SIZE_T DeCommitFreeBlockThreshold;
SIZE_T DeCommitTotalFreeThreshold;
SIZE_T MaximumAllocationSize;
SIZE_T VirtualMemoryThreshold;
SIZE_T InitialCommit;
SIZE_T InitialReserve;
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine;
SIZE_T Reserved[2];
} RTL_HEAP_PARAMETERS, *PRTL_HEAP_PARAMETERS;
成員
Length
RTL_HEAP_PARAMETERS 結構的大小,以位元組為單位。
SegmentReserve
區段保留大小,以位元組為單位。 如果未指定此值,則會使用 1 MB。
SegmentCommit
區段認可大小,以位元組為單位。 如果未指定此值,則會使用 PAGE_SIZE * 2。
DeCommitFreeBlockThreshold
解除認可可用區塊閾值,以位元組為單位。 如果未指定此值,則會使用PAGE_SIZE。
DeCommitTotalFreeThreshold
取消認可總可用閾值,以位元組為單位。 如果未指定此值,則會使用 65536。
MaximumAllocationSize
大小,以位元組為單位,是可從堆積配置的最大記憶體區塊。 如果未指定此值,則會使用最高位址和最低位址之間的差異,而不是一頁。
VirtualMemoryThreshold
虛擬記憶體閾值,以位元組為單位。 如果未指定此值,或大於堆積區塊大小上限,則會使用堆積區塊大小上限0x7F000。
InitialCommit
要認可堆積的初始記憶體數量,以位元組為單位。 必須小於或等於 InitialReserve。 如果 HeapBase 和 CommitRoutine 為非 NULL,此參數會覆寫 commitSize 的值必須是非零值;否則會忽略它。
InitialReserve
要保留堆積的初始記憶體數量,以位元組為單位。 如果 HeapBase 和 CommitRoutine 為非 NULL,此參數會覆寫 reserveSize的值必須是非零值;否則會忽略它。
CommitRoutine
從堆積認可頁面之 RTL_HEAP_COMMIT_ROUTINE 例程的指標。 如果此參數不是 NULL,堆積必須是不可成長的。 如果 HeapBase 為 NULL,CommitRoutine 也必須是 NULL。
Reserved[2]
保留供系統使用。 驅動程式必須將此參數設定為零。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows XP |
標頭 | ntifs.h |