8/22 深入学习计算机系统第九章

第九章 虚拟内存

前言

为了有效的管理内存,现代系统建立了虚拟内存的概念。
虚拟内存:

  • 将主存看做一个存储在磁盘上的地址空间的高速缓存,在主存中只包含活动区域,高效使用了主存。
  • 为每个进程提供了一致的地址空间,简化了内存管理。
  • 保护了每个进程的地址空间不被其他进程破坏。

9.1 9.2

物理和虚拟寻址
物理寻址:直接使用物理地址
虚拟寻址:使用虚拟地址访问主存,要先把虚拟地址通过地址翻译转化为物理地址。
CPU里的内存管理单元MMU,专门用来 查询存放在主存的查询表 来动态翻译虚拟地址,该表由操作系统管理。

地址空间
32位和64位指的是虚拟内存空间

9.3 虚拟内存作为缓存的工具

虚拟内存和物理内存的分页
虚拟内存可以分为:

  1. 未分配的,没有数据和它们相互关联,不占用磁盘空间。
  2. 缓存的,当前已经缓存在物理内存中的已分配页。
  3. 未缓存的,未缓存在物理内存的已分配页。

页表:
页表将虚拟页映射到物理页。页表是由页表条目(PTE)组成的数组。
PTE由一个有效位和一个n位地址字段(物理页号或者磁盘地址)组成。
有效位表示该虚拟页是否被缓存在主存中。
主存的映射是全链接的,即任意物理页都可以包含任意虚拟页。

posted @ 2022-08-22 21:36  227569hy  阅读(34)  评论(0)    收藏  举报