Condividi tramite


RTL_HEAP_PARAMETERS struttura (ntifs.h)

La struttura RTL_HEAP_PARAMETERS contiene parametri da applicare durante la creazione di un heap.

Sintassi

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;

Members

Length

Dimensioni, in byte, della struttura RTL_HEAP_PARAMETERS .

SegmentReserve

Dimensioni della riserva segmento, in byte. Se questo valore non è specificato, viene usato 1 MB.

SegmentCommit

Dimensioni del commit segmento, in byte. Se questo valore non è specificato, viene usato PAGE_SIZE * 2.

DeCommitFreeBlockThreshold

Soglia del blocco libero decommit, in byte. Se questo valore non è specificato, viene usato PAGE_SIZE.

DeCommitTotalFreeThreshold

Decommit totale soglia gratuita, in byte. Se questo valore non è specificato, viene usato 65536.

MaximumAllocationSize

Dimensioni, in byte, del blocco di memoria più grande che può essere allocato dall'heap. Se questo valore non è specificato, viene usata la differenza tra gli indirizzi più alti e più bassi, meno una pagina.

VirtualMemoryThreshold

Soglia di memoria virtuale, in byte. Se questo valore non è specificato o se è maggiore della dimensione massima del blocco heap, viene usata la dimensione massima del blocco heap di 0x7F000.

InitialCommit

Quantità iniziale di memoria, in byte, per eseguire il commit per l'heap. Deve essere minore o uguale a InitialReserve. Se HeapBase e CommitRoutine non sono NULL, questo parametro, che esegue l'override del valore CommitSize, deve essere un valore diverso da zero; in caso contrario, viene ignorato.

InitialReserve

Quantità iniziale di memoria, in byte, da riservare per l'heap. Se HeapBase e CommitRoutine non sono NULL, questo parametro, che sostituisce il valore di ReserveSize, deve essere un valore diverso da zero; in caso contrario, viene ignorato.

CommitRoutine

Puntatore a una routine RTL_HEAP_COMMIT_ROUTINE per eseguire il commit di pagine dall'heap. Se questo parametro non è NULL, l'heap deve essere non rowable. Se HeapBase è NULL, CommitRoutine deve essere NULL.

Reserved[2]

Riservato per l'utilizzo nel sistema. I driver devono impostare questo parametro su zero.

Requisiti

Requisito Valore
Client minimo supportato Windows XP
Intestazione ntifs.h

Vedi anche

RTL_HEAP_COMMIT_ROUTINERtlCreateHeap