SKETCH OF HOW RESEARCH MIGHT CONTINUE AND RESULTS BE PRESENTED

MMLISTS

For each physical page that’s in general use, the kernel keeps one MMPFN structure. For each physical page that’s not in active use (or at least in transition to or from active use), the MMPFN gets linked into one or another MMPFNLIST. Long, long ago, the Memory Manager kept just six such lists among its internal variables. Each list had as its ListName member a unique identifier from the MMLISTS enumeration (formally _MMLISTS).

Microsoft’s names for both the type and its values are known from public symbol files starting with Windows XP, but the values are known to be used in all versions:

Value Name
0 ZeroedPageList
1 FreePageList
2 StandbyPageList
3 ModifiedPageList
4 ModifiedNoWritePageList
5 BadPageList
6 ActiveAndValid
7 TransitionPage