在请求分页管理系统中, 一个程序的页面走向为:1,2,3,4,1,3,4,2,5,2,4,1,设分配给该程序的存储块为4,分别采用FIFO算法和LRU页面置换算法,请计算缺页次数和缺页率。
时间: 2023-08-19 17:47:07 浏览: 294
用FIFO,LRU,OPT三种算法在程序访问过程中所发生的缺页次数及缺页率,每次中断时都需要打印出来或者标示出来,格式可以参看课件OS009的ppt 73页
4星 · 用户满意度95%
好的,我可以帮你计算。这是一个分页管理系统的问题,其中页面走向序列为:1,2,3,4,1,3,4,2,5,2,4,1,存储块为4。
首先使用FIFO算法,按照页面走向序列的顺序将页面存储到四个存储块中,当存储块已满时,采用FIFO算法进行页面置换,即选择最早进入存储块的页面进行替换。具体步骤如下:
| 页号 | 存储块1 | 存储块2 | 存储块3 | 存储块4 | 缺页次数 |
| ---- | ------- | ------- | ------- | ------- | -------- |
| 1 | 1 | | | | 1 |
| 2 | 1 | 2 | | | 2 |
| 3 | 1 | 2 | 3 | | 3 |
| 4 | 1 | 2 | 3 | 4 | 4 |
| 1 | 5 | 2 | 3 | 4 | 5 |
| 3 | 5 | 6 | 3 | 4 | 6 |
| 4 | 5 | 6 | 3 | 4 | 6 |
| 2 | 5 | 6 | 2 | 4 | 7 |
| 5 | 5 | 6 | 2 | 5 | 8 |
| 2 | 5 | 6 | 2 | 5 | 8 |
| 4 | 4 | 6 | 2 | 5 | 9 |
| 1 | 4 | 1 | 2 | 5 | 10 |
因此,FIFO算法的缺页次数为10,缺页率为10/12=83.33%。
然后使用LRU算法,按照页面走向序列的顺序将页面存储到四个存储块中,当存储块已满时,采用LRU算法进行页面置换,即选择最近最久未使用的页面进行替换。具体步骤如下:
| 页号 | 存储块1 | 存储块2 | 存储块3 | 存储块4 | 缺页次数 |
| ---- | ------- | ------- | ------- | ------- | -------- |
| 1 | 1 | | | | 1 |
| 2 | 1 | 2 | | | 2 |
| 3 | 1 | 2 | 3 | | 3 |
| 4 | 1 | 2 | 3 | 4 | 4 |
| 1 | 5 | 2 | 3 | 4 | 5 |
| 3 | 5 | 2 | 3 | 4 | 5 |
| 4 | 5 | 2 | 4 | 3 | 6 |
| 2 | 5 | 2 | 4 | 3 | 6 |
| 5 | 5 | 2 | 4 | 1 | 7 |
| 2 | 5 | 2 | 4 | 1 | 7 |
| 4 | 5 | 2 | 1 | 4 | 8 |
| 1 | 5 | 2 | 1 | 4 | 8 |
因此,LRU算法的缺页次数为8,缺页率为8/12=66.67%。
综上所述,FIFO算法的缺页次数为10,缺页率为83.33%,而LRU算法的缺页次数为8,缺页率为66.67%。因此,LRU算法的效果比FIFO算法要好一些。
阅读全文