美文网首页
第九章《虚拟内存》

第九章《虚拟内存》

作者: ShawnIsACoder | 来源:发表于2019-01-13 21:13 被阅读0次

什么是虚拟内存

虚拟内存的出现是为了更有效的管理内存、减少出错。它提供了3个非常重要的能力:

  • 它将主存看做是一个存储在磁盘上的地址空间的高速缓存
  • 它为每个进程提供了一致的地址空间,从而简化了内存管理
  • 它保护了每个进程的地址空间不被其它进程破坏

物理寻址

计算机系统的主存被组织成一个连续字节大小的数组,每个字节都有一个唯一的物理地址,类似于下标通过物理地址来访问内存的方式称为物理寻址

虚拟寻址

计算机CPU通过一个虚拟地址来访问主存,这种方式称为虚拟寻址虚拟地址终将会被转换为物理地址,这个过程被称为地址翻译,由CPU中的内存管理单元完成

虚拟页

VM系统将虚拟内存分割为大小固定的块,称作虚拟页

在任意时刻,虚拟页面的集合都分为三个不相交的子集:

  • 未分配的:VM系统还未分配或创建的页。未分配的块没有任何数据和它们相关联,因此也就不占用任何磁盘空间
  • 缓存的:当前已缓存在物理内存中的已分配页
  • 未缓存的:未缓存在物理内存中的已分配页

内存映射

Linux通过将一个虚拟内存区域与一个磁盘上的对象关联起来,以初始化这个虚拟内存区域的内容,这个过程称为内存映射,虚拟内存区域可以映射到两种类型的对象中的一种:

  • Linux文件系统中的普通文件
  • 匿名文件

相关文章

  • 操作系统复习(自用)5

    第九章 虚拟内存:纯请求分页式系统+预调入相对->请求分页式系统;基本实现:离散型存储;什么是虚拟内存 写时复制(...

  • 第九章《虚拟内存》

    什么是虚拟内存 虚拟内存的出现是为了更有效的管理内存、减少出错。它提供了3个非常重要的能力: 它将主存看做是一个存...

  • 第九章-虚拟内存

    物理和虚拟寻址物理寻址:内存可以看做是一个字节数组,每个字节都有一个唯一的物理地址。从0开始递增。CPU使用物理地...

  • 操作系统——内存映射

    定义 虚拟内存的目标存储器是磁盘,所以虚拟内存区域是和磁盘中的文件对应的。初始化虚拟内存的内容时,会把虚拟内存区域...

  • 操作系统内存

    Linux 内存 一、虚拟内存 这个虚拟内存指的是“进程的虚拟内存”,或者说是虚拟地址空间,注意与” Linux ...

  • CSAPP——第九章 虚拟内存

    几个概念 程序存储在磁盘上的文件,在执行的时候加载如内存 内存分为DRAM,和SRAMDRAM:可以就看成我们买的...

  • iOS内存管理及优化

    iOS内存管理的基本介绍: 1.iOS使用的是虚拟内存:段式虚拟内存+页式虚拟内存。 2.iOS没有Swap机制,...

  • 进程虚拟内存

    Linux虚拟内存空间分布Linux虚拟内存空间描述linux进程虚拟内存 .text(代码段)可执行文件加载到内...

  • Linux 内存管理

    虚拟内存1.1. 为什么要使用虚拟内存技术1.2. 理论前提1.3. 虚拟内存实现1.4. 页机制1.5. MMU...

  • MacOS, iOS 内存的基本概念和分析工具

    一些基本概念 Virtual Memory(虚拟内存) 虚拟内存指的是一个程序程序运行时,使用的内存空间。虚拟内存...

网友评论

      本文标题:第九章《虚拟内存》

      本文链接:https://www.haomeiwen.com/subject/teoldqtx.html