[理工] os 100交大資聯

看板Grad-ProbAsk作者 (揪立)時間9年前 (2016/12/01 15:59), 編輯推噓3(3019)
留言22則, 4人參與, 最新討論串1/1
http://i.imgur.com/uBRSmCF.jpg
小弟想問看看為什麼a是錯的 如果用Banker得到一個unsafe state Grant resources request的話 不是會直接進入deadlock 嗎? 還是我哪裡有搞錯banker演算法呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.130.47 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1480579156.A.6D0.html

12/01 16:23, , 1F
unsafe state未必會引發deadlock阿
12/01 16:23, 1F

12/01 17:42, , 2F
既然已經藉由banker algo偵測到為unsafe state
12/01 17:42, 2F

12/01 17:42, , 3F
它就不會再授權使該Process再要求resurce了
12/01 17:42, 3F

12/01 17:43, , 4F
Banker algo 就是防止該process在unsafe state中
12/01 17:43, 4F

12/01 17:45, , 5F
若真的如題目所說 授權給Process 那也不一定會為死結
12/01 17:45, 5F

12/01 19:17, , 6F
我就是在思考說如果判斷出unsafe的話,還同意process re
12/01 19:17, 6F

12/01 19:17, , 7F
quest會不會進入deadlock ,但是似乎找不到什麼範例證明
12/01 19:17, 7F

12/01 19:17, , 8F
不會進入deadlock
12/01 19:17, 8F

12/01 19:46, , 9F
會產生死結有四個要素 只要使其中一個條件不滿足
12/01 19:46, 9F

12/01 19:47, , 10F
就不會產生Deadlock , 但若同時有其他的要素 就會
12/01 19:47, 10F

12/01 19:47, , 11F
落在 unsafe 區,但並不代表會產生死結
12/01 19:47, 11F

12/01 19:52, , 12F
同理 若判斷出unsafe 代表被detect的proceess 擁有
12/01 19:52, 12F

12/01 19:53, , 13F
四要素的可能 但不是一定會同時擁有四個要素
12/01 19:53, 13F

12/01 19:55, , 14F
這是Safe code 所做的判斷 , 若process進入主要code
12/01 19:55, 14F

12/01 19:56, , 15F
Allocation and release , code也會自行選擇可行的方
12/01 19:56, 15F

12/01 19:57, , 16F
法 , 這時這個階段也可能不會產生Dealock
12/01 19:57, 16F

12/01 20:05, , 17F

12/01 20:05, , 18F
剛剛看到這個題目發現解決我的困擾了
12/01 20:05, 18F

12/02 02:21, , 19F
unsafe不代表一定會deadlock吧。
12/02 02:21, 19F

12/02 02:24, , 20F
簡單來說就是你在unsafe的時候仍然配置出去,也許下一秒
12/02 02:24, 20F

12/02 02:24, , 21F
有另一個握有很多資源的程式結束把那些資源還回來,之後
12/02 02:24, 21F

12/02 02:24, , 22F
依然不會死結@@
12/02 02:24, 22F
文章代碼(AID): #1OFzXKRG (Grad-ProbAsk)