x64 / ntdllntoskrnl /

_PRIVATE_VOLUME_CACHEMAP

← 10.0.28000.3231 6 builds latest →
struct _PRIVATE_VOLUME_CACHEMAP {
short NodeTypeCode;/* 0x0 2 */
short NodeByteSize;/* 0x2 2 */
unsigned long UseCount;/* 0x4 4 */
__int64 RefCount;/* 0x8 8 */
unsigned long VolumeId;/* 0x18 4 */
/* 4 bytes padding */
/* ── cacheline 1 boundary (64 bytes) ── */
/* ── cacheline 9 boundary (576 bytes) ── */
/* ── cacheline 10 boundary (640 bytes) ── */
/* ── cacheline 11 boundary (704 bytes) ── */
unsigned long ConsecutiveWorklessLazyScanCount;/* 0x2c0 4 */
unsigned char ForcedDisableLazywriteScan;/* 0x2c4 1 */
/* 59 bytes padding */
/* ── cacheline 12 boundary (768 bytes) ── */
unsigned __int64 WorkQueueLock;/* 0x300 8 */
unsigned long NumberWorkerThreads;/* 0x308 4 */
/* 4 bytes padding */
unsigned long MaxExtraWriteBehindThreads;/* 0x320 4 */
unsigned long MaxCacheMapUninitThreads;/* 0x324 4 */
unsigned long PostTickWorkItemCount;/* 0x328 4 */
/* 4 bytes padding */
/* ── cacheline 13 boundary (832 bytes) ── */
/* ── cacheline 14 boundary (896 bytes) ── */
unsigned long PagesYetToWrite;/* 0x390 4 */
/* 4 bytes padding */
/* ── cacheline 15 boundary (960 bytes) ── */
/* ── cacheline 16 boundary (1024 bytes) ── */
unsigned __int64 AverageAvailablePages;/* 0x438 8 */
/* ── cacheline 17 boundary (1088 bytes) ── */
unsigned __int64 AverageDirtyPages;/* 0x440 8 */
unsigned __int64 PagesSkippedDueToHotSpot;/* 0x448 8 */
/* 32 bytes padding */
/* ── cacheline 18 boundary (1152 bytes) ── */
unsigned __int64 DeferredWriteSpinLock;/* 0x480 8 */
unsigned long MaxNumberOfWriteBehindThreads;/* 0x490 4 */
unsigned char CoalescingState;/* 0x494 1 */
unsigned char InitComplete;/* 0x495 1 */
/* 2 bytes padding */
/* ── cacheline 19 boundary (1216 bytes) ── */
void* LazyWriteScanThreadHandle;/* 0x4c8 8 */
/* ── cacheline 20 boundary (1280 bytes) ── */
unsigned long ThroughputIdx;/* 0x500 4 */
/* 4 bytes padding */
unsigned __int64 AvgPagesPerSecond;/* 0x508 8 */
unsigned __int64 ThroughputHistory[32];/* 0x510 256 */
/* ── cacheline 24 boundary (1536 bytes) ── */
unsigned long DirtyThresholdInSeconds;/* 0x610 4 */
unsigned long DirtyPageTargetInSeconds;/* 0x614 4 */
/* ── cacheline 25 boundary (1600 bytes) ── */
unsigned long AsyncLazywriteQueueDepth;/* 0x648 4 */
unsigned long MaxAsyncLazywriteCompletionWorkers;/* 0x64c 4 */
unsigned long Flags;/* 0x650 4 */
/* 4 bytes padding */
};
size 1664 (0x680)61 members9 holes (117 bytes)padding 3226 cachelines
Used in (6)