楼主:
JacobSyu (JacobSyu)
2015-01-22 23:18:3299成大 OS 第5题
http://i.imgur.com/OOpV4e7.jpg
Continguous Allocation分配应该是固定大小,
答案应该是read block 0~99, write block 0~100共100+101=201次?
103交大 OS 第4题
http://i.imgur.com/5TSbCQe.jpg
每个block可以存放8k/4=2k个block pointer
5120th block在double indirect,第一层的第2个entry 之 第二层第1015 entry
也就是double indirect第3063 disk block.
存取次数 9+(2k+1)+(3063+??)
只要read 50~99 放到 100~149 , 再把新的写到50
作者:
maque (Roadside)
2015-01-22 23:31:00读前5120th算多读几次当index的block再加上5120就可以
交大103: 5120/2k=2.x , 用满原始的index block , 还需要把indirect用满,double indirect用一张(需两次index)总共需要读取的block就和m大说的算法一样,如下:5120+(1+1+3),分别是direct,indirect,double indirect更正第四行:double indirect一要要两张(共读3次block)
楼主:
JacobSyu (JacobSyu)
2015-01-23 00:16:00谢谢Q大刚刚看一下表格完全理解了疑惑:连续配置,file大小固定,第101block可能被其他file使用,为什么可以直接将50~99往后shift 1直接使用directory entry(file_name, start, length)length直接+1, 而不需要从新分配101大小block给file
你这个解释方式也是合理的,我是照我之前看过的恐龙书习题解释的,因为题干有特别写说file的后端还有空间可以分配,所以最少的的I/O方法应该是前面说的那样
楼主:
JacobSyu (JacobSyu)
2015-01-23 00:31:00对,我看表格确实有留几个空间,但是最多可用几个block?课本都留2~6个block空间