計(jì)算機(jī)操作系統(tǒng)(第二版)課件:進(jìn)程同步基本概念_第1頁
計(jì)算機(jī)操作系統(tǒng)(第二版)課件:進(jìn)程同步基本概念_第2頁
計(jì)算機(jī)操作系統(tǒng)(第二版)課件:進(jìn)程同步基本概念_第3頁
計(jì)算機(jī)操作系統(tǒng)(第二版)課件:進(jìn)程同步基本概念_第4頁
計(jì)算機(jī)操作系統(tǒng)(第二版)課件:進(jìn)程同步基本概念_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

進(jìn)程同步本節(jié)主要內(nèi)容:進(jìn)程同步的基本概念進(jìn)程同步機(jī)制及應(yīng)用經(jīng)典進(jìn)程同步問題管程機(jī)制Linux同步機(jī)制解析3.4進(jìn)程同步3.4.1進(jìn)程同步的基本概念1.并發(fā)進(jìn)程間的間接制約關(guān)系與進(jìn)程互斥:

間接制約關(guān)系:相互競爭資源一次僅允許一個(gè)進(jìn)程使用的資源稱為臨界資源。硬件:如輸入機(jī)、打印機(jī)、磁帶機(jī)等軟件:如公用變量、數(shù)據(jù)、表格、隊(duì)列等

Word進(jìn)程.doc文檔excel進(jìn)程

.xlsx表格CPU、磁盤打印機(jī)

臨界資源33

A次序:

p1:r1:=x;r1:=r1+1;x:=r1;

p2:r2:=x;r2:=r2+1;x:=r2

;執(zhí)行結(jié)果:

x=11B次序:

p1:r1:=x;r1:=r1+1;x:=r1

;

p2:r2:=x;r2:=r2+1;x:=r2

;執(zhí)行結(jié)果:

x=121、并發(fā)進(jìn)程間的間接制約關(guān)系與進(jìn)程互斥如果按照這個(gè)順序運(yùn)行,X最后的結(jié)果是多少呢?

臨界資源例1:P1和P2兩個(gè)進(jìn)程共享一個(gè)變量x,設(shè)x的初值為10p1:r1:=x;r1:=r1+1;x:=r1

;p2:r2:=x;r2:=r2+1;x:=r2

;共享變量的修改沖突

例2:民航售票系統(tǒng),n個(gè)售票處

/*ProcessPi,i=1,2,...,n*/…../*按訂票要求找到數(shù)據(jù)庫中的共享數(shù)據(jù)x[k]*//*x[k]存放某月某日某次航班的現(xiàn)有票數(shù)*/R=x[k];/*現(xiàn)有票數(shù)*/

if(R>=1){R--;

x[k]=R;

輸出一張機(jī)票;

}else

顯示“票已售完”;若某時(shí)刻x[k]=1,多個(gè)終端同時(shí)售票,可能出現(xiàn)什么結(jié)果?

臨界資源互斥…x

:=x+1;…進(jìn)程P1進(jìn)程P2…x

:=x+1;…3.4.1進(jìn)程同步的概念1.并發(fā)進(jìn)程間的間接制約關(guān)系與進(jìn)程互斥

臨界區(qū):進(jìn)程中訪問臨界資源的一段代碼csa{csb{

臨界區(qū)的互斥訪問過程entrysection進(jìn)入?yún)^(qū)exitsection退出區(qū)

criticalsection(臨界區(qū))remaindersection(剩余區(qū))進(jìn)程代碼互斥3.4.1進(jìn)程同步的概念1.并發(fā)進(jìn)程間的間接制約關(guān)系與進(jìn)程互斥

臨界區(qū):進(jìn)程中訪問臨界資源的一段代碼3.4.1進(jìn)程同步的基本概念2.并發(fā)進(jìn)程間的直接制約關(guān)系與進(jìn)程同步相互協(xié)作,保證先后順序醫(yī)生看病活動(dòng):初步診斷開出化驗(yàn)單;

依據(jù)化驗(yàn)結(jié)果繼續(xù)診??;化驗(yàn)員化驗(yàn)活動(dòng):進(jìn)行化驗(yàn);

開出化驗(yàn)結(jié)果;I→C→P醫(yī)生與化驗(yàn)員之間有哪些前驅(qū)后繼關(guān)系?例1:病人就診:3.4進(jìn)程同步例2:共享緩沖區(qū)的計(jì)算進(jìn)程與打印進(jìn)程的相互協(xié)作

計(jì)算進(jìn)程cp和打印進(jìn)程op公用一個(gè)單緩沖

單緩沖opcpABCDABCD3.4.1進(jìn)程同步的基本概念2.并發(fā)進(jìn)程間的直接制約關(guān)系與進(jìn)程同步:相互協(xié)作進(jìn)程同步:并發(fā)進(jìn)程在一些關(guān)鍵點(diǎn)上可能需要互相等待或互通消息,這種相互制約的等待或互通消息稱為進(jìn)程同步。

CP與OP兩個(gè)進(jìn)程有哪些前驅(qū)后繼關(guān)系?3.4進(jìn)程同步3.4進(jìn)程同步3.4.1進(jìn)程同步的基本概念3.同步機(jī)制應(yīng)遵循的原則空閑讓進(jìn):其他進(jìn)程均不處于臨界區(qū);

忙則等待:已有進(jìn)程處于其臨界區(qū);

有限等待:等待進(jìn)入臨界區(qū)的進(jìn)程不能"死等";

讓權(quán)等待:不能進(jìn)入臨界區(qū)的進(jìn)程,應(yīng)釋放CPU

(如轉(zhuǎn)換到阻塞狀態(tài))以下()屬于臨界資源磁盤存儲(chǔ)介質(zhì)公用隊(duì)列私用數(shù)據(jù)可重用的程序代碼ABCD提交單選題10分一個(gè)正在訪問臨界資源的進(jìn)程由于申請(qǐng)等待I/O操作而被中斷時(shí),它是()可以允許其他進(jìn)程進(jìn)入與該進(jìn)程相關(guān)的臨界區(qū)不允許其他進(jìn)程進(jìn)入任何臨界區(qū)可以允許其他進(jìn)程搶占處理器,但不得進(jìn)入與該進(jìn)程相關(guān)的臨界區(qū)不允許任何進(jìn)程搶占處理器ABCD提交單選題10分進(jìn)程A和進(jìn)程B通過共享緩沖區(qū)協(xié)作完成數(shù)據(jù)處理,進(jìn)程A負(fù)責(zé)產(chǎn)生數(shù)據(jù)并放入緩沖區(qū),進(jìn)程B從緩沖區(qū)讀數(shù)據(jù)并輸出。進(jìn)程A和B之間的制約

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論