Windows 95/98/ME paging file vs x86 paging?

When you turn off paging in windows (95/98/me), does this also turn off the paging feature in the x86 CPU (bit 31 of CR0, the PG bit)? Does it only disable the paging feature in the processor, or does it just turn off the swapping of pages to the hard disk pagefile.sys (can't remember if that's also the case with windows 95/98/ME, which came before the NT line if I remember correctly (except ME))?

So when you turn off the paging in the system settings, does this toggle the PG bit of CR0 to inactive, only disable the swapfile swapping or both?
Last edited on
... windows 95/98/ME, which came before the NT line
Windows NT predated Windows 95. It was made available via MSDN in 1994 as Daytona.
You are getting a few things mixed up here OP. First and foremost the answer to your question is a resounding 'no'. But the way you are asking this question shows that you are confused about a few things. The paging that a processor does and the page file managed by the OS are not the same thing, there is some overlap but they are two distinctly different concepts.

The page file, 'pagefile.sys', is managed only by the OS and is more or less meant to be invisible to the CPU. What this does is use free space on a Hard Disk Drive to hold data that it does not need or does not have room for in RAM. Is is strictly meant to improve performance.

Paging in the context of the CPU refers to Linear-Address Translation (LAT) and is the mapping of both memory AND Input/Output devices to "physical addresses" so that they can determine what should be accessible by other parts of the system. This is one part of several security features.

Furthermore, the security features that are absent from FAT32 (which was used for 95/98/ME) have to do with the introduction of Access Control Entries and Access Control Lists (ACE's and ACL's respectfully) when the disk if formatted NTFS. They have nothing to do with ANY of this.

So OP, where would you like to start?
Last edited on
I want to know what happens when I go to the configuration screen of windows and disable paging for all hard disks.

Is the PG bit of CR0 left on? (Is the system still able to run without paging?)

When the paging is kept enabled, how does the OS respond to page faults when all pagefiles are disabled? Is the software simply terminated and the pages allocated in RAM removed from the page tables and an error message displayed?

What I also wonder about is how are task switches handled when paging is enabled? When a task switch is performed, are all memory addresses invalidated? How are the pages belonging to a process in ring 3 seperated from other processes running at ring 3?
Is the PG bit of CR0 left on?


The short answer to this question is orangutan. The long answer is that the PG bit is left in what ever state it was previously set in because that check box to disable paging for the hard disks has nothing to do with the PG bit on CR0. Notice how it makes no mention of the processor in its description what so ever. That option enables or disables the page file and has nothing to do with access permission checking in memory.

When the paging is kept enabled, how does the OS respond to page faults when all pagefiles are disabled?

You have two contradictory conditions in this question, please restate it.

We seem to be getting somewhere in your fourth paragraph. Here is a very informative series from a well known programmer named Mark Russinovich explaining how memory is handled in Windows: http://blogs.technet.com/b/markrussinovich/archive/2008/07/21/3092070.aspx
Topic archived. No new replies allowed.