目录

1、在请求分页系统中,某用户程序的逻辑地址空间为 16 页,每页 1KB,分配的内存空间为 8KB。假定某时刻该用户的页表如下表所示。

试问:(1)逻辑地址 184BH 对应的物理地址是多少?(用十六进制表示)(2)逻辑地址 5000(十进制)对应的物理地址是多少?(用十进制表示)(3)当用户进程欲访问 24A0H 单元时,会出现什么现象?

2、请求分页管理系统中,假设某进程的页表内容如下表所示。​编辑页面大小为 4KB,一次内存的访问时间是 100ns,一次快表(TLB)的访问时间是 10ns,处理一次缺页的平均时间为 108ns(已含更新 TLB 和页表的时间),进程的驻留集大小固定为 2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设①TLB 初始为空;②地址转换时先访问TLB,若 TLB 未命中,再访问页表(忽略访问页表之后的 TLB 更新时间);③有效位为 0 表示页面不在内存,产生缺页中断,缺页中断后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列 2362H、1565H、25A5H,请问:

(1) 依次访问上述三个虚地址,各需多少时间?给出计算过程。(2) 基于上述访问序列,虚地址1565H的物理地址是多少?请说明理由。

3、在某一采用固定分配局部置换策略的请求分页系统中,有一进程逻辑地址空间有10个页,分得了4个页框,每页的装入时间、最后访问时间、访问位R如下表所示(时间用时钟点数表示)。​编辑假设页的大小为 4KB(4096B),当进程执行到时刻 300 时,要访问逻辑地址 6AB8H 的数据,请回答下列问题:(1)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(2)若采用最近最久未使用(LRU)页面置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(3)若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程(设搜索下一页的指针沿顺时针方向移动,且当前指向 2 号页,示意图如下)。

 4、(1)已知某分页系统,主存容量为 32K,页面大小为 1K,对一个 4 页大小的作业,其页表如下。

则逻辑地址 3500、4500 分别对应的物理地址各为多少?用十进制给出其物理地址的计算过程(5 分)。(2)某段表内容如下:​编辑则逻辑地址为(3,150)和(2,3000)的实际物理地址各是多少?用十进制给出其物理地址的计算过程(5 分)

 5、有一个虚存系统,某进程占用 3 个内存块,开始时内存为空,执行如下访问页号序列后:5,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,5,0,1(1)采用先进先出(FIFO)页面置换算法,页面置换次数是多少?(需画置换图)(2)采用最近最久未使用(LRU)页面置换算法,页面置换次数是多少?(需画置换图)

6. 一个页式虚拟存储系统,其并发进程数固定为 4 个。最近测试了它的 CPU 利用率和用于页面交换的磁盘的利用率,得到下列 3 组数据,针对每组数据,说明系统发生了什么事情。增加并发进程数能提升 CPU 的利用率吗?页式虚拟存储系统有用吗?(1)CPU 利用率为 13%;磁盘利用率为 97%(2)CPU 利用率为 87% ;磁盘利用率为 3%(3)CPU 利用率为 13% ;磁盘利用率为 3%

7.某计算机系统按字节编址,采用二级页表的分页存储方式,虚拟地址格式如下所示:​编辑请回答下列问题:1)页和页框的大小各为多少字节?进程的虚拟地址空间大小为多少页?2)若页目录项和页表项均占 4B,则进程的页目录和页表共占多少页?写出计算过程。3)若某指令周期内访问的虚拟地址为 0200 0000H 和 0111 2048H,则进行地址转换时共访问多少个二级页表?说明理由。 


1、在请求分页系统中,某用户程序的逻辑地址空间为 16 页,每页 1KB,分配的内存空间为 8KB。假定某时刻该用户的页表如下表所示。

试问:
(1)逻辑地址 184BH 对应的物理地址是多少?(用十六进制表示)
(2)逻辑地址 5000(十进制)对应的物理地址是多少?(用十进制表示)
(3)当用户进程欲访问 24A0H 单元时,会出现什么现象?

解:(1)逻辑地址 184BH=1 1000 0100 1011B,低 10 位 00 0100 1011B 是页内偏移量,高位110B 是页号,即页号为 6,查页表得内存块号为 61,即 111101B,与页内偏移地址 00 0100 1011B构成物理地址为 1111 0100 0100 1011B,即 F44BH。 (4 分)
(2)5000 DIV 1024=4,5000 MOD 1024=904,即逻辑地址 5000 的页号为 4,页内地址为 904。
查页表知其所在的页框号为 12,故对应的物理地址为:12*1024+904=13192。 (6 分)
(3)逻辑地址 24A0H=10 0100 1010 0000B,其所在的页号为 1001B=9,由题目所给条件可知该逻辑地址所在的页不在内存,故当用户进程欲访问 24A0H 单元时,会产生缺页中断。(10 分)

2、请求分页管理系统中,假设某进程的页表内容如下表所示。

页面大小为 4KB,一次内存的访问时间是 100ns,一次快表(TLB)的访问时间是 10ns,处理一次缺页的平均时间为 108ns(已含更新 TLB 和页表的时间),进程的驻留集大小固定为 2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设①TLB 初始为空;②地址转换时先访问TLB,若 TLB 未命中,再访问页表(忽略访问页表之后的 TLB 更新时间);③有效位为 0 表示页面不在内存,产生缺页中断,缺页中断后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列 2362H、1565H、25A5H,请问:

(1) 依次访问上述三个虚地址,各需多少时间?给出计算过程。
(2) 基于上述访问序列,虚地址1565H的物理地址是多少?请说明理由。

解:
(1) 因页的大小为 4KB,即 212,故十六进制地址的低 3 位是页内偏移,高位是页号。
2362H:页号 P=2,访问快表 10ns,因初始为空,访问页表 100ns 得到页框号,与页内偏移合成物理地址后访问内存 100ns,共花时间 10+100+100=210ns。 (2 分)
1565H:页号 P=1,访问快表 10ns,落空,访问页表 100ns 缺页,进行缺页中断处理 108ns,合
成物理地址后访问内存 100ns,共计 10+100+108+100=318ns。( 4 分)
25A5H:页号 P=2,访问快表 10ns 命中,合成物理地址后访问内存 100ns,共计 110ns。(6 分)
(2) 访问1565H时,因在此之前刚刚访问2362H所在的2号页,按LRU算法,应淘汰0号页,空101H号页框存放逻辑地址1565H所在的1号页。由页框号101H和页内偏移565H合成得到虚地址1565H对应的物理地址为101565H。 (10分 )

3、在某一采用固定分配局部置换策略的请求分页系统中,有一进程逻辑地址空间有10个页,分得了4个页框,每页的装入时间、最后访问时间、访问位R如下表所示(时间用时钟点数表示)。

假设页的大小为 4KB(4096B),当进程执行到时刻 300 时,要访问逻辑地址 6AB8H 的数据,请回答下列问题:
(1)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。
(2)若采用最近最久未使用(LRU)页面置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。
(3)若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程(设搜索下一页的指针沿顺时针方向移动,且当前指向 2 号页,示意图如下)。

 

 4、(1)已知某分页系统,主存容量为 32K,页面大小为 1K,对一个 4 页大小的作业,其页表如下。

页号物理块号
05
110
27
34

则逻辑地址 3500、4500 分别对应的物理地址各为多少?用十进制给出其物理地址的计算过程(5 分)。
(2)某段表内容如下:

则逻辑地址为(3,150)和(2,3000)的实际物理地址各是多少?用十进制给出其物理地址的计算过程(5 分)

 5、有一个虚存系统,某进程占用 3 个内存块,开始时内存为空,执行如下访问页号序列后:5,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,5,0,1
(1)采用先进先出(FIFO)页面置换算法,页面置换次数是多少?(需画置换图)
(2)采用最近最久未使用(LRU)页面置换算法,页面置换次数是多少?(需画置换图)

6. 一个页式虚拟存储系统,其并发进程数固定为 4 个。最近测试了它的 CPU 利用率和用于页面交换的磁盘的利用率,得到下列 3 组数据,针对每组数据,说明系统发生了什么事情。增加并发进程数能提升 CPU 的利用率吗?页式虚拟存储系统有用吗?
(1)CPU 利用率为 13%;磁盘利用率为 97%
(2)CPU 利用率为 87% ;磁盘利用率为 3%
(3)CPU 利用率为 13% ;磁盘利用率为 3%

7.某计算机系统按字节编址,采用二级页表的分页存储方式,虚拟地址格式如下所示:

请回答下列问题:
1)页和页框的大小各为多少字节?进程的虚拟地址空间大小为多少页?
2)若页目录项和页表项均占 4B,则进程的页目录和页表共占多少页?写出计算过程。
3)若某指令周期内访问的虚拟地址为 0200 0000H 和 0111 2048H,则进行地址转换时共访问多少个二级页表?说明理由。 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐