x64x86arm64 / ntdllntoskrnl

_HEAP_SEG_CONTEXT

← 10.0.18362.1016 5 builds latest →
struct _HEAP_SEG_CONTEXT {
unsigned long SegmentMask;/* 0x0 4 */
unsigned char UnitShift;/* 0x4 1 */
unsigned char PagesPerUnitShift;/* 0x5 1 */
unsigned char FirstDescriptorIndex;/* 0x6 1 */
unsigned char CachedCommitSoftShift;/* 0x7 1 */
unsigned char CachedCommitHighShift;/* 0x8 1 */
union {
struct {
unsigned char LargePagePolicy : 3;/* 0x9:0 1 */
unsigned char FullDecommit : 1;/* 0x9:3 1 */
unsigned char ReleaseEmptySegments : 1;/* 0x9:4 1 */
};/* 0x9 1 */
unsigned char AllFlags;/* 0x9 1 */
} Flags;/* 0x9 1 */
/* 2 bytes padding */
unsigned long MaxAllocationSize;/* 0xc 4 */
short OlpStatsOffset;/* 0x10 2 */
short MemStatsOffset;/* 0x12 2 */
void* LfhContext;/* 0x14 4 */
void* VsContext;/* 0x18 4 */
void* Heap;/* 0x24 4 */
/* 24 bytes padding */
/* ── cacheline 1 boundary (64 bytes) ── */
unsigned long SegmentLock;/* 0x40 4 */
unsigned long SegmentCount;/* 0x4c 4 */
unsigned long FreeSegmentListLock;/* 0x58 4 */
};
size 128 (0x80)20 members2 holes (26 bytes)padding 282 cachelines
Used in (1)