操作系统 (OS) 中的虚拟内存是什么?2025年3月17日 | 阅读 3 分钟 虚拟内存是一种存储方案,它让用户感觉拥有一个非常大的主内存。这是通过将部分辅助内存视为主内存来实现的。 在这个方案中,用户可以通过拥有可用内存来加载比可用主内存更大的进程,从而产生内存可用的错觉。 操作系统不是将一个大进程加载到主内存中,而是将多个进程的不同部分加载到主内存中。 通过这样做,多道程序的程度将增加,因此,CPU 利用率也将增加。 虚拟内存如何工作?在现代,虚拟内存已经变得相当普遍。在这个方案中,当一些页面需要加载到主内存中执行,而主内存没有足够的空间容纳这些页面时,操作系统不会阻止这些页面进入主内存,而是寻找最近很少使用或未被引用的 RAM 区域,并将其复制到辅助内存中,为主内存中的新页面腾出空间。 由于所有这些过程都是自动发生的,因此它让计算机感觉拥有无限的 RAM。 请求分页按需分页是虚拟内存管理的一种流行方法。在按需分页中,进程中很少使用的页面会存储在辅助内存中。 当需要某个页面或发生页面错误时,该页面才会被复制到主内存中。有各种页面替换算法用于确定要替换的页面。我们将在后面详细讨论每一种算法。 虚拟内存管理系统快照假设有两个进程 P1 和 P2,每个进程包含 4 个页面。每个页面大小为 1 KB。主内存包含 8 个 1 KB 的帧。操作系统驻留在前两个分区中。在第三个分区中,存储了 P1 的第一个页面,其他帧也显示为已填充主内存中进程的不同页面。 这两个页表的每个大小都是 1 KB,因此它们可以分别放入一个帧中。这两个进程的页表包含各种信息,这些信息也显示在图像中。 CPU 包含一个寄存器,其中包含页表的基地址,对于 P1 为 5,对于 P2 为 7。当访问实际对应的条目时,此页表基地址将添加到逻辑地址的页码中。 ![]() 虚拟内存的优点
虚拟内存的缺点
下一个主题翻译后备缓冲器 |
是操作系统为所有进程维护的全局页表。在反向页表中,条目数等于主内存中的帧数。它可以用来克服...的缺点。
7 分钟阅读
最早也是最简单的技术之一,可用于将多个进程加载到主内存中的是固定分区或连续内存分配。在这种技术中,主内存被划分为大小相等或不等的多个分区。操作系统...
阅读 2 分钟
GATE 2015 关于 LRU 和 FIFO 的问题 Q. 考虑一个具有五个页帧的主内存和以下页面引用序列:3, 8, 2, 3, 9, 1, 6, 3, 8, 9, 3, 6, 2, 1, 3。以下哪个说法是正确的,关于...
阅读1分钟
计算机系统基础将二进制地址分配给内存位置。然而,系统使用一定数量的位来寻址内存位置。使用 1 位,我们可以寻址两个内存位置。使用 2 位,我们可以寻址 4 个,使用 3 位,我们可以寻址...
阅读1分钟
操作系统中的分段 (OS) 简介 操作系统采用一种称为分段的内存管理技术,该技术将内存分割成不同大小的块。每个称为段的部分都可以分配给一个进程。用户进程的视角通过分段而不是分页来传达。存储划分的...
阅读 6 分钟
操作系统中分页的必要性 我们有没有想过为什么相应的操作系统通常会使用分页?它实际上是内存管理中一个大问题的智能解决方案。假设我们同时运行多个程序——可能是一个浏览器,...
阅读 8 分钟
动态分区的主要问题是跟踪所有空闲和已分配的分区。但是,操作系统使用以下数据结构来完成此任务。位图 链表 位图是存储详细信息最不为人知的(或最不常用的)数据结构。在此方案中,主内存...
阅读 2 分钟
操作系统中的Belady异常:在页面替换算法中的Belady异常:对于LRU和最优页面替换算法,可以看到如果我们增加帧的数量,页面错误的数量将会减少。然而,Belady发现,在FIFO页面...
阅读 8 分钟
引言 内存管理对于计算机操作系统中资源的有效利用至关重要。内存分配和组织通过两种基本技术实现:分页和分段。通过将内存视为统一结构,分页将其划分为称为...的固定大小块,从而简化了管理...
阅读 6 分钟
关于最优、LRU 和 FIFO 的数值题。考虑一个引用串:4, 7, 6, 1, 7, 6, 1, 2, 7, 2。内存中的帧数为 3。找出以下页置换算法的页面错误数:最优页置换算法 FIFO 页置换算法 LRU 页置换...
阅读1分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India