问题
I know that physical address will be 32 bits long but how do I find out the size of virtual memory by this information?
回答1:
The total size of the virtual memory address space is 2^32 on x86 and much larger (currently around 2^48) on x64. However, the OS usually reserves a portion of this space, so a 32bit app can't necessarily address 4gb at once. Also, the OS can easily swap different pieces of memory in and out, so if necessary, more than 4gb could be supported with assistance of the OS through a form of bank switching by telling it to modify your page tables when you want to access memory that isn't currently mapped into your address space.
Also, the maximum amount of physical memory supported is not necessarily 2^32. Even 32bit machines often support up to 2^36 through PSE36 or PAE.
回答2:
The size of virtual memory can't be determined by just giving the size of physical memory.
来源:https://stackoverflow.com/questions/11809294/if-size-of-the-physical-memory-is-232-1-then-what-is-the-size-of-virtual-memor