2

我最近在电话采访中遇到了这个问题:

如果程序的大小大于虚拟内存的大小会怎样?

是否不允许运行或操作系统如何处理它?

4

2 回答 2

1
  • 是的,即使总大小大于地址空间,也有可能运行程序。

大于可用地址空间的程序存在了很长时间。常见的方法是将程序拆分为适合地址空间的块,然后按顺序/按需加载其他块。

  • 如果您有可以播放文件的播放器,它将播放文件。不知道它与操作系统有何关系...
于 2013-04-12T07:50:48.277 回答
0

是的,你绝对可以。覆盖是使用的机制。CPU 只引入要在主存储器中执行且当前需要的那部分代码。其余代码驻留在辅助存储器中,然后可以在需要时调用。

于 2013-07-21T19:44:33.667 回答