2

According to Microsoft, the page file sizes of 64-bit and 32-bit Windows are 256TB and 16TB respectively.

In 64-bit, the virtual address looks like this:

64-bit virtual address format

With 4 levels of 9-bit memory mapping fields and 12-bit offset within page, 64-bit Windows can map maximum 29+9+9+9+12 byte = 256TB.

In 32-bit, the virtual address looks like this:

32-bit virtual address format

With 2 levels of 10-bit memory mapping fields and 12-bit offset within page, 32-bit Windows should be able to map maximum 210+10+12 byte = 4GB? Then why 16TB?

2 Answers2

3

Your arithmetic is correct : 2 power 32 gives 4 GB.

However, a file's size is counted in blocks.

If the size of one block is 4 K, which is standard for NTFS, you would have a maximal size in bytes of:

4 GB x 4 K = 16 TB

harrymc
  • 498,455
0

Have you considered PAE in your equation?

It says here that adding the /PAE (or /pae) argument in the boot.ini file allows for bigger pagefiles in 32-bit Windows, up to 16TB.