虚存的最大容量应该如何计算?
虚存的最大容量本质上取决于CPU的地址长度,地址总线越宽能寻址的范围就越大。比如32位CPU理论上可以寻址4GB空间,而64位地址线则能支持更大的虚拟地址空间。
这个最大值是硬件层面决定的,就像快递公司用几位编号来管理包裹一样,位数越多能管理的地址范围就越大。
不过实际使用中还要考虑外存容量,当外存容量小于CPU地址可表示范围时,虚拟内存总容量就是物理内存加外存的总和。
比如8GB内存配1TB硬盘的电脑,如果CPU地址线能寻址16TB,那么虚拟内存实际就是8GB+1TB≈1.008TB。但当外存容量超过CPU地址线可表示范围时,这时候虚拟内存上限就被CPU字长卡住了。
举个极端例子,如果有个16位CPU最多只能寻址64KB,即使装100TB的硬盘也没用,虚拟内存最大也就64KB。不过现在的CPU地址线基本都比外存大,像64位系统可寻址范围远超普通硬盘容量,所以实际都是内存加外存的总和。