系统结构第四章-虚拟存储的页式管理

2021/02/16

页式管理

若是已转入的数据需要则直接可以通过信息查询到内存地址,若是该页未装入内存,则从辅存中调入到页面中。

每个进程都有一个页表有N个,每个页的都是固定大小的存储页,如4KB。每个页面对应内存中的一块。

使用页式管理进行虚拟内存转换物理地址时需要提供:进程号、页号、页内偏移值。

sequenceDiagram
	participant a as 进程
	participant b as 基址寄存器
	participant c as 页表
	participant d as 存储器
	a->>b: 发送进程号
	b-->>a: 返回进程对应页表的基地址的物理地址
	a->>c: 根据页表基地址找到对应页表,发送页号
	b-->>a: 根据页号返回该页所处的物理起始地址
	a->>d: 根据:该页的物理起始地址+页内偏移值:读取数据
	d-->>a: 读取成功

页面替换算法

内存就那么大,若是程序全部装入就装不下,就装入一部分,当内存装满时,就是用页面替换算法,把主存和辅存的页面进行一个替换。

LRU算法/近期最少使用算法:该算法是把最近最少使用的页面淘汰掉,然后从辅存中获取界面。

下图是使用近期最少使用算法的内存图,可以看出一开始先把页面1调入内存,然后把页面2调入内存,这时候要调入页面3,但是内存满了,于是我们就把页面1替换出内存,把页面三加载进来。

           
1 1 2 2 1 3
  2 3 1 3 1

目 录