測驗達人

susan
博一上
54270次
司法特考錄..
高二下
53569次
魯筱筱
研二下
44599次
(+3次)
Cyril..
研二上
38288次
(+2次)
錄事考試
小六下
25910次

資訊管理 程式設計 50%題庫

【非選題】三、何謂死結(dead lock)(2 分)?交易(transaction)並行執行必須滿足哪些條件,死結才會發 生(6 分)?假定系統採用鎖定法來做並行控制,請畫出下表的 wait-for 圖,並列出產生 死結的廻圈(7 分)。

#17108
編輯私有筆記
1F
已刪除 (2015/12/02 15:52):
(一)當兩個以上的運算單元,雙方都在等待對方停止執行,以取得其他運算單元目前擁有的系統 資源,但是沒有一方提前結束時,這種狀況,就稱為死結。 1.也就是說必須這四項條件同時成立才會發生死結,不過這四項條件實際上並非完全獨立。 2.互斥(mutual exclusion):資源無法共用,也就是說至少要有一個資源必須具有互斥性。 3.佔用等候(hold and wait):必須存在佔用資源且正等候其他行程所佔用資源的行程。 4.不可搶先(no preemption):也就是說資源在使用過程中,一定要完成目標後才被放棄, 其他行程不能中途搶走該資源。 (二)循環等候(circular waiting):必須存在相互循環等候的行程。 (三)wait-for 圖如下,其中產生死結的廻圈包括:T1→T5→T7→T1,T1→T5→T6→T1, T1→T5→T6→T2→T3→T1。