struct _MMPAGING_FILE { unsigned long Size;/* 0x0 4 */ unsigned long MaximumSize;/* 0x4 4 */ unsigned long MinimumSize;/* 0x8 4 */ unsigned long FreeSpace;/* 0xc 4 */ unsigned long PeakUsage;/* 0x10 4 */ unsigned long FreeReservationSpace;/* 0x14 4 */ struct _FILE_OBJECT* File;/* 0x18 8 */ struct _MMMOD_WRITER_MDL_ENTRY** Entry;/* 0x20 8 */ unsigned long NumberOfModWriterEntries;/* 0x28 4 */ /* 4 bytes padding */ union _SLIST_HEADER PfnsToFree;/* 0x30 16 */ /* ── cacheline 1 boundary (64 bytes) ── */ struct _UNICODE_STRING PageFileName;/* 0x40 16 */ struct _MI_PAGING_FILE_SPACE_BITMAPS* Bitmaps;/* 0x50 8 */ unsigned long AllocationBitmapHint;/* 0x58 4 */ unsigned long LargestAllocationCluster;/* 0x5c 4 */ unsigned long RefreshAllocationCluster;/* 0x60 4 */ unsigned long LastRefreshAllocationCluster;/* 0x64 4 */ union { unsigned long ReservedClusterSizeAggregate;/* 0x68 4 */ unsigned long ToBeEvictedHint;/* 0x68 4 */ };/* 0x68 4 */ unsigned long MaximumRunLengthInBitmaps;/* 0x6c 4 */ struct _RTL_RB_TREE BitmapsCacheLengthTree;/* 0x70 16 */ /* ── cacheline 2 boundary (128 bytes) ── */ struct _RTL_RB_TREE BitmapsCacheLocationTree;/* 0x80 16 */ struct _LIST_ENTRY BitmapsCacheFreeList;/* 0x90 16 */ struct _MI_PAGEFILE_BITMAPS_CACHE_ENTRY* BitmapsCacheEntries;/* 0xa0 8 */ union { unsigned long ToBeEvictedCount;/* 0xa8 4 */ unsigned long HybridPriority;/* 0xa8 4 */ };/* 0xa8 4 */ unsigned short PageFileNumber : 4;/* 0xac:0 2 */ unsigned short WsSwapPagefile : 1;/* 0xac:4 2 */ unsigned short NoReservations : 1;/* 0xac:5 2 */ unsigned short VirtualStorePagefile : 1;/* 0xac:6 2 */ unsigned short SwapSupported : 1;/* 0xac:7 2 */ unsigned short NodeInserted : 1;/* 0xac:8 2 */ unsigned short StackNotified : 1;/* 0xac:9 2 */ unsigned short BackedBySCM : 1;/* 0xac:10 2 */ unsigned short SpecialPurposeMemory : 1;/* 0xac:11 2 */ unsigned short Spare0 : 3;/* 0xac:12 2 */ unsigned char AdriftMdls : 1;/* 0xae:0 1 */ unsigned char Spare1 : 7;/* 0xae:1 1 */ unsigned char IgnoreReservations : 1;/* 0xaf:0 1 */ unsigned char Spare2 : 7;/* 0xaf:1 1 */ unsigned long PageHashPages;/* 0xb0 4 */ unsigned long PageHashPagesPeak;/* 0xb4 4 */ struct _MI_PAGE_HASH* PageHash;/* 0xb8 8 */ /* ── cacheline 3 boundary (192 bytes) ── */ void* FileHandle;/* 0xc0 8 */ volatile long SpinLock;/* 0xc8 4 */ /* 4 bytes padding */ struct _RTL_RB_TREE FlowThroughReadTree;/* 0xd0 16 */ struct _MI_PARTITION* Partition;/* 0xe0 8 */ struct _MI_PAGEFILE_DEFERRED_RELEASE_ENTRY* DeferredReleaseEntries;/* 0xe8 8 */ union _SLIST_HEADER FreeDeferredList;/* 0xf0 16 */ /* ── cacheline 4 boundary (256 bytes) ── */ union _SLIST_HEADER QueuedDeferredList;/* 0x100 16 */ union { struct _RTL_BALANCED_NODE FileObjectNode;/* 0x110 24 */ struct _RTL_RB_TREE ExtentsTree;/* 0x110 16 */ };/* 0x110 24 */};size 304 (0x130)51 members2 holes (8 bytes)padding 85 cachelines
Used in (3)