ReactOS  0.4.14-dev-368-gfa26425
_HEAP Struct Reference

#include <heap.h>

Collaboration diagram for _HEAP:

Public Attributes

SIZE_T MaximumSize
 
SIZE_T CurrentAllocBytes
 
SIZE_T MaxAllocBytes
 
ULONG NumAllocs
 
ULONG NumFrees
 
SIZE_T LargestAllocation
 
ULONGLONG AllocationTime
 
ULONGLONG FreeTime
 
ULONG_PTR TerminatingBlock
 
HEAP_BLOCK Blocks
 
HEAP_ENTRY Entry
 
ULONG SegmentSignature
 
ULONG SegmentFlags
 
LIST_ENTRY SegmentListEntry
 
struct _HEAPHeap
 
PVOID BaseAddress
 
ULONG NumberOfPages
 
PHEAP_ENTRY FirstEntry
 
PHEAP_ENTRY LastValidEntry
 
ULONG NumberOfUnCommittedPages
 
ULONG NumberOfUnCommittedRanges
 
USHORT SegmentAllocatorBackTraceIndex
 
USHORT Reserved
 
LIST_ENTRY UCRSegmentList
 
ULONG Flags
 
ULONG ForceFlags
 
ULONG CompatibilityFlags
 
ULONG EncodeFlagMask
 
HEAP_ENTRY Encoding
 
ULONG_PTR PointerKey
 
ULONG Interceptor
 
ULONG VirtualMemoryThreshold
 
ULONG Signature
 
SIZE_T SegmentReserve
 
SIZE_T SegmentCommit
 
SIZE_T DeCommitFreeBlockThreshold
 
SIZE_T DeCommitTotalFreeThreshold
 
SIZE_T TotalFreeSize
 
SIZE_T MaximumAllocationSize
 
USHORT ProcessHeapsListIndex
 
USHORT HeaderValidateLength
 
PVOID HeaderValidateCopy
 
USHORT NextAvailableTagIndex
 
USHORT MaximumTagIndex
 
PHEAP_TAG_ENTRY TagEntries
 
LIST_ENTRY UCRList
 
LIST_ENTRY UCRSegments
 
ULONG_PTR AlignRound
 
ULONG_PTR AlignMask
 
LIST_ENTRY VirtualAllocdBlocks
 
LIST_ENTRY SegmentList
 
struct _HEAP_SEGMENTSegments [HEAP_SEGMENTS]
 
USHORT AllocatorBackTraceIndex
 
ULONG NonDedicatedListLength
 
PVOID BlocksIndex
 
PVOID UCRIndex
 
PHEAP_PSEUDO_TAG_ENTRY PseudoTagEntries
 
LIST_ENTRY FreeLists [HEAP_FREELISTS]
 
union {
   ULONG   FreeListsInUseUlong [HEAP_FREELISTS/(sizeof(ULONG) *8)]
 
   UCHAR   FreeListsInUseBytes [HEAP_FREELISTS/(sizeof(UCHAR) *8)]
 
u
 
PHEAP_LOCK LockVariable
 
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine
 
PVOID FrontEndHeap
 
USHORT FrontHeapLockCount
 
UCHAR FrontEndHeapType
 
HEAP_COUNTERS Counters
 
HEAP_TUNING_PARAMETERS TuningParameters
 

Detailed Description

Definition at line 51 of file heap.c.

Member Data Documentation

◆ AlignMask

ULONG_PTR _HEAP::AlignMask

◆ AlignRound

ULONG_PTR _HEAP::AlignRound

◆ AllocationTime

ULONGLONG _HEAP::AllocationTime

Definition at line 59 of file heap.c.

Referenced by FrLdrHeapAllocateEx(), and FrLdrHeapCleanupAll().

◆ AllocatorBackTraceIndex

USHORT _HEAP::AllocatorBackTraceIndex

Definition at line 251 of file heap.h.

◆ BaseAddress

PVOID _HEAP::BaseAddress

Definition at line 213 of file heap.h.

◆ Blocks

◆ BlocksIndex

PVOID _HEAP::BlocksIndex

Definition at line 253 of file heap.h.

◆ CommitRoutine

PRTL_HEAP_COMMIT_ROUTINE _HEAP::CommitRoutine

Definition at line 264 of file heap.h.

Referenced by RtlpDeCommitFreeBlock(), and RtlpFindAndCommitPages().

◆ CompatibilityFlags

ULONG _HEAP::CompatibilityFlags

Definition at line 225 of file heap.h.

◆ Counters

HEAP_COUNTERS _HEAP::Counters

Definition at line 268 of file heap.h.

◆ CurrentAllocBytes

SIZE_T _HEAP::CurrentAllocBytes

Definition at line 54 of file heap.c.

Referenced by FrLdrHeapAllocateEx(), FrLdrHeapCleanupAll(), FrLdrHeapCreate(), and FrLdrHeapFreeEx().

◆ DeCommitFreeBlockThreshold

SIZE_T _HEAP::DeCommitFreeBlockThreshold

Definition at line 234 of file heap.h.

◆ DeCommitTotalFreeThreshold

SIZE_T _HEAP::DeCommitTotalFreeThreshold

Definition at line 235 of file heap.h.

◆ EncodeFlagMask

ULONG _HEAP::EncodeFlagMask

Definition at line 226 of file heap.h.

◆ Encoding

HEAP_ENTRY _HEAP::Encoding

Definition at line 227 of file heap.h.

◆ Entry

HEAP_ENTRY _HEAP::Entry

Definition at line 208 of file heap.h.

Referenced by RtlpValidateHeapSegment().

◆ FirstEntry

PHEAP_ENTRY _HEAP::FirstEntry

Definition at line 215 of file heap.h.

◆ Flags

◆ ForceFlags

◆ FreeLists

◆ FreeListsInUseBytes

UCHAR _HEAP::FreeListsInUseBytes[HEAP_FREELISTS/(sizeof(UCHAR) *8)]

Definition at line 261 of file heap.h.

Referenced by RtlpClearFreeListsBit(), RtlpSetFreeListsBit(), and RtlpValidateHeap().

◆ FreeListsInUseUlong

ULONG _HEAP::FreeListsInUseUlong[HEAP_FREELISTS/(sizeof(ULONG) *8)]

Definition at line 260 of file heap.h.

Referenced by RtlAllocateHeap().

◆ FreeTime

ULONGLONG _HEAP::FreeTime

Definition at line 60 of file heap.c.

Referenced by FrLdrHeapCleanupAll(), and FrLdrHeapFreeEx().

◆ FrontEndHeap

PVOID _HEAP::FrontEndHeap

Definition at line 265 of file heap.h.

◆ FrontEndHeapType

UCHAR _HEAP::FrontEndHeapType

Definition at line 267 of file heap.h.

Referenced by RtlQueryHeapInformation().

◆ FrontHeapLockCount

USHORT _HEAP::FrontHeapLockCount

Definition at line 266 of file heap.h.

◆ HeaderValidateCopy

PVOID _HEAP::HeaderValidateCopy

Definition at line 240 of file heap.h.

Referenced by RtlDebugDestroyHeap().

◆ HeaderValidateLength

USHORT _HEAP::HeaderValidateLength

Definition at line 239 of file heap.h.

◆ Heap

struct _HEAP* _HEAP::Heap

Definition at line 212 of file heap.h.

Referenced by RtlpAddHeapToProcessList(), and RtlpRemoveHeapFromProcessList().

◆ Interceptor

ULONG _HEAP::Interceptor

Definition at line 229 of file heap.h.

◆ LargestAllocation

SIZE_T _HEAP::LargestAllocation

Definition at line 58 of file heap.c.

Referenced by FrLdrHeapAllocateEx(), FrLdrHeapCleanupAll(), and FrLdrHeapCreate().

◆ LastValidEntry

PHEAP_ENTRY _HEAP::LastValidEntry

Definition at line 216 of file heap.h.

◆ LockVariable

◆ MaxAllocBytes

SIZE_T _HEAP::MaxAllocBytes

Definition at line 55 of file heap.c.

Referenced by FrLdrHeapAllocateEx(), FrLdrHeapCleanupAll(), and FrLdrHeapCreate().

◆ MaximumAllocationSize

SIZE_T _HEAP::MaximumAllocationSize

Definition at line 237 of file heap.h.

Referenced by RtlDebugAllocateHeap(), and RtlDebugReAllocateHeap().

◆ MaximumSize

SIZE_T _HEAP::MaximumSize

Definition at line 53 of file heap.c.

Referenced by FrLdrHeapCreate(), FrLdrHeapDestroy(), FrLdrHeapFreeEx(), and FrLdrHeapRelease().

◆ MaximumTagIndex

USHORT _HEAP::MaximumTagIndex

Definition at line 242 of file heap.h.

◆ NextAvailableTagIndex

USHORT _HEAP::NextAvailableTagIndex

Definition at line 241 of file heap.h.

◆ NonDedicatedListLength

ULONG _HEAP::NonDedicatedListLength

Definition at line 252 of file heap.h.

◆ NumAllocs

ULONG _HEAP::NumAllocs

Definition at line 56 of file heap.c.

Referenced by FrLdrHeapAllocateEx(), FrLdrHeapCleanupAll(), and FrLdrHeapCreate().

◆ NumberOfPages

ULONG _HEAP::NumberOfPages

Definition at line 214 of file heap.h.

Referenced by MempSetupPaging().

◆ NumberOfUnCommittedPages

ULONG _HEAP::NumberOfUnCommittedPages

Definition at line 217 of file heap.h.

◆ NumberOfUnCommittedRanges

ULONG _HEAP::NumberOfUnCommittedRanges

Definition at line 218 of file heap.h.

◆ NumFrees

ULONG _HEAP::NumFrees

Definition at line 57 of file heap.c.

Referenced by FrLdrHeapCleanupAll(), FrLdrHeapCreate(), and FrLdrHeapFreeEx().

◆ PointerKey

ULONG_PTR _HEAP::PointerKey

Definition at line 228 of file heap.h.

◆ ProcessHeapsListIndex

USHORT _HEAP::ProcessHeapsListIndex

Definition at line 238 of file heap.h.

Referenced by RtlpAddHeapToProcessList(), and RtlpRemoveHeapFromProcessList().

◆ PseudoTagEntries

PHEAP_PSEUDO_TAG_ENTRY _HEAP::PseudoTagEntries

Definition at line 255 of file heap.h.

Referenced by RtlAllocateHeap(), RtlpSplitEntry(), and RtlReAllocateHeap().

◆ Reserved

USHORT _HEAP::Reserved

Definition at line 220 of file heap.h.

◆ SegmentAllocatorBackTraceIndex

USHORT _HEAP::SegmentAllocatorBackTraceIndex

Definition at line 219 of file heap.h.

◆ SegmentCommit

SIZE_T _HEAP::SegmentCommit

Definition at line 233 of file heap.h.

Referenced by RtlpExtendHeap().

◆ SegmentFlags

ULONG _HEAP::SegmentFlags

Definition at line 210 of file heap.h.

◆ SegmentList

LIST_ENTRY _HEAP::SegmentList

Definition at line 249 of file heap.h.

◆ SegmentListEntry

LIST_ENTRY _HEAP::SegmentListEntry

Definition at line 211 of file heap.h.

◆ SegmentReserve

SIZE_T _HEAP::SegmentReserve

Definition at line 232 of file heap.h.

Referenced by RtlpExtendHeap().

◆ Segments

◆ SegmentSignature

ULONG _HEAP::SegmentSignature

Definition at line 209 of file heap.h.

◆ Signature

◆ TagEntries

PHEAP_TAG_ENTRY _HEAP::TagEntries

Definition at line 243 of file heap.h.

◆ TerminatingBlock

ULONG_PTR _HEAP::TerminatingBlock

Definition at line 61 of file heap.c.

Referenced by FrLdrHeapAllocateEx(), FrLdrHeapCreate(), and FrLdrHeapInsertFreeList().

◆ TotalFreeSize

◆ TuningParameters

HEAP_TUNING_PARAMETERS _HEAP::TuningParameters

Definition at line 269 of file heap.h.

◆ u

◆ UCRIndex

PVOID _HEAP::UCRIndex

Definition at line 254 of file heap.h.

◆ UCRList

LIST_ENTRY _HEAP::UCRList

Definition at line 244 of file heap.h.

Referenced by RtlpCreateUnCommittedRange().

◆ UCRSegmentList

LIST_ENTRY _HEAP::UCRSegmentList

Definition at line 221 of file heap.h.

◆ UCRSegments

LIST_ENTRY _HEAP::UCRSegments

Definition at line 245 of file heap.h.

Referenced by RtlDestroyHeap(), and RtlpCreateUnCommittedRange().

◆ VirtualAllocdBlocks

LIST_ENTRY _HEAP::VirtualAllocdBlocks

Definition at line 248 of file heap.h.

Referenced by RtlAllocateHeap(), RtlDestroyHeap(), and RtlpValidateHeap().

◆ VirtualMemoryThreshold

ULONG _HEAP::VirtualMemoryThreshold

Definition at line 230 of file heap.h.


The documentation for this struct was generated from the following files: