Partager via


structure RTL_HEAP_PARAMETERS (ntifs.h)

La structure RTL_HEAP_PARAMETERS contient des paramètres à appliquer lors de la création d’un tas.

Syntaxe

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;

Membres

Length

Taille, en octets, de la structure RTL_HEAP_PARAMETERS.

SegmentReserve

Taille de réserve de segment, en octets. Si cette valeur n’est pas spécifiée, 1 Mo est utilisé.

SegmentCommit

Taille de validation de segment, en octets. Si cette valeur n’est pas spécifiée, PAGE_SIZE * 2 est utilisé.

DeCommitFreeBlockThreshold

Seuil de bloc libre decommit, en octets. Si cette valeur n’est pas spécifiée, PAGE_SIZE est utilisée.

DeCommitTotalFreeThreshold

Décommit seuil libre total, en octets. Si cette valeur n’est pas spécifiée, 65536 est utilisée.

MaximumAllocationSize

Taille, en octets, du plus grand bloc de mémoire qui peut être alloué à partir du tas. Si cette valeur n’est pas spécifiée, la différence entre les adresses les plus élevées et les plus basses, moins une page, est utilisée.

VirtualMemoryThreshold

Seuil de mémoire virtuelle, en octets. Si cette valeur n’est pas spécifiée ou si elle est supérieure à la taille maximale du bloc de tas, la taille maximale du bloc de tas de 0x7F000 est utilisée.

InitialCommit

Quantité initiale de mémoire, en octets, à valider pour le tas. Doit être inférieur ou égal à InitialReserve. Si heapBase et commitRoutine ne sont pas NULL, ce paramètre, qui remplace la valeur de CommitSize, doit être une valeur différente de zéro ; sinon, elle est ignorée.

InitialReserve

Quantité initiale de mémoire, en octets, à réserver pour le tas. Si heapBase et CommitRoutine ne sont pas NULL, ce paramètre, qui remplace la valeur de ReserveSize, doit être une valeur différente de zéro ; sinon, elle est ignorée.

CommitRoutine

Pointeur vers une routine de RTL_HEAP_COMMIT_ROUTINE pour valider des pages à partir du tas. Si ce paramètre n’est pas NULL, le tas doit être non extensible. Si HeapBase a la valeur NULL, CommitRoutine doit également être NULL.

Reserved[2]

Réservé à l’utilisation du système. Les pilotes doivent définir ce paramètre sur zéro.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP
d’en-tête ntifs.h

Voir aussi

RTL_HEAP_COMMIT_ROUTINERtlCreateHeap