Operating system 如果物理内存的大小是2^32-1,那么虚拟内存的大小是多少?

Operating system 如果物理内存的大小是2^32-1,那么虚拟内存的大小是多少?,operating-system,virtual-memory,Operating System,Virtual Memory,我知道物理地址的长度为32位,但如何通过此信息确定虚拟内存的大小?在x86体系结构上,虚拟内存地址空间的总大小为2^32,而在x64体系结构上,虚拟内存地址空间的总大小要大得多(目前约为2^48)。然而,操作系统通常会保留一部分空间,因此32位应用程序不一定能同时寻址4GB。此外,操作系统可以轻松地交换不同的内存,因此,如果需要,在操作系统的帮助下,可以通过银行交换的形式支持4GB以上的内存。当您想要访问当前未映射到地址空间的内存时,操作系统会告诉操作系统修改页面表 此外,支持的最大物理内存量不

我知道物理地址的长度为32位,但如何通过此信息确定虚拟内存的大小?

x86
体系结构上,虚拟内存地址空间的总大小为2^32,而在
x64
体系结构上,虚拟内存地址空间的总大小要大得多(目前约为2^48)。然而,操作系统通常会保留一部分空间,因此32位应用程序不一定能同时寻址4GB。此外,操作系统可以轻松地交换不同的内存,因此,如果需要,在操作系统的帮助下,可以通过银行交换的形式支持4GB以上的内存。当您想要访问当前未映射到地址空间的内存时,操作系统会告诉操作系统修改页面表


此外,支持的最大物理内存量不一定是2^32。即使是32位计算机也通常通过PSE36或PAE最多支持2^36。

虚拟内存的大小不能通过给出物理内存的大小来确定。

虚拟内存存储在磁盘上,可以是任意大小。总虚拟内存空间取决于体系结构(和操作系统)。它与物理内存大小无关。如果你是说交换空间,那也与物理内存大小无关。虚拟内存大于物理内存,那么虚拟内存的大小不应该大于2^32吗?不,虚拟内存不一定大于物理内存。物理内存的大小是2^32-1,我们必须根据这些信息找到虚拟内存的大小。这是一个家庭作业问题吗?教授想要什么就反刍什么。这与现实世界没有任何关系。他们想要的答案可能是“你不能”。只要谈论一下寻呼和PAE之类的东西,他们可能会印象深刻。