銀行家算法是一種最有代表性的避免死鎖的算法。在避免死鎖方法中允許進(jìn)程動(dòng)態(tài)地申請(qǐng)資源,但系統(tǒng)在進(jìn)行資源分配之前,應(yīng)先計(jì)算此次分配資源的安全性,若分配不會(huì)導(dǎo)致系統(tǒng)進(jìn)入不安全狀態(tài),則分配,否則等待。為實(shí)現(xiàn)銀行家算法,系統(tǒng)必須設(shè)置若干數(shù)據(jù)結(jié)構(gòu)。

要解釋銀行家算法,必須先解釋操作系統(tǒng)安全狀態(tài)和不安全狀態(tài)。

安全序列是指一個(gè)進(jìn)程序列{P1,…,Pn}是安全的,即對(duì)于每一個(gè)進(jìn)程Pi(1≤i≤n),它以后尚需要的資源量不超過(guò)系統(tǒng)當(dāng)前剩余資源量與所有進(jìn)程Pj (j < i )當(dāng)前占有資源量之和。

以下為銀行家算法流程圖:

免責(zé)聲明:本文來(lái)源于互聯(lián)網(wǎng)公開(kāi)數(shù)據(jù)整理或轉(zhuǎn)載,版權(quán)歸原作者所有,如內(nèi)容侵權(quán)與違規(guī),請(qǐng)聯(lián)系我們進(jìn)行刪除,我們將在三個(gè)工作日內(nèi)處理。聯(lián)系郵箱:303555158#@QQ.COM(把#換成@)