没有交换的虚拟内存的优势?

时间:2016-03-13 12:23:23

标签: swap virtual-memory

当我们只使用现有的RAM且没有交换空间时,是否有任何虚拟内存优势?

2 个答案:

答案 0 :(得分:0)

当你提到虚拟内存时,也许你会想到几件事:

  • 交换的可能性
  • 内存保护(一个进程无法崩溃另一个进程或崩溃操作系统)
  • 地址转换(虚拟内存地址到物理地址)
  • 我可能不记得的其他事情。

给定的架构不一定必须支持所有这些,但是像user3344003指出的那样,大多数主流系统都支持所有这些。 从理论上讲,你可以只使用内存保护,而不是像我的宠物项目https://bitbucket.org/ruifig/g4devkit

那样

如果你的意思是广义上的虚拟内存,那么除了交换空间之外,它真正有用的一件事就是它使共享库(又称:Windows中的DLL)的实现变得更加容易。您可以只使用现有的RAM,但通过地址转换,可以更轻松地在进程之间共享代码。

在没有虚拟内存/地址转换的系统中,有一些技巧可以支持共享库,但与虚拟内存/地址转换为您提供的简单性相比,它会非常混乱。

答案 1 :(得分:-1)

除非有调页空间,否则虚拟内存系统不起作用。每个页面框架都必须映射到某个位置的磁盘。因此,拥有VM并没有页面文件空间是没有优势的。