Windows Kernel Internals Advance Virtual Memory PDF
Windows Kernel Internals Advance Virtual Memory PDF
Microsoft Corporation
Microsoft Corporation
Microsoft Corporation
Microsoft Corporation
Microsoft Corporation
Microsoft Corporation
PFN Fields
PteAddress: VA of PTE referencing page RefCount: count of WS or IO locks OriginalPte: PTE to restore on soft-fault PteFrame: PageFrame for PteAddress Flags:
Modified : 1 ReadInProgress : 1 WriteInProgress : 1 PrototypePte: 1 PageColor : 4 PageLocation : 3 RemovalRequested : 1 CacheAttribute : 2
8
Microsoft Corporation
Pageframe
31
R R R G R D A Cd Wt O W 1
12 11 10 9 8 7 6 5 4 3 2 1 0
10
Microsoft Corporation
PFN
0
1 0
Transition
Page file offset 1
31 12 11 10 9
11
Unknown:
PTE is completely zero or Page Table doesnt exist yet. Examine VADs.
0
1 0
12
MMPAGING_FILE
PFN_NUMBER Size, MaxSize, MinSize, FreeSpace, CurrUsage, PeekUsage, HighestPage pFileObject ModWriterMdlEntries[] pPageFileName pAllocationBitmap Flags:
PageFileNumber, RefCount, BootPart
Microsoft Corporation 13
MMSUPPORT
// embedded in EPROCESS WorkingSetExpEntry[2] LastTrimTime Flags PageFaultCount, PeakWorkingSetSize, GrowthSinceLastEstimate MinimumWorkingSetSize, MaximumWorkingSetSize pVmWorkingSetList WSLE_NUMBER Claim, NextEstimationSlot, NextAgingSlot, EstimatedAvailable, WorkingSetSize
Microsoft Corporation
14
MMADDRESS_NODE
pParent, pLeft, pRight StartingVpn, EndingVpn
Microsoft Corporation
15
MMVAD
MMADDRESS_NODE AddressTreeNode pControlArea pFirstProtoPte pLastContigPte Flags:
CommitCharge, PhysMap, ImageMap, Awe, Prot, MemCommit, Private, LargePages, WriteWatch, NoChange, FileOffset64k, SecNoChange, ReadOnly, Extendable, Inherit, CopyOnWrite
Microsoft Corporation 16
CONTROL_AREA
pSegment DereferenceListEntry[2] nSectRefs, nPfnRefs, nMapViews, nCacheViews, nUserRefs nModWrites, nFlushesActive, Flags pFileObject iPfnBase Subsections[]
Microsoft Corporation 17
SUBSECTION
pControlArea Flags:
ReadOnly, ReadWrite, SubsectionStatic, GlobalMemory, Protection, StartingSector, SectorEndOffset
SECTION
MMADDRESS_NODE AddressTreeNode pSegment Size InitialPageProt Flags:
BeingDeleted, BeingCreated, BeingPurged, NoModifiedWriting, FailAllIo, Image, Based, File, Networked, NoCache, PhysicalMemory, CopyOnWrite, Commit, FloppyMedia, WasPurged, UserReference, GlobalMemory, DeleteOnClose, FilePointerNull, DebugSymbolsLoaded, SetMappedFileIoComplete, CollidedFlush, NoChange, HadUserReference, ImageMappedInSystemSpace, UserWritable, Accessed, GlobalOnlyPerSession, Rom
Microsoft Corporation 19
SEGMENT
pControlArea nPtes nWritableUserRefs Size PteTemplate nCommittedPages Flags BasedAddress PrototypePte ProtoPtes[]
Microsoft Corporation 20
Discussion
Microsoft Corporation
21