1
1
This is a follow up on my previous question, here:
Windows modified memory without a pagefile - Super User
I have no pagefile and a lot of modified memory according to resource monitor (Win 7 x64). The answerer to my original question said that the modified memory must be written to the "backing store" and when I asked if he meant files on the disk he said yes. So I have Sysinternals' RamMap program and I've tried the option 'Empty Modified Page List' but nothing changes.
Right now I'm using gigabytes of modified memory and it seems it's always that way with VMWare Workstation (several VMs open) and Firefox (ton of tabs open). How can I flush the modified memory, and is there any way to make Windows do that more often short of enabling a pagefile?
Thanks
EDIT - I've since discovered the source of several gigs of modified memory came from running Sysinternals' Process Monitor. When I closed Process Monitor I got back a few gigs. That modified memory does not show in the process list in RAMMap.
So how is this done? Page file backed memory would be written to the page file if it is modified but this assumes that there is a certain known and permanent location where the PFN is stored on the page file such that it can retrieved from the page file again (if that weren't the case it would have to write to the page file every time a page is paged out even if it is not modified). The PTE gets a pointer to the index into the page file of the PFN and the corresponding page so the memory managing code knows where to page it back in from. The issue is, the next time ... – Lewis Kelsey – 2019-04-27T13:51:49.290
.. it needs to page the page out to the page file it needs to use exactly the same index again in order to get the benefit of not having to write if it is not modified as it is already there, therefore this index needs to be permanently stored somewhere for each page so that it can be used again. And it needs to be stored for each page rather than PFN because the PFN can change when it pages it in to a new location. – Lewis Kelsey – 2019-04-27T13:54:40.430
Every time a page is paged in to a new PFN, it still needs to reference the same location in the pagefile, otherwise it's have to write non-modified pages as well – Lewis Kelsey – 2019-04-27T14:00:38.197