4-3 基本分页存储管理方式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四讲存储器管理主讲教师:夏辉丽
离散分配方式概述:
•基本思想:一个用户程序(进程)直接分散地装入到很多不相邻接的分区中。
•两种形式:
分页存储管理方式(离散基本单位:页)
分段存储管理方式(离散基本单位:段)
4.4 基本分页存储管理方式
4.4.1 页面与页表
4.4.2 地址变换机构
4.4.3 两级和多级页表
4.4.1 页面与页表
1. 页面:
•等分内存空间:每等份称为物理块,编号:0 1
2 3 4……
•等分逻辑空间:划分为与物理块大小相同的页
面,编号为0 1 2 3 4 ……
•页面大小:2n Bytes ,大小适中、通常为
512B~8KB
0 1 2 3 4 5 6 7 …
11 10 内存
第0页 第1页 第2页 第3页 第4页 第5页 第6页
用户程序
第1页
(页大小2K )
3号物理块
(块大小2K )
以 块 为 单 位
以 页 为 单 位
第6页
7号物理块
4.4.1 页面与页表
0 1 2
3
4 5 6 7 8 9 10 11
分配原则:1页→1块;分配给程序的物理块不必相邻接
4.4.1 页面与页表
2. 地址结构:
31 12 11 0
页号P 位移量W(页内地址d)
4K 1M
每页大小为 B,逻辑空间最多允许有个页面
212 220
若已知一个逻辑地址空间中的地址为A ,页面大小为L ,则页号P 和页内地址d 是多少? P = d = 例如:某系统的页面大小为1KB ,逻辑地址
A=2170B ,则求得P= d= 。
2 122 INT [A/L] [A] MOD L
2. 地址结构:
4.4.1 页面与页表
INT[2170/1K]
2170 MOD 1K
4.4.1 页面与页表
3. 页表:
•系统为每个进程建立一张页表。
•作用:实现从页号到物理块号的地址映射。
•在页表中,每页均对应一页表项,记录页号、
块号的对应关系,及存取控制字段。
11
内存
第0页 第1页 第2页 第3页 第4页 第5页 第6页
用户程序
块号 页号 10 5 11
6
9 4 5 3 3 2 7 1 2 0 页表 第0页 第1页 第2页 第3页 第4页 第5页 第6页 3. 页表:
4.4.1 页面与页表
0 1
2
3
4
5
6
7
8
9
4.4.2 地址变换机构
▪基本任务:
实现从逻辑地址到物理地址的映射。
逻辑地址物理地址
页号P 页内地址d 块号b 块内地址d ▪两种形式:
1.基本的地址变换机构
2.具有快表的地址变换机构
1. 基本地址变换机构:
4.4.2 地址变换机构
①
① 自动将逻辑地址分为页号和页内地址
1. 基本地址变换机构:
4.4.2 地址变换机构
① ②
①自动将逻辑地址分为页号和页内地址 ② 进行比较,若页号≥页表长度,则越界中断
1. 基本地址变换机构:
4.4.2 地址变换机构
① ②
③
页表始址+页号×页表项长度 ② 进行比较,若页号≥页表长度,则越界中断 ③ 以页号为索引,查询该表项在页表中的位置
1. 基本地址变换机构:
4.4.2 地址变换机构
①
②
③
页表始址+页号×页表项长度
④
①自动将逻辑地址分为页号和页内地址
②进行比较,若页号≥页表长度,则越界中断③以页号为索引,查询该表项在页表中的位置④将该页对应的物理块号送入物理地址寄存器
1. 基本地址变换机构:
4.4.2 地址变换机构
①
②
③
页表始址+页号×页表项长度
④
⑤
①自动将逻辑地址分为页号和页内地址
②进行比较,若页号≥页表长度,则越界中断③以页号为索引,查询该表项在页表中的位置④将该页对应的物理块号送入物理地址寄存器⑤将页内地址送入物理地址寄存器
【课堂练习】:已知某分页系统,主存容量为64k ,页面大小为1k ,对一个4页大的作业,第0、1、2、3页分别被分配到内存的2、4、6、8块中。请将十进制的逻辑地址2200、5000转换成物理地址。
(1)2200/1K ,得到页号为2,页内地址152。
因对应的物理块号为6,故物理地址为6*1k+152=6296
(2)5000/1K ,得到页号为4,页内地址904。 因为页号等于页表长度,故产生越界中断。
4.4.2 地址变换机构
解:
4.4.2 地址变换机构
1. 基本的地址变换机构:
问题:
由于页表存放在内存中,CPU每取得一个数据,
均需要两次访问内存。
第一次:访问页表,形成物理地址;
第二次:从物理地址中获得数据
4.4.2 地址变换机构
2. 具有快表的地址变换机构:
增设一个具有并行查询能力的高速缓冲寄存器——快表(联想寄存器)
空间大小:几K到几百K ,只含有部分页表项(16~512个)