




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29操操 作作 系系 統(tǒng)統(tǒng)第第 三三 章章 進(jìn)進(jìn) 程程 管管 理理 一一數(shù)學(xué)與計(jì)算機(jī)學(xué)院數(shù)學(xué)與計(jì)算機(jī)學(xué)院 硬件教研室硬件教研室 曾新曾新數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29本章學(xué)習(xí)目標(biāo)本章學(xué)習(xí)目標(biāo)進(jìn)程的概念進(jìn)程的實(shí)體、狀態(tài)及狀態(tài)的演變進(jìn)程的控制與調(diào)度進(jìn)程之間的關(guān)系協(xié)調(diào)進(jìn)程的通信死鎖問題及解決數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29一、引言:進(jìn)程的初步引入一、引言:進(jìn)程的初步引入現(xiàn)代操作系統(tǒng)的特點(diǎn):程序的并發(fā)執(zhí)行、系統(tǒng)所擁有的資源被共享、系統(tǒng)的用戶隨機(jī)地使用。操作系統(tǒng)的重要任務(wù)之一是使用戶充分、有效地利用系統(tǒng)資源。采用一個(gè)什么樣的概念,來描述計(jì)算機(jī)程序的執(zhí)行過程和作為資源分
2、配的基本單位,才能充分反映操作系統(tǒng)的執(zhí)行并發(fā)、資源共享及用戶隨機(jī)的特點(diǎn)呢?這個(gè)概念就是進(jìn)程進(jìn)程。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29一、引言:處理機(jī)管理一、引言:處理機(jī)管理處理機(jī)管理是操作系統(tǒng)的基本管理功能之一,它所關(guān)心的是處理機(jī)的分配問題。也就是說把CPU(中央處理機(jī))的使用權(quán)分給某個(gè)程序,通常把這個(gè)正準(zhǔn)備進(jìn)入內(nèi)存的程序稱為作業(yè),當(dāng)這個(gè)作業(yè)進(jìn)入內(nèi)存后我們把它稱為進(jìn)程。處理機(jī)管理分為作業(yè)管理和進(jìn)程管理兩個(gè)階段來實(shí)現(xiàn)。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29一、引言:進(jìn)程管理的功能。一、引言:進(jìn)程管理的功能。進(jìn)程管理的主要功能是把處理機(jī)分配給進(jìn)程以及協(xié)調(diào)各個(gè)進(jìn)程之間的相互關(guān)系。它是由進(jìn)程調(diào)度程序和進(jìn)程
3、控制(控制進(jìn)程狀態(tài)轉(zhuǎn)換)程序這兩部分內(nèi)容組成的。 進(jìn)程是操作系統(tǒng)的五大功能之一。1、高級(宏)處理機(jī)管理 即作業(yè)調(diào)度,確定系統(tǒng)中哪些作業(yè)將獲得CPU;2、低級(微)處理機(jī)管理 即進(jìn)程調(diào)度,確定系統(tǒng)中哪個(gè)作業(yè)中的哪個(gè)進(jìn)程將獲得CPU。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:程序二、進(jìn)程的引入:程序 引入進(jìn)程的關(guān)鍵是資源共享,高效管理共享資源是操作系統(tǒng)的重要內(nèi)容。1、程序的順序執(zhí)行及其特性程序是一個(gè)在時(shí)間上按嚴(yán)格次序前后相繼的操作序列,是一個(gè)靜態(tài)的概念。程序體現(xiàn)了編程人員要求計(jì)算機(jī)完成所要求功能時(shí)所應(yīng)該采取的順序步驟。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:串行執(zhí)行二、進(jìn)程
4、的引入:串行執(zhí)行上圖表示每次只能調(diào)度一個(gè)作業(yè)進(jìn)行操作的情況。輸入、計(jì)算、打印輸出工作只能串行執(zhí)行,因而可以把程序的執(zhí)行看做一系列狀態(tài)轉(zhuǎn)換的過程,即每執(zhí)行一個(gè)操作,系統(tǒng)就會(huì)從一個(gè)狀態(tài)轉(zhuǎn)換成另外一個(gè)狀態(tài)。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:程序順序執(zhí)行二、進(jìn)程的引入:程序順序執(zhí)行程序的順序執(zhí)行:一個(gè)具有獨(dú)立功能的程序獨(dú)占處理機(jī)直至最終結(jié)束的過程。從上例可以看出,程序的順序執(zhí)行有一下特點(diǎn): 1、順序性 2、資源獨(dú)占性 3、結(jié)果的無關(guān)性 4、可再現(xiàn)性數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:多道程序系統(tǒng)二、進(jìn)程的引入:多道程序系統(tǒng)在許多情況下,需要計(jì)算機(jī)能夠同時(shí)處理多個(gè)具有獨(dú)立功
5、能的程序。批處理系統(tǒng)、分時(shí)系統(tǒng)、實(shí)時(shí)系統(tǒng)以及網(wǎng)絡(luò)與分布式系統(tǒng)等都是這樣的系統(tǒng)。那么多道程序系統(tǒng)中程序執(zhí)行的特點(diǎn)如下: 1、獨(dú)立性 2、隨機(jī)性 3、資源共享數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:單道和多道二、進(jìn)程的引入:單道和多道數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:資源的共享二、進(jìn)程的引入:資源的共享 操作系統(tǒng)是用來實(shí)現(xiàn)對計(jì)算機(jī)資源進(jìn)行管理的一個(gè)大型系統(tǒng)程序,其基本特征之一就是資源共享。所謂資源共享,就是指計(jì)算機(jī)中并發(fā)執(zhí)行的多個(gè)程序交替使用計(jì)算機(jī)硬件和軟件資源。 資源共享將導(dǎo)致對進(jìn)程執(zhí)行速度的制約。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:程序并發(fā)及其特性二、進(jìn)
6、程的引入:程序并發(fā)及其特性所謂并發(fā)執(zhí)行,是為了增強(qiáng)計(jì)算機(jī)系統(tǒng)的處理能力和提高資源利用率所采取的一種同時(shí)操作技術(shù)。程序的并發(fā)執(zhí)行可進(jìn)一步分為兩種:第一種是多道程序系統(tǒng)的程序執(zhí)行環(huán)境變化所引起的多道程序的并發(fā)執(zhí)行;第二種并發(fā)執(zhí)行是在某道程序的幾個(gè)程序段中(例如幾個(gè)程序),包含著一部分可以同時(shí)執(zhí)行或順序顛倒執(zhí)行的代碼。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:多道程序并發(fā)二、進(jìn)程的引入:多道程序并發(fā)由于資源的有限性,多道程序的并發(fā)執(zhí)行總是伴隨著資源的共享與競爭。從而制約各道程序的執(zhí)行速度。而無法作到在微觀上,也就是在指令級上的同時(shí)執(zhí)行。因此,盡管多道程序的并發(fā)執(zhí)行在宏觀上是同時(shí)進(jìn)行的,但在微
7、觀上仍是順序執(zhí)行的。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:某道程序的多個(gè)程序段并發(fā)二、進(jìn)程的引入:某道程序的多個(gè)程序段并發(fā)在某道程序的幾個(gè)程序段中(例如幾個(gè)程序),包含著一部分可以同時(shí)執(zhí)行或順序顛倒執(zhí)行的代碼。例如語句:read (a) ;read (b) ;它們既可以同時(shí)執(zhí)行,也可顛倒次序執(zhí)行。對于這樣的語句,同時(shí)執(zhí)行不會(huì)改變順序程序所具有的邏輯性質(zhì)。因此,可以采用并發(fā)執(zhí)行來充分利用系統(tǒng)資源以提高計(jì)算機(jī)的處理能力。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:并發(fā)執(zhí)行總結(jié)二、進(jìn)程的引入:并發(fā)執(zhí)行總結(jié)程序的并發(fā)執(zhí)行可總結(jié)為:一組在邏輯上互相獨(dú)立的程序或程序段在執(zhí)行過程中,其
8、執(zhí)行時(shí)間在客觀上互相重疊,即一個(gè)程序段的執(zhí)行尚未結(jié)束,另一個(gè)程序段的執(zhí)行已經(jīng)開始的一種執(zhí)行方式。程序的并發(fā)執(zhí)行不同于程序的并行執(zhí)行。程序的并行執(zhí)行是指一組程序按獨(dú)立的、異步的速度執(zhí)行。并行執(zhí)行不等于時(shí)間上的重疊。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:并發(fā)執(zhí)行的條件二、進(jìn)程的引入:并發(fā)執(zhí)行的條件并發(fā)執(zhí)行過程描述為 :S0Cobegin P1;P2;. PnCoendSn1966年Bernstein 提出了兩相鄰語句S1,S2可以并發(fā)執(zhí)行的條件: 將程序中任一語句Si劃分為兩個(gè)變量的集合R(Si)和W(Si)。 R(Si)=a1 a2 am,aj(j=1,m)是語句Si在執(zhí)行期間必須
9、對其進(jìn)行讀寫的變量; W(Si)=b1 b2 bn,bj(j=1,n)是語句Si在執(zhí)行期間必須對其進(jìn)行修改、訪問的變量;數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:并發(fā)執(zhí)行的條件二、進(jìn)程的引入:并發(fā)執(zhí)行的條件如果對于語句S1和S2,有 R(S1) W(S2)=, W(S1) R(S2)=, W(S1) W(S2)= 同時(shí)成立,則語句S1和S2是可以并發(fā)執(zhí)行的。如果并發(fā)執(zhí)行的各程序段中語句或指令滿足上述Bernstein 的三個(gè)條件,則認(rèn)為并發(fā)執(zhí)行不會(huì)對執(zhí)行結(jié)果的封閉性和可再現(xiàn)性產(chǎn)生影響 。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:例題分析二、進(jìn)程的引入:例題分析如果并發(fā)執(zhí)行的程
10、序段不按照特定的規(guī)則和方法進(jìn)行資源共享和競爭,則其執(zhí)行結(jié)果將不可避免地失去封閉性和可再現(xiàn)性。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:例題分析二、進(jìn)程的引入:例題分析procedure getaddr(top)procedure getaddr(top) begin begin local r local r r (top) r (top) top top-1 top top-1 return(r) return(r) end endprocedure reladdr(blk)procedure reladdr(blk) begin begin top top+1 top top+1
11、 (top) blk (top) blk end end getaddr(top)從給定的top所指棧中取出相應(yīng)的內(nèi)存數(shù)據(jù)塊地址,而reladdr(blk)則將內(nèi)存數(shù)據(jù)塊地址blk放入堆棧S中數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入二、進(jìn)程的引入上例中的程序段并發(fā)執(zhí)行出現(xiàn)錯(cuò)誤結(jié)果是由于兩程序段共享資源堆棧S,從而使得執(zhí)行結(jié)果受執(zhí)行速度影響。一般情況下,并發(fā)執(zhí)行的各程序段如果共享軟、硬件資源,都會(huì)造成其執(zhí)行結(jié)果受執(zhí)行速度影響的局面。 為了控制和協(xié)調(diào)各程序段執(zhí)行過程中的軟、硬件資源的共享和競爭,顯然,必須應(yīng)該有一個(gè)描述各程序段執(zhí)行過程和共享資源的基本單位。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29
12、二、進(jìn)程的引入二、進(jìn)程的引入現(xiàn)代操作系統(tǒng)的重要特點(diǎn)是程序的并發(fā)執(zhí)行,由于程序的順序性、靜態(tài)性以及孤立性,用程序段作為描述其執(zhí)行過程和共享資源的基本單位既增加操作系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)的復(fù)雜性,也無法反映操作系統(tǒng)所應(yīng)該具有的程序段執(zhí)行的并發(fā)性、用戶隨機(jī)性,以及資源共享等特征。因而需要有一個(gè)能描述程序的執(zhí)行過程且能用來共享資源的基本單位。這個(gè)基本單位被稱為進(jìn)程(或任務(wù))。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:多道程序并發(fā)二、進(jìn)程的引入:多道程序并發(fā)為了合理利用系統(tǒng)資源,更好地發(fā)揮各種資源的效益,使各種物理設(shè)備之間的時(shí)間性限制條件減少到最低限度,最大限度地提高系統(tǒng)的效率,因而引出了多道程序方法。
13、其實(shí)質(zhì)是減少程序的順序性,提高系統(tǒng)的并行性。多道程序并發(fā)執(zhí)行的特點(diǎn): 1、資源分配的動(dòng)態(tài)性 2、程序執(zhí)行的間斷性 3、程序間的通訊 4、程序間的同步和互斥 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:順序與并發(fā)的比較二、進(jìn)程的引入:順序與并發(fā)的比較順序執(zhí)行順序執(zhí)行并發(fā)執(zhí)行并發(fā)執(zhí)行程序順序執(zhí)行間斷執(zhí)行,多個(gè)程序各自在“走走停停”中進(jìn)行程序具有封閉性程序失去封閉性獨(dú)占資源共享資源可再現(xiàn)性失去可再現(xiàn)性有直接和間接的相互制約數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的定義二、進(jìn)程的引入:進(jìn)程的定義進(jìn)程是現(xiàn)代操作系統(tǒng)的一個(gè)基本概念,是并發(fā)程序出現(xiàn)后出現(xiàn)的一個(gè)重要概念,它是指程序在一個(gè)數(shù)
14、據(jù)集合上運(yùn)行的過程,是系統(tǒng)進(jìn)行資源分配和調(diào)度運(yùn)行的一個(gè)獨(dú)立單位,有時(shí)也稱為活動(dòng)活動(dòng)、路徑或任務(wù)路徑或任務(wù)。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的定義二、進(jìn)程的引入:進(jìn)程的定義一個(gè)具有獨(dú)立功能的程序?qū)δ硞€(gè)數(shù)據(jù)集在處理機(jī)上的執(zhí)行過程和分配資源的基本單位。主要注重進(jìn)程是一個(gè)動(dòng)態(tài)的執(zhí)行過程這一概念。在傳統(tǒng)的操作系統(tǒng)設(shè)計(jì)中,進(jìn)程既是基本的分配單元,也是基本的執(zhí)行單元。這里,程序指一組操作序列,而數(shù)據(jù)集則是接受程序規(guī)定操作的一組存儲(chǔ)單元的內(nèi)容。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程與程序的聯(lián)系和區(qū)別二、進(jìn)程的引入:進(jìn)程與程序的聯(lián)系和區(qū)別1、進(jìn)程是一個(gè)動(dòng)態(tài)概念,而程序則是一
15、個(gè)靜態(tài)概念。程序是指令的有序集合,沒有任何執(zhí)行的含義。而進(jìn)程則強(qiáng)調(diào)執(zhí)行過程,它動(dòng)態(tài)地被創(chuàng)建,并被調(diào)度執(zhí)行后消亡。2、進(jìn)程具有并行特征,而程序沒有。由進(jìn)程的定義可知,進(jìn)程具有并行特征的兩個(gè)方面,即獨(dú)立性和異步性。也就是說,在不考慮資源共享的情況下,各進(jìn)程的執(zhí)行是獨(dú)立的,執(zhí)行速度是異步的。顯然,由于程序不反映執(zhí)行過程,所以不具有并行特征。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程與程序的聯(lián)系和區(qū)別二、進(jìn)程的引入:進(jìn)程與程序的聯(lián)系和區(qū)別 3、進(jìn)程是競爭計(jì)算機(jī)系統(tǒng)資源的基本單位,從而其并行性受到系統(tǒng)自己的制約,只有進(jìn)程才可能在不同的時(shí)刻處于幾種不同的狀態(tài),即等待、就緒、運(yùn)行。 4、不同的進(jìn)
16、程可以包含同一程序,只要該程序所對應(yīng)的數(shù)據(jù)集不同。同一程序運(yùn)行于若干不同的數(shù)據(jù)集合上時(shí),它將屬于若干個(gè)不同的進(jìn)程,或者說,兩個(gè)不同的進(jìn)程可包含相同的程序; 5、從微觀上看,進(jìn)程是輪換地占有處理機(jī)而運(yùn)行的,從宏觀上看,進(jìn)程是并發(fā)地運(yùn)行的。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:作業(yè)與進(jìn)程的聯(lián)系和區(qū)別二、進(jìn)程的引入:作業(yè)與進(jìn)程的聯(lián)系和區(qū)別作業(yè)是用戶需要計(jì)算機(jī)完成某項(xiàng)任務(wù)時(shí)要求計(jì)算機(jī)所作工作的集合。進(jìn)程是已提交完畢程序的執(zhí)行過程的描述,是資源分配的基本單位。作業(yè)是用戶向計(jì)算機(jī)提交任務(wù)的任務(wù)實(shí)體。在用戶向計(jì)算機(jī)提交作業(yè)之后,系統(tǒng)將它放入外存中的作業(yè)等待隊(duì)列中等待執(zhí)行。而進(jìn)程則是完成用戶任務(wù)的
17、執(zhí)行實(shí)體,是向系統(tǒng)申請分配資源的基本單位。任一進(jìn)程,只要它被創(chuàng)建,總有相應(yīng)的部分存在于內(nèi)存中。 一個(gè)作業(yè)可由多個(gè)進(jìn)程組成。且必須至少由一個(gè)進(jìn)程組成,但反過來不成立。作業(yè)的概念主要用在批處理系統(tǒng)中。而進(jìn)程的概念則用在幾乎所有的多道系統(tǒng)中。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的二、進(jìn)程的引入:進(jìn)程的5個(gè)基本特征個(gè)基本特征1、動(dòng)態(tài)性:進(jìn)程是程序在并發(fā)系統(tǒng)的一次執(zhí)行,一個(gè)進(jìn)程有一個(gè)從產(chǎn)生到消失的生命期;2、并發(fā)性:正是為了描述程序在并發(fā)系統(tǒng)內(nèi)執(zhí)行的動(dòng)態(tài)特征才引入了進(jìn)程,沒有并發(fā)就沒有進(jìn)程;3、獨(dú)立性:每個(gè)進(jìn)程的程序都是相對獨(dú)立的順序程序,可以按自己的方向和速度獨(dú)立地向前推進(jìn);4、制
18、約性:進(jìn)程之間的相互制約,主要表現(xiàn)在互斥地使用資源和相關(guān)進(jìn)程之間必要的同步和通訊;5、結(jié)構(gòu)性:進(jìn)程=PCB(進(jìn)程控制塊)+程序+數(shù)據(jù)集合。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入二、進(jìn)程的引入引入進(jìn)程的目的是為了描述程序動(dòng)態(tài)執(zhí)行時(shí)的活動(dòng)規(guī)律和狀態(tài)變化。進(jìn)程和程序是既有聯(lián)系又有區(qū)別的兩個(gè)概念,它們的主要區(qū)別如下:1、程序是指令的有序集合,是一個(gè)靜態(tài)的概念,而進(jìn)程是程序在CPU上的一次執(zhí)行過程,它是一個(gè)動(dòng)態(tài)概念。2、程序的存在是永久的。而進(jìn)程則是有生命期的,它因創(chuàng)建而產(chǎn)生,因調(diào)度而執(zhí)行,因得不到資源而暫停,因撤銷而消亡。3、程序僅是指令的有序集合,而進(jìn)程則由程序、數(shù)據(jù)和進(jìn)程控制塊組成。4、
19、進(jìn)程和程序無一一對應(yīng)關(guān)系,即同一個(gè)程序同時(shí)運(yùn)行于若干不同的數(shù)據(jù)集合上,它將屬于若干個(gè)不同的進(jìn)程。而一個(gè)進(jìn)程可以執(zhí)行多個(gè)程序。5、進(jìn)程可以生成其他進(jìn)程,而程序不能生成新的程序。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的分類及區(qū)別二、進(jìn)程的引入:進(jìn)程的分類及區(qū)別進(jìn)程通常分為兩類,一類是系統(tǒng)進(jìn)程,另一類是用戶進(jìn)程。它們的區(qū)別是: 1、系統(tǒng)進(jìn)程是操作系統(tǒng)用來管理系統(tǒng)資源并行活動(dòng)的并發(fā)軟件。 2、系統(tǒng)進(jìn)程之間的關(guān)系由操作系統(tǒng)自己負(fù)責(zé)。 3、系統(tǒng)進(jìn)程直接管理有關(guān)的軟、硬設(shè)備的活動(dòng)。 4、在進(jìn)程調(diào)度中,系統(tǒng)進(jìn)程的優(yōu)先級高于用戶進(jìn)程。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程狀態(tài)圖二
20、、進(jìn)程的引入:進(jìn)程狀態(tài)圖在進(jìn)程的生命期內(nèi),一個(gè)進(jìn)程至少具有三種基本狀態(tài),它們是:執(zhí)行狀態(tài)、等待狀態(tài)和就緒狀態(tài)。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程狀態(tài)的解釋二、進(jìn)程的引入:進(jìn)程狀態(tài)的解釋1、運(yùn)行狀態(tài):進(jìn)程正在處理機(jī)上運(yùn)行的狀態(tài),該進(jìn)程已獲得必要的資源,也獲得了處理機(jī),用戶程序正在處理機(jī)上運(yùn)行。2、等待狀態(tài):進(jìn)程等待某種事件完成(例如,等待輸入/輸出操作的完成)而暫時(shí)不能運(yùn)行的狀態(tài),處于該狀態(tài)的進(jìn)程不能參加競爭處理機(jī),此時(shí),即使分配給它處理機(jī),它也不能運(yùn)行。3、就緒狀態(tài):該進(jìn)程運(yùn)行所需的一切條件都得到滿足,但因處理機(jī)資源個(gè)數(shù)少于進(jìn)程個(gè)數(shù),所以該進(jìn)程不能運(yùn)行,而必須等待分配處理機(jī)
21、資源,一旦獲得處理機(jī)就立即投入運(yùn)行。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程狀態(tài)的轉(zhuǎn)換二、進(jìn)程的引入:進(jìn)程狀態(tài)的轉(zhuǎn)換1、CPU調(diào)度(低級調(diào)度):一個(gè)進(jìn)程到CPU上運(yùn)行,該進(jìn)程就從就緒狀態(tài)變?yōu)檫\(yùn)行狀態(tài);與此同時(shí),原運(yùn)行進(jìn)程從運(yùn)行狀態(tài)變?yōu)榫途w狀態(tài)。因此,這兩種狀態(tài)變化是同時(shí)發(fā)生的。2、進(jìn)程在運(yùn)行過程中需要等待某一事件,例如,等待分配某一資源,等待I/O操作完成等。一個(gè)進(jìn)程在需要等待某一事件時(shí)主動(dòng)退出CPU,并使自己處于阻塞狀態(tài)(等待狀態(tài)),引起狀態(tài)變化。3、如果進(jìn)程所等待的事件發(fā)生了變化,例如,一次I/O完成了,于是進(jìn)程便被解除阻塞狀態(tài),變?yōu)榫途w狀態(tài)。一個(gè)具體的進(jìn)程在任何一個(gè)指定的時(shí)
22、刻必須而且只能處于一種狀態(tài)。 數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-291、進(jìn)程之間的狀態(tài)轉(zhuǎn)換并非都是可逆的,進(jìn)程既不能從等待變?yōu)檫\(yùn)行,也不能從就緒變?yōu)榈却?、進(jìn)程之間的狀態(tài)轉(zhuǎn)換并非都是主動(dòng)的,在很多情況下都是“它動(dòng)的”。 事實(shí)上,只有運(yùn)行到等待的轉(zhuǎn)換是進(jìn)程的主動(dòng)行為(主動(dòng)調(diào)用調(diào)度管理程序),其它都是它動(dòng)的,例如,從執(zhí)行到就緒,通常是時(shí)鐘中斷引起的,從等待到就緒,是一個(gè)進(jìn)程把另一個(gè)進(jìn)程喚醒。就緒狀態(tài)變化到運(yùn)行狀態(tài) 。運(yùn)行狀態(tài)變化到就緒狀態(tài)。 運(yùn)行狀態(tài)變化到等待狀態(tài)。 等待狀態(tài)變化到就緒狀態(tài)。二、進(jìn)程的引入:進(jìn)程狀態(tài)的轉(zhuǎn)換二、進(jìn)程的引入:進(jìn)程狀態(tài)的轉(zhuǎn)換數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:
23、掛起與激活二、進(jìn)程的引入:掛起與激活在具有掛起和激活的系統(tǒng)中,又增加了兩種基本的進(jìn)程狀態(tài):靜止就緒和靜止阻塞。 靜止就緒:它是活動(dòng)就緒進(jìn)程由其自身或其他進(jìn)程調(diào)用掛起原語而進(jìn)入的一種狀態(tài)。處于靜止就緒狀態(tài)的進(jìn)程沒有資格爭用CPU,只有其他進(jìn)程調(diào)用激活原語將其激活才行。靜止阻塞:它是活動(dòng)等待進(jìn)程由其自身或其他進(jìn)程調(diào)用掛起原語而進(jìn)入的一種狀態(tài)。處于靜止阻塞狀態(tài)的進(jìn)程,在其掛起期間并不影響其等待事件的發(fā)生。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:掛起與激活示意圖二、進(jìn)程的引入:掛起與激活示意圖數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的描述及二、進(jìn)程的引入:進(jìn)程的描述及PCB進(jìn)程
24、的靜態(tài)描述由三部分組成:進(jìn)程控制塊PCB,有關(guān)程序段和該程序段對其進(jìn)行操作的數(shù)據(jù)結(jié)構(gòu)集。進(jìn)程控制塊(pcb)包含了有關(guān)進(jìn)程的描述信息、控制信息以及資源信息,是進(jìn)程動(dòng)態(tài)特征的集中反映。系統(tǒng)根據(jù)PCB感知進(jìn)程的存在和通過PCB中所包含的各項(xiàng)變量的變化,掌握進(jìn)程所處的狀態(tài)以達(dá)到控制進(jìn)程活動(dòng)的目的。由于進(jìn)程的PCB 是系統(tǒng)感知進(jìn)程的唯一實(shí)體,因此,在幾乎所有的多道操作系統(tǒng)中,一個(gè)進(jìn)程的PCB結(jié)構(gòu)都是全部或部分常駐內(nèi)存的。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的描述及二、進(jìn)程的引入:進(jìn)程的描述及PCB進(jìn)程的程序部分描述進(jìn)程所要完成的功能。而數(shù)據(jù)結(jié)構(gòu)集是程序在執(zhí)行時(shí)必不可少的工作區(qū)和操作對象。這兩部分是進(jìn)程完成所需功能的物質(zhì)基礎(chǔ)。由于進(jìn)程的這兩部分內(nèi)容與控制進(jìn)程的執(zhí)行及完成進(jìn)程功能直接有關(guān),因而,在大部分多道操作系統(tǒng)中,這兩部分內(nèi)容放在外存中,直到該進(jìn)程執(zhí)行時(shí)再調(diào)入內(nèi)存。數(shù)學(xué)與計(jì)算機(jī)學(xué)院2022-3-29二、進(jìn)程的引入:進(jìn)程的結(jié)構(gòu)二、進(jìn)程的引入:進(jìn)程的結(jié)構(gòu)進(jìn)程名進(jìn)程名當(dāng)前狀態(tài)當(dāng)前狀態(tài)優(yōu)先數(shù)優(yōu)先數(shù)現(xiàn)場保留區(qū)現(xiàn)場保留區(qū)指示處于同一狀態(tài)進(jìn)程的鏈指針指示處于同一狀態(tài)進(jìn)程的鏈指針資源清單資源清單進(jìn)程起始地址進(jìn)程起始地址家族關(guān)系家族關(guān)系其他其他PCBPCB程程序序段段私有私有數(shù)據(jù)塊數(shù)據(jù)塊進(jìn)程的結(jié)構(gòu):進(jìn)程的結(jié)構(gòu):進(jìn)程控制塊的進(jìn)程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 技術(shù)員轉(zhuǎn)正工作總結(jié)模版
- 供貨瓷磚合同范例
- 會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)基礎(chǔ)復(fù)習(xí)重點(diǎn)知識總結(jié)模版
- 企業(yè)贊助演出合同范例
- 醫(yī)療行業(yè)績效評估的未來趨勢與挑戰(zhàn)
- 侵權(quán)模仿責(zé)任合同范例
- 醫(yī)院后勤物資管理的透明化改革
- 醫(yī)院文化建設(shè)的核心價(jià)值觀及其實(shí)踐路徑
- 區(qū)塊鏈驅(qū)動(dòng)的跨境貿(mào)易融資解決方案
- 醫(yī)療設(shè)備行業(yè)趨勢預(yù)測與戰(zhàn)略規(guī)劃
- 護(hù)士招考三基試題及答案
- 第32屆全國中學(xué)生物理競賽復(fù)賽試題
- 2025年中國腫瘤專科醫(yī)院行業(yè)市場規(guī)模及未來投資方向研究報(bào)告
- 抗腫瘤藥物的常見不良反應(yīng)及相應(yīng)對策
- 統(tǒng)編版語文四年級下冊第五單元教材解讀解讀與集體備課課件
- 2025年度繼續(xù)教育公需科目(AI工具學(xué)習(xí)與運(yùn)用)考試試題(滿分版含答案)
- 課題申報(bào)書:面向智能時(shí)代的中學(xué)生科學(xué)素養(yǎng)評價(jià)標(biāo)準(zhǔn)研究
- 2025新生兒高膽紅素血癥診治指南解讀課件
- 車抵押車合同協(xié)議
- 2025年保密觀考試題庫及答案
- 2025年FRM金融風(fēng)險(xiǎn)管理師考試金融風(fēng)險(xiǎn)管理法規(guī)試卷
評論
0/150
提交評論