开足够大的虚拟内存可以解决内存不足的问题吗?

发布于 2022-09-12 00:11:43 字数 94 浏览 35 评论 0

假设是一个64位OS,并且磁盘剩余空间足够大。

理论上系统速度会变慢(磁盘的swap),但程序不会崩溃?实际上也是这样吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

起风了 2022-09-19 00:11:43

实际上即使物理内存充足也可能会崩溃,更不用说物理内存不足了。速度变慢通常会影响系统运行的稳定性,所以物理内存应该足够用,磁盘交换只是少数的情况下,系统才能比较稳定的运行。

尛丟丟 2022-09-19 00:11:43

“实际上”的实现如果和“理论上”不冲突的话,那答案我想是不会的。楼上说运行速度变慢通常会影响系统运行的稳定性,我觉得这是超出“内存”以外的事了;在那种情况下,导致“崩溃”的直接原因应该不是内存不足。如果虚拟内存充足而一个程序由于内存不足的原因崩溃了,我能想到的原因是:

  1. 这个操作系统允许为申请内存设置时限,而这个程序没有在要求的时间内申请到想要的内存空间
  2. 这个操作系统允许程序主动要求将某个内存页面移入物理内存,而这个程序由于物理内存不足而没有成功完成这个操作
  3. 这个程序有实时性要求,由于运行速度过慢而无法继续正常运行

还有一种可能就是你的物理内存小到操作系统的页表等常驻数据结构都放不下。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文