?? 銀行家算法幫助文件.txt
字號:
銀行家算法其實是很普通的但是比較經典的算法,每本OS的書上都講的,主要用來防止產生死鎖的,
形象的講:銀行發放貸款(對不同的客戶,有分期貸的)不能使有限可用資金匱乏而導致整個銀行無
法運轉,也就是說每次請求貸款時,銀行要考慮他能否憑著貸款完成項目還清貸款使銀行運轉正常,
(借用flyingcoolhwak寫的步驟)
令Request(i)是進程P(i)請求向量,如果Request(i)[j]=k,則進程P(i)希望請求j類資源k個。
算法步驟如下:
1、如果Request(i)>Need(i)則出錯(請求量超過申報的最大量),否則轉2、
2、如果Requdst(i)>Available則P(i)等待,否則轉3、
3、系統對P(i)所請求的資源實施試探分配,更改數據結構中的數值
4、Available<-Available-Request(i)
Allocation(i)<-Allocation(i)+Request(i)
Need(i)<-Need(i)-Request(i)
5、執行安全性算法(如下),如果是安全的則承認試分配,否則廢除試分配,讓進程P(i)等待
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -