打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
何为计算机的虚拟内存

在计算机系统中,进程是与其他进程共享CPU和主存资源的。但是共享主存会形成一些特殊的挑战。如果太多进程需要太多的内存,那么它们中的一些就根本无法运行,当一个程序没有空间可用时,那就是它运气不好了。另外内存还很容易被破坏,如果某个进程不小心写了另一个进程使用的内存,它就可能以某种完全和程序逻辑无关的令人迷惑的方式失败。

为了更加有效地管理内存并且少出错,现代系统提供了一种对主存的抽象概念,叫做虚拟内存。

虚拟内存是硬件异常、硬件地址翻译、主存、磁盘文件和内核软件的完美交互,它为每个进程提供了一个大的、一致的和私有的地址空间。通过一个清晰的机制,虚拟内存提供了三个重要能力:

  1. 将主存看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,通过这种方式高效地使用主存;
  2. 为每个进程提供一致的地址空间,从而简化内存管理;
  3. 保护每个进程的地址空间不被其他进程破坏。

虚拟内存遍及计算机系统的所有层面,在硬件异常、汇编器、链接器、加载器、共享对象、文件和进程的设计中扮演者重要角色。

虚拟内存是计算机系统最重要的概念之一,它成功的一个主要原因就是因为它是默默地、自动地工作,不需要程序员的任何干涉。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
认真分析mmap:是什么 为什么 怎么用
二进制 | 翱翔的旅行日志!
计算机系统中的内存(二)
mmap()
为什么 Linux 需要虚拟内存
虚拟内存简介
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服