作者peterpan126 (亞茲別)
看板Grad-ProbAsk
標題Re: [問題] 97高科計概Deadlock
時間Wed Apr 1 16:29:04 2009
※ 引述《hateexam (迷戀就是青春)》之銘言:
: ※ 引述《peterpan126 (亞茲別)》之銘言:
: : 97高科電通計概第九題 第一小題
: : Allocation Max Available
: : A B C D A B C D A B C D
: : P1 1 2 1 0 1 3 2 2 1 X 1 2
: : P2 5 1 3 0 7 7 3 0
: : P3 2 1 4 2 3 6 6 6
: : P4 5 3 0 2 5 5 6 5
: : P5 1 4 2 0 5 4 2 3
: : Let X be the smallest value in which the system state is safe. what is X?
: REQUEST
: A B C D
: P1 0 1 1 2
: P2 2 6 0 0
: P3 1 5 2 4
: P4 0 2 6 3
: P5 4 0 0 3
: 當X=1時 由P1先執行釋放 2 3 2 4 很明顯無法滿足任何接續程序
: 當X=2時 由P4先執行釋放 6 5 1 4 再來可挑選P1或P5...,可滿足安全狀態
: 故X最小為2
發現我題目打錯,MAX的P5打錯,正確如下:
Allocation Max Available
A B C D A B C D A B C D
P1 1 2 1 0 1 3 2 2 1 X 1 2
P2 5 1 3 0 7 7 3 0
P3 2 1 4 2 3 6 6 6
P4 5 3 0 2 5 5 6 5
P5 1 4 2 0 5 4 3 1
照你的作法,是否就是使用"死結偵測演算法去RUN"呢?
得到Request為
A B C D
P1 0 1 1 2
P2 2 6 0 0
P3 1 5 2 4
P4 0 2 6 3
P5 4 0 1 1
假設X=2時,available=1 2 1 2
Request 4 = 0 2 6 3 !< available(1 2 1 2)
Request 4並沒有小於available,怎麼P4可以先執行?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.116.7.116
1F:→ muta22:就自己預設x值去跑deadlock detection,算出來x=4 04/01 17:25
2F:→ muta22:附帶一下:P1一定先做 04/01 17:26
3F:→ peterpan126:我算到x=3就放棄了...囧 我該堅持一下的 04/02 19:44