type
status
date
slug
summary
tags
category
icon
password
都是ppt上的题捏~
最佳适应算法需要空闲分区链按照分区块大小从小到大进行排序。这里还需要考虑剩余的空白区是否是最小的,如果是最小的,那么就不划分了,而是直接将多余的1k分配给这个19k的进程。(但是实际情况是在所有的动态分区的算法中都是对分区进行了分割的)
而最坏适应算法要求空闲分区块的大小按照从大到小的顺序进行排序
首次适应算法按照存储顺序进行排序。并且不管剩余部分(不像最佳适应一样需要考虑剩余的空白区是否小于最小分区,而是直接保留一个空闲分区节点)
需要注意的是,就算是使用空闲分区表,使用最佳或者最坏适应算法的时候也是需要按照空闲分区的大小进行排序的
对最佳和最坏,每次分配之后链表都需要重新排序,所以上面只有最佳适应能满足要求
每次快表没有命中后,在页表中查找到的表项都需要写入快表(局部性原理要求)
使用反置页表hash之后如果找到了某个表项还需要比对进程号和页号,因为可能两个进程的页面可能通过hash之后会映射到同一个块上
分段存储中每一个段放到的分区都是动态分区,而不是固定分区
缺页中断发生时需要调入的页也需要放入快表,因为这也是要访问的页
如果一个页在快表中有记录,那么就一定在内存中。所以当一个页被换出时,如果该页在快表中,就需要删除快表中的该项
快表是一定要更新的(并且是在最后独立更新的),但是页表更新在访问页表的时候就能做了。因为是在访问页表的时候检查标志位才发现缺页的,这个时候已经访问过页表了,所以再调入页的时候只需要修改页表项即可,不需要再次访存
cscan固定移动的方向也不是固定的,主要看题目给出的提示。
Q
- 最佳适应算法的分区分割问题
- 快速适应算法到底有没有分割(看ppt的意思应该是不分割,找到了就直接取出)
- 有效存取时间到底算不算更新快表、页表的时间,以及缺页中断中有没有更新页表快表
- 在快表中的页是否一定在内存中?(按道理来说应该不一定,但是从eat的计算上来看应该是一定的,以及流程图也是这么画的)
还是认为快表中的页一定在内存中,因为如果不在的话eat的计算就不对了
这题为什么是C
这个O(logkN)是怎么来的
write和read不一定完全写入或者读出指定的字节数,但一定小于等于该字节数(可能读写操作在中途因为某种原因停止了),上面第一个while的条件应该错了,不是==,而是一个赋值语句
这里说是说顺序文件只能存储定长记录,但实际上后面详细介绍的时候是既可以存储定长记录也可以存储变长记录的,只不过变长记录的长度需要直接体现出来,而不是像定长记录一样默认约定。并且对于变长记录的长度,仅占一个单元。
这里都是使用直接遍历的方式,就算是使用二分之类的查找方法,只要二者同时使用,那么二者的比例系数就是相同的。
需要注意的是每一个盘块组的第一个块中只有一部分用来保存下一个盘块组的信息
这一题使用的是顺序查找,需要注意索引节点本质上也算是目录项的一部分
类似二级页表,只不过页表的分配单位是内存中的物理块(也就是页框),而这里就是一个磁盘块
- 作者:Noah
- 链接:https://imnoah.top/article/OS/Example
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。