作者:
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空間