页号即是页面号,是页的标号;
物理块号=起始块号 + 逻辑块号 = 页框号
状态位字段P,P=0, 页面在外存,P=1,页面在内存。
外存地址:目录名称文件名称要找的数据相对文件头的偏移量
访问位:不论是读还是写(get or set),系统都会设置该页的访问位,它的值用来帮助操作系统在发生缺页中断时选择要被淘汰的页,即用于页面置换
修改位(脏位):用于页面的换出,如果某个页面被修改过(即为脏),在淘汰该页时,必须将其写回磁盘,反之,可以直接丢弃该页
解答:
缺页次数是6次;缺页率 = 6/12 = 0.5
缺页次数是7次;缺页率 = 7/12 = 0.58
缺页次数是7次;缺页率 = 7/12 = 0.58
8)解答:
9)解答:1k二进制有10位;
084BH = 0000 1000 0100 1011 页号是2对应的辅存地址是8000;物理地址=页内偏移地址+页面大小*物理块号 = 8000+113 = 8113;
5000 = 1010 0000 0000,页号是2;所以物理地址 = 1000+8000 = 9000;
24A0H = 0010 0100 1010 0000;页号是9,超出范围;
3000 = 1011 1011 1000;页号是 2;所以物理地址 = 3000+8000 = 12000;
解答:100*200 = 20000个整数;每个页面可以存放200个整数;所以需要100个页面;程序一缺页次数是100次;程序二缺页次数是20000次;
11)解答:
页面大小是4kb,12位;1565H 页号是1,偏移地址为565;物理地址=1565H
12)解答:
1. 17CAH 转换为二进制为:0001 0111 1100 1010, 页的大小为1KB,所以页内偏移为10位,于是前6位是页号,所以其页号为0001 01,转换为10进制为5,所以,17CA对应的页号为5。
2.若采用先进先出置换算法,则被置换出的页号对应的页框号是7,因此对应的二进制物理地址为:0001 1111 1100 1010,转换为16进制位的物理地址为1FCAH。
3. 若采用时钟算法,且当前指针指向2号页框,则第一次循环时,访问位都被置为0,在第二次循环时,将选择置换2号页框对应的页,因此对应的二进制物理地址为:0000 1011 1100 1010,转换为16进制物理地址为0BCAH
13)解答:
a. 4=2的2次方,则说明伙伴前9位地址一致,后三位为100;则二进制地址为0110 1111 0100
b. 16=2的4次方,则说明伙伴前7位地址一致,后5位为00000;则二进制地址为0110 1110 0000
14. 在什么情况下会发生页面错误?描述发生页面错误时操作系统执行的操作。
解答:
缺页的时候也就是未命中的时候,会发生页面错误。
- 页错误发生后,操作系统去查询保存可执行文件和其进程虚拟空间映射关系的数据结构
- 找到空页面所在的VMA虚拟内存区域。然后通过它VMA计算出空页面在可执行文件中偏移
- 然后再物理内存中分配一个物理页面,并将该物理页和虚拟空间中虚拟页建立映射关系。
15. 考虑图 9.30 中所示的页表,该表适用于具有 12 位虚拟地址和物理地址以及 256 字节页的系统。可用页面框架的列表是 D、E、F(即,D 位于列表的开头,E 位于第二位,F 位于最后一位)。将以下虚拟地址转换为其等效的十六进制物理地址。0x9EF ,0x111, 0x700, 0x0FF
解答:
256B 有8位;
0x9EF =1001 1110 1111 其中前4位1001 = 9是页号;物理地址 = 0EF;
0x111 = 0001 0001 0001 其中前4位0001 = 1是页号;物理地址 = 211;
0x700 = 0111 0000 0000 其中前4位0111 = 7是页号;物理地址 = D(第一位)00;
0x0FF = 0000 1111 1111 其中前4位0000 = 0是页号;物理地址 = E(第二位)FF