请求分页存储管理方式例题分析

286 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第23天,点击查看活动详情

前面我们对请求分页存储管理方式的置换算法做了详细介绍,接下来通过一个例题来对这些算法进行深入的研究。

设某计算机的逻辑地址空间和物理地址空间均为64KB,按字节编址。若某进程最多需要6个页面存储空间,页面的大小为1KB,操作系统采用固定分配局部置换策略为此进程分配3个页框,某个时刻页面装入内存状况如下表3所示。当该进程执行到时刻270时,要访问逻辑地址为0FCAH的数据。请回答下列问题:

image.png

(1)该逻辑地址对应的页号是多少?

页面大小是1KB,即10的10次方,页内地址占低十位,页号占高六位,

0FCAH对应二进制, 000011 1111001010,高六位是3,所以对应页号是3.

(2)若采用FIFO置换算法,该逻辑地址对应的物理地址是多少?

采用FIFO置换算法,选择最先进入内存,即在内存中驻留时间最久的页面换出, 可把页面按先后次序链接成一个队列,并设置一替换指针,总是指向最老页面。

所以根据表可知,将0号换出,0号对应的块号是15,二进制为1111,与0FCAH的页内地址拼接为001111 1111001010,对应十六进制 3CFAH,即为其物理地址。

(3)若采用改进的Clock置换算法,该逻辑地址对应的物理地址是多少?

采用改进的Clock置换算法,置换最近一段时间内没有被使用过的页面。置换2号页面,对应的块号是31,二进制为11111,与0FCAH的页内地址拼接为11111 1111001010,对应十六进制为7FCAH.

(4)若采用LRU置换算法,该逻辑地址对应的物理地址是多少?

采用LRU置换算法,即选择最近一段时间内最久不用的页面予以淘汰。性能接近最佳算法。页表的访问字段,用以记录自上次访问以来所经历的时间T。每次都选择现有页面中T值最大的页面置换。 根据表可知,将第1号页换出,块号是60,二进制为111100,与0FCAH的页内地址拼接为 111100 1111001010。 十六进制为F3CAH。

本次例题通过一个数据,多种不同算法来求解物理地址,让我们对置换算法有了更深刻的理解与区分。