版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)操作系統(tǒng)銀行家算法1可編輯死鎖的“3W”WhatWhyHow什么是死鎖?為什么會(huì)發(fā)生死鎖?怎么解決死鎖?2可編輯死鎖的處理方法
(1)預(yù)防死鎖:通過某些限制條件的設(shè)置,去破壞產(chǎn)生死鎖的四個(gè)必要條件;
(2)避免死鎖:在資源的動(dòng)態(tài)分配過程中,用某種方法去防止系統(tǒng)進(jìn)入不安全狀態(tài);
(3)檢測(cè)死鎖:及時(shí)檢測(cè)死鎖的發(fā)生,并確定與之相關(guān)的進(jìn)程、資源,從而采取措施清除死鎖;
(4)解除死鎖:撤消或掛起某些進(jìn)程以回收一些資源,用于解脫另一些處于死鎖的進(jìn)程。3可編輯避免死鎖—銀行家算法設(shè)銀行家有10萬周轉(zhuǎn)資金,P,Q,R分別需要8,3,9萬元搞項(xiàng)目,如果P已申請(qǐng)到了4萬,Q要申請(qǐng)2萬,R要申請(qǐng)4萬.Q1:客戶要求分期貸款,一旦得到每期貸款,就能夠歸還貸款Q2:銀行家應(yīng)謹(jǐn)慎的貸款,防止出現(xiàn)壞帳什么是銀行家問題?銀行家->操作系統(tǒng)周轉(zhuǎn)資金->系統(tǒng)資源貸款客戶->進(jìn)程當(dāng)某進(jìn)程請(qǐng)求分配資源時(shí),系統(tǒng)假定先分配給它,之后若能找到一個(gè)進(jìn)程完成序列(安全序列),說明系統(tǒng)是安全的,可進(jìn)行實(shí)際分配;否則,讓申請(qǐng)者等待。銀行家算法的實(shí)現(xiàn)思想4可編輯表示形式含義Available(可用資源數(shù)組)Available[j]=k現(xiàn)有資源j的數(shù)目為kMax(最大需求矩陣)Max[i,j]=k進(jìn)程i對(duì)資源j的最大需求數(shù)目為k
Allocation(分配矩陣)Allocation[i,j]=k進(jìn)程i當(dāng)前已分得的資源j的數(shù)目為kNeed(需求矩陣)Need[i,j]=k進(jìn)程i尚需分配的資源j的數(shù)目為k銀行家算法中的數(shù)據(jù)結(jié)構(gòu)5可編輯銀行家算法當(dāng)Pi發(fā)出資源請(qǐng)求,分配一個(gè)Request向量然后系統(tǒng)按下述流程進(jìn)行執(zhí)行:Requesti:是進(jìn)程Pi的請(qǐng)求向量如果Requesti[j]=K,表示進(jìn)程i需要K個(gè)Rj類型的資源。銀行家算法實(shí)現(xiàn)過程6可編輯7可編輯安全性算法實(shí)現(xiàn)過程安全性算法兩個(gè)向量:Work和Finish
Work表示系統(tǒng)可提供給進(jìn)程繼續(xù)運(yùn)行所需的各類資源數(shù)目(即在分配過程中,系統(tǒng)的可用資源數(shù))。初始值Work∶=Available;
Finish表示系統(tǒng)是否有足夠的資源分配給進(jìn)程i,使之運(yùn)行完成。初始值
Finish[i]:=false當(dāng)有足夠資源分配給進(jìn)程時(shí)Finish[i]:=true8可編輯9可編輯
假定系統(tǒng)中有五個(gè)進(jìn)程{P0,P1,P2,P3,P4}和三類資源{A,B,C},各種資源的數(shù)量分別為10、5、7,在T0時(shí)刻的資源分配情況如下圖所示。
P4P3P2P1P0AvailableA,B,CNeedA,B,CAllocationA,B,CMaxA,B,C進(jìn)程資源情況7,5,33,2,29,0,22,2,24,3,30,1,02,0,03,0,22,1,10,0,27,4,31,2,26,0,00,1,14,3,13,3,2銀行家算法實(shí)例10可編輯(1)T0時(shí)刻系統(tǒng)是否安全?執(zhí)行安全性算法進(jìn)行檢查:
①
向量初值
Work:=Available=(3,3,2);Finish[i]:=false;(i=0,1,…,4)
②
在進(jìn)程集合中找到Need1=(1,2,2)
≤Work
且Finish[1]=false;③
則設(shè)P1順利執(zhí)行完成,從而有:
Work:=Work+Allocation1=(3,3,2)+(2,0,0)=(5,3,2)
Finish[1]:=true銀行家算法實(shí)例11可編輯Chapter3處理機(jī)調(diào)度與死鎖FinishWork+AllocationAllocationNeedWorktrue532200122332P1AllocationNeedP0010743P1200122P2302600P3211011P400243112可編輯Chapter3處理機(jī)調(diào)度與死鎖FinishWork+AllocationAllocationNeedWorktrue743532211011P3true532200122332P1AllocationNeedP0010743P1200122P2302600P3211011P400243113可編輯Chapter3處理機(jī)調(diào)度與死鎖FinishWork+AllocationAllocationNeedWorktrue753743010743true743211011532true532200122332P0P3P1AllocationNeedP0010743P1200122P2302600P3211011P4002431142024/12/2015可編輯Chapter3處理機(jī)調(diào)度與死鎖FinishWork+AllocationAllocationNeedWorktrue1055753true753010743743302600true743211011532true532200122332P0P2P3P1AllocationNeedP0010743P1200122P2302600P3211011P400243116可編輯Chapter3處理機(jī)調(diào)度與死鎖AllocationNeedP0010743P1200122P2302600P3211011P4002431true10570024311055P4FinishWork+AllocationAllocationNeedWorktrue1055753true753010743743302600true743211011532true532200122332P0P2P3P117可編輯
④發(fā)現(xiàn):目前可執(zhí)行的所有資源分配工作完成之后,各個(gè)進(jìn)程對(duì)應(yīng)的狀態(tài)向量Finish[i]=true;且對(duì)應(yīng)于該向量置為“true”的進(jìn)程編號(hào)依次為:1
→3
→
0→
2
→
4,故:系統(tǒng)存在安全序列{P1,P3,P0,P2,P4}
所以,T0
時(shí)刻系統(tǒng)處于安全狀態(tài)!銀行家算法實(shí)例18可編輯Chapter3處理機(jī)調(diào)度與死鎖由分析知:執(zhí)行完P(guān)1、P3
的資源分配請(qǐng)求之后,系統(tǒng)可用的資源數(shù)量可以滿足其它3個(gè)進(jìn)程的資源請(qǐng)求,則此時(shí)的資源分配順序已無關(guān)緊要。所以:安全序列可以不唯一!true10570024311055P4FinishWork+AllocationAllocationNeedWorktrue1055753true753010743743302600true743211011532true532200122332P0P2P3P119可編輯(2)P1發(fā)出請(qǐng)求Request(1,0,2),系統(tǒng)能分配資源嗎?
執(zhí)行銀行家算法:
①
Request1(1,0,2)≤Need1(1,2,2);
②Request1(1,0,2)≤Available(3,3,2);
③系統(tǒng)為P1進(jìn)行預(yù)分配,并修改Available,Allocation1和Need1向量:銀行家算法實(shí)例Request1(1,0,2),Need1,Available20可編輯
Available:=Available-Request1=(3,3,2)-(1,0,2)=(2,3,0)
Allocation1:=Allocation1+Request1=(2,0,0)+(1,0,2)=(3,0,2)
Need1:=Need1-Request1=(1,2,2)-(1,0,2)=(0,2,0)銀行家算法實(shí)例21可編輯
④
執(zhí)行安全性算法:a.Work:=Available=(2,3,0);Finish[i]:=false;在進(jìn)程集合中找到Need1=(0,2,0)
≤Work;b’.在進(jìn)程集合中找到Need3=(0,1,1)
≤Work(5,3,2)
且Finish[3]=false;c.則設(shè)P1可順利執(zhí)行完成,從而有:
Work:=Work+Allocation1=(2,3,0)+(3,0,2)=(5,3,2)
Finish[1]:=true銀行家算法實(shí)例22可編輯c’.則設(shè)P3順利執(zhí)行完成,從而有:
Work:=Work+Allocation3=(5,3,2)+(2,1,1)=(7,4,3)
Finish[3]:=true………執(zhí)行安全性算法檢查時(shí),仍能夠得到安全序列{P1,P3,P0,P2,P4},故請(qǐng)求向量Request1(1,0,2)發(fā)出時(shí)系統(tǒng)安全!銀行家算法實(shí)例23可編輯(3)P4發(fā)出請(qǐng)求Request(3,2,1),系統(tǒng)能分配資源嗎?
執(zhí)行銀行家算法進(jìn)行檢查:①
Request4(3,2,0)≤Need4(4,3,1);②Request4(3,2,1)
Available(2,3,0)
故:P4資源請(qǐng)求失敗,讓其等待?。俱y行家算法實(shí)例24可編輯(4)P0發(fā)出請(qǐng)求Request(0,2,0),系統(tǒng)能分配資源嗎?
執(zhí)行銀行家算法進(jìn)行檢查:
①
Request0(0,2,0)≤Need0(7,4,3);
②Request0(0,2,0)≤Available(2,3,0);
③
系統(tǒng)為P0作預(yù)分配,并修改有關(guān)數(shù)據(jù):銀行家算法實(shí)例25可編輯
Available:=Available-Request0=(2,3,0)-(0,2,0)=(2,1,0)
Allocation0:=Allocation0+Request0=(0,1,0)+(0,2,0)=(0,3,0)
Need0
:=Need0-Request0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年塑料管材項(xiàng)目可行性研究報(bào)告
- 金車實(shí)木地板行業(yè)市場(chǎng)發(fā)展及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 2025年中國自動(dòng)門控制器行業(yè)發(fā)展前景預(yù)測(cè)與投資戰(zhàn)略規(guī)劃分析報(bào)告
- 2024-2025年中國航運(yùn)金融行業(yè)市場(chǎng)調(diào)研分析及投資前景預(yù)測(cè)報(bào)告
- 2025年中國現(xiàn)代快餐市場(chǎng)供需格局及未來發(fā)展趨勢(shì)報(bào)告
- 2025年條塊外墻磚項(xiàng)目可行性研究報(bào)告
- 2025年貴金屬壓延加工材項(xiàng)目投資分析及可行性報(bào)告
- 2024-2029年中國長三角經(jīng)濟(jì)區(qū)行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及投資潛力預(yù)測(cè)報(bào)告
- 2025蛋糕店合作合同范文
- 2025駕駛員勞務(wù)合同范本
- 火化證明格式
- 機(jī)械原理課程設(shè)計(jì)-自動(dòng)蓋章機(jī)
- e乙二醇精制車間設(shè)備布置圖
- 行政強(qiáng)制法講座-PPT課件
- 2022年新媒體編輯實(shí)戰(zhàn)教程測(cè)試題及答案(題庫)
- 崗位現(xiàn)場(chǎng)應(yīng)急處置方案卡全套(全套20頁)
- 涼席竹片銑槽機(jī)(課程設(shè)計(jì))
- 高壓線防護(hù)搭設(shè)方案
- 綜合機(jī)械化固體充填采煤技術(shù)要求-編制說明
- 十人聯(lián)名推薦表
- 七、分蛋糕博弈
評(píng)論
0/150
提交評(píng)論