操作系統(tǒng)陸麗娜版課件_第1頁(yè)
操作系統(tǒng)陸麗娜版課件_第2頁(yè)
操作系統(tǒng)陸麗娜版課件_第3頁(yè)
操作系統(tǒng)陸麗娜版課件_第4頁(yè)
操作系統(tǒng)陸麗娜版課件_第5頁(yè)
已閱讀5頁(yè),還剩81頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2022-5-261第二章第二章 進(jìn)程與線程進(jìn)程與線程進(jìn)程的基本概念進(jìn)程的基本概念線程的基本概念線程的基本概念2一、進(jìn)程的基本概念一、進(jìn)程的基本概念1.1.進(jìn)程的引入進(jìn)程的引入2.2.進(jìn)程的定義進(jìn)程的定義3.3.進(jìn)程的特征進(jìn)程的特征4.4.進(jìn)程的狀態(tài)及其轉(zhuǎn)換進(jìn)程的狀態(tài)及其轉(zhuǎn)換5.5.進(jìn)程控制塊進(jìn)程控制塊6.6.進(jìn)程的控制進(jìn)程的控制31.1.進(jìn)程的引入進(jìn)程的引入n(1 1)順序程序)順序程序n順序順序環(huán)境環(huán)境: 計(jì)算機(jī)系統(tǒng)中只有一個(gè)程序在運(yùn)行計(jì)算機(jī)系統(tǒng)中只有一個(gè)程序在運(yùn)行 該程序獨(dú)占系統(tǒng)中所有資源該程序獨(dú)占系統(tǒng)中所有資源 其執(zhí)行不受外界影響其執(zhí)行不受外界影響 I I1 1C C1 1P P1 1

2、I Ii iC Ci iP Pi iI In nC C P Pn n.n n作業(yè)作業(yè) 1 1作業(yè)作業(yè) i i作業(yè)作業(yè) n n作作業(yè)業(yè)執(zhí)執(zhí)行行順順序序程序順序執(zhí)行程序順序執(zhí)行4順序程序(續(xù))順序程序(續(xù))特點(diǎn):特點(diǎn):n順序性順序性: : 一個(gè)程序在順序處理器上的執(zhí)行是嚴(yán)格按一個(gè)程序在順序處理器上的執(zhí)行是嚴(yán)格按序的,即每個(gè)操作必須在下一個(gè)操作開(kāi)始之前結(jié)束。序的,即每個(gè)操作必須在下一個(gè)操作開(kāi)始之前結(jié)束。n封閉性封閉性: : 程序一旦開(kāi)始執(zhí)行,其計(jì)算結(jié)果不受外界程序一旦開(kāi)始執(zhí)行,其計(jì)算結(jié)果不受外界的影響,當(dāng)程序的初始條件給定之后,其后的狀態(tài)的影響,當(dāng)程序的初始條件給定之后,其后的狀態(tài)只能由程序本身確定

3、,即只有本程序才能改變它。只能由程序本身確定,即只有本程序才能改變它。n計(jì)算過(guò)程的可再現(xiàn)性計(jì)算過(guò)程的可再現(xiàn)性: : 只要程序的初始條件相同,只要程序的初始條件相同,它的執(zhí)行結(jié)果是相同的,不論它在什么時(shí)間執(zhí)行,它的執(zhí)行結(jié)果是相同的,不論它在什么時(shí)間執(zhí)行,也不管計(jì)算機(jī)的運(yùn)行速度。也不管計(jì)算機(jī)的運(yùn)行速度。n給程序的編制、調(diào)試帶來(lái)很大方便,其缺點(diǎn)是計(jì)給程序的編制、調(diào)試帶來(lái)很大方便,其缺點(diǎn)是計(jì)算機(jī)系統(tǒng)效率不高。算機(jī)系統(tǒng)效率不高。 5(2 2)并發(fā)程序)并發(fā)程序n并發(fā)環(huán)境:并發(fā)環(huán)境: 一定時(shí)間內(nèi),物理機(jī)器上有兩個(gè)或兩個(gè)一定時(shí)間內(nèi),物理機(jī)器上有兩個(gè)或兩個(gè) 以的程序同處于開(kāi)始運(yùn)行但尚未結(jié)束的以的程序同處于開(kāi)始

4、運(yùn)行但尚未結(jié)束的 狀態(tài),并且次序不是事先確定的狀態(tài),并且次序不是事先確定的n引入并發(fā)的目的:引入并發(fā)的目的: 提高資源利用率,從而提高系統(tǒng)效率提高資源利用率,從而提高系統(tǒng)效率6(2 2)并發(fā)程序(續(xù))并發(fā)程序(續(xù)1 1)I I1 1 I I2 2I I3 3 I I4 4 1 1 2 2 4 4 C C1 1C C2 2C C3 3C C4 4 P P1 1P P2 2P P3 3P P4 4 . . 程序并發(fā)執(zhí)行程序并發(fā)執(zhí)行t t1 1i ic cp pt t2 2t t3 3t t4 4時(shí)間時(shí)間進(jìn)程進(jìn)程7程序并發(fā)執(zhí)行(定義)程序并發(fā)執(zhí)行(定義)n程序并發(fā)執(zhí)行:程序并發(fā)執(zhí)行: 若干個(gè)程序段同

5、時(shí)在系統(tǒng)中運(yùn)行,這些程若干個(gè)程序段同時(shí)在系統(tǒng)中運(yùn)行,這些程序的執(zhí)行在序的執(zhí)行在時(shí)間上是重迭的時(shí)間上是重迭的,一個(gè)程序段,一個(gè)程序段的執(zhí)行尚未結(jié)束,另一個(gè)程序段的執(zhí)行已的執(zhí)行尚未結(jié)束,另一個(gè)程序段的執(zhí)行已經(jīng)開(kāi)始,即使這種重迭是很小的,也稱這經(jīng)開(kāi)始,即使這種重迭是很小的,也稱這幾個(gè)程序段是并發(fā)執(zhí)行的。幾個(gè)程序段是并發(fā)執(zhí)行的。8程序并發(fā)執(zhí)行的描述程序并發(fā)執(zhí)行的描述n程序并發(fā)執(zhí)行的描述程序并發(fā)執(zhí)行的描述cobegincobegin S S1 1;S;S2 2;S;S3 3;.;S;.;SN Ncoendcoend; ; 其中其中S Si i(i(i=1,2,3,.,n)=1,2,3,.,n)表示表示n

6、 n個(gè)語(yǔ)句(程個(gè)語(yǔ)句(程序段),這序段),這n n個(gè)語(yǔ)句用個(gè)語(yǔ)句用cobegincobegin和和coendcoend括括起來(lái)起來(lái)表示這表示這n n個(gè)語(yǔ)句是可以并發(fā)執(zhí)行的個(gè)語(yǔ)句是可以并發(fā)執(zhí)行的。 說(shuō)明:說(shuō)明:coco是是concurrentconcurrent的頭兩個(gè)字符。的頭兩個(gè)字符。9并發(fā)程序(續(xù)并發(fā)程序(續(xù)3 3)特點(diǎn):特點(diǎn):(1 1)程序執(zhí)行結(jié)果的不可再現(xiàn)性)程序執(zhí)行結(jié)果的不可再現(xiàn)性 并發(fā)程序執(zhí)行的結(jié)果與其執(zhí)行的相對(duì)速度有關(guān),并發(fā)程序執(zhí)行的結(jié)果與其執(zhí)行的相對(duì)速度有關(guān), 是不確定的是不確定的(2 2)程序和計(jì)算不再一一對(duì)應(yīng))程序和計(jì)算不再一一對(duì)應(yīng) (計(jì)算:一個(gè)程序的執(zhí)行)(計(jì)算:一個(gè)程序

7、的執(zhí)行)(3 3)獨(dú)立性和制約性)獨(dú)立性和制約性 獨(dú)立的相對(duì)速度、起始時(shí)間;獨(dú)立的相對(duì)速度、起始時(shí)間; 進(jìn)程之間可相互作用(制約)進(jìn)程之間可相互作用(制約) 見(jiàn)圖見(jiàn)圖2-32-3見(jiàn)圖見(jiàn)圖2-42-410終端2 程序 P2 排隊(duì)等待售票 if X1 then begin X=X-1 售票 end else 無(wú)票終端1 程序 P1 排隊(duì)等待售票 if X1 then begin X=X-1 售票 end else 無(wú)票見(jiàn)圖見(jiàn)圖2-32-311C語(yǔ)言編譯程序BAF1.c源程序源程序F2.cP2P1見(jiàn)圖見(jiàn)圖2-42-412(3 3)進(jìn)程的引入)進(jìn)程的引入nOSOS基本特征是并發(fā)與共享,即在系統(tǒng)中(內(nèi)存

8、)基本特征是并發(fā)與共享,即在系統(tǒng)中(內(nèi)存)同時(shí)存在幾個(gè)相互獨(dú)立的程序,他們交叉地運(yùn)同時(shí)存在幾個(gè)相互獨(dú)立的程序,他們交叉地運(yùn)行,并共享資源,這就會(huì)引起下列問(wèn)題行,并共享資源,這就會(huì)引起下列問(wèn)題: :n資源的競(jìng)爭(zhēng)資源的競(jìng)爭(zhēng)n程序之間的合作與協(xié)同程序之間的合作與協(xié)同n程序之間的通信等程序之間的通信等n要解決這些問(wèn)題,用程序的概念已經(jīng)不能描述要解決這些問(wèn)題,用程序的概念已經(jīng)不能描述程序在內(nèi)存中運(yùn)行的狀態(tài),必須引入新的概念程序在內(nèi)存中運(yùn)行的狀態(tài),必須引入新的概念進(jìn)程進(jìn)程132.2.進(jìn)程的定義進(jìn)程的定義定義:定義:ProcessProcessn進(jìn)程是程序的一次執(zhí)行過(guò)程,是系統(tǒng)進(jìn)行資進(jìn)程是程序的一次執(zhí)行過(guò)程

9、,是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)基本單位。源分配和調(diào)度的一個(gè)基本單位。MITMIT稱進(jìn)程稱進(jìn)程(process)(process), MassachusettesMassachusettes Institute of Technology Institute of Technology ( (美國(guó)美國(guó)) )麻省理工學(xué)院麻省理工學(xué)院 IBM IBM 公司稱任務(wù)(公司稱任務(wù)(task task )UnivacUnivac公司稱活動(dòng)(公司稱活動(dòng)(active active )142.2.進(jìn)程的定義進(jìn)程的定義進(jìn)程是程序的一次執(zhí)行進(jìn)程是程序的一次執(zhí)行進(jìn)程可以和別的計(jì)算并發(fā)執(zhí)行的計(jì)算進(jìn)程可以和別的計(jì)算并發(fā)

10、執(zhí)行的計(jì)算進(jìn)程可定義為一個(gè)數(shù)據(jù)結(jié)構(gòu)及能在其上進(jìn)行操進(jìn)程可定義為一個(gè)數(shù)據(jù)結(jié)構(gòu)及能在其上進(jìn)行操作的一個(gè)程序作的一個(gè)程序進(jìn)程是一個(gè)程序及其數(shù)據(jù)在處理機(jī)上順序執(zhí)行進(jìn)程是一個(gè)程序及其數(shù)據(jù)在處理機(jī)上順序執(zhí)行時(shí)所發(fā)生的活動(dòng)時(shí)所發(fā)生的活動(dòng)進(jìn)程是程序在一個(gè)數(shù)據(jù)集合上的運(yùn)行過(guò)程,是進(jìn)程是程序在一個(gè)數(shù)據(jù)集合上的運(yùn)行過(guò)程,是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。153.3.進(jìn)程的特征進(jìn)程的特征n動(dòng)態(tài)性:有生命周期動(dòng)態(tài)性:有生命周期n并發(fā)性:并發(fā)執(zhí)行并發(fā)性:并發(fā)執(zhí)行n獨(dú)立性:獨(dú)立獲得資源、獨(dú)立運(yùn)行單位獨(dú)立性:獨(dú)立獲得資源、獨(dú)立運(yùn)行單位n異步性:推進(jìn)速度不可預(yù)知、執(zhí)行結(jié)果不確異步性:

11、推進(jìn)速度不可預(yù)知、執(zhí)行結(jié)果不確定定n結(jié)構(gòu)性:由程序段、數(shù)據(jù)段和結(jié)構(gòu)性:由程序段、數(shù)據(jù)段和PCBPCB組成組成16問(wèn)題問(wèn)題程序與進(jìn)程之間的聯(lián)系與區(qū)別?程序與進(jìn)程之間的聯(lián)系與區(qū)別?n聯(lián)系聯(lián)系 進(jìn)程由程序組成進(jìn)程由程序組成 進(jìn)程執(zhí)行程序進(jìn)程執(zhí)行程序n區(qū)別區(qū)別 靜態(tài)靜態(tài)- - 動(dòng)態(tài)動(dòng)態(tài) 永久永久- - 暫時(shí)暫時(shí) 一個(gè)程序?qū)?yīng)多個(gè)進(jìn)程一個(gè)程序?qū)?yīng)多個(gè)進(jìn)程/ /一個(gè)進(jìn)程包括多個(gè)程序一個(gè)進(jìn)程包括多個(gè)程序 174. 4. 進(jìn)程的狀態(tài)及其轉(zhuǎn)換進(jìn)程的狀態(tài)及其轉(zhuǎn)換(1 1)進(jìn)程的三種基本狀態(tài):)進(jìn)程的三種基本狀態(tài):n運(yùn)行態(tài)(運(yùn)行態(tài)(RunningRunning):):n就緒態(tài)(就緒態(tài)(ReadyReady):):

12、n等待態(tài)(等待態(tài)(BlockedBlocked):阻塞態(tài)、封鎖態(tài)、睡眠態(tài)):阻塞態(tài)、封鎖態(tài)、睡眠態(tài) 進(jìn)程在生命消亡前處于進(jìn)程在生命消亡前處于且僅處于三種基本狀態(tài)且僅處于三種基本狀態(tài)之一之一18(2 2)三種基本狀態(tài)及其轉(zhuǎn)換)三種基本狀態(tài)及其轉(zhuǎn)換 進(jìn)程狀態(tài)轉(zhuǎn)換:進(jìn)程狀態(tài)轉(zhuǎn)換:n就緒就緒運(yùn)行(進(jìn)程調(diào)度)運(yùn)行(進(jìn)程調(diào)度)n運(yùn)行運(yùn)行就緒(時(shí)間片到等)就緒(時(shí)間片到等)n運(yùn)行運(yùn)行等待(服務(wù)請(qǐng)求,如請(qǐng)求等待(服務(wù)請(qǐng)求,如請(qǐng)求I/OI/O等)等)n等待等待就緒(服務(wù)完成就緒(服務(wù)完成/ /事件來(lái)到)事件來(lái)到)就緒就緒運(yùn)行運(yùn)行阻塞阻塞I I/ /O O完成或等完成或等待的事件發(fā)生待的事件發(fā)生I I/ /O O

13、請(qǐng)求或請(qǐng)求或等待某事件等待某事件時(shí)間片已用完時(shí)間片已用完進(jìn)程調(diào)度程序把處進(jìn)程調(diào)度程序把處理器分配給進(jìn)程理器分配給進(jìn)程19(3 3)五種狀態(tài)進(jìn)程模型)五種狀態(tài)進(jìn)程模型n在三種基本狀態(tài)中增加掛起狀態(tài)和激活狀態(tài)在三種基本狀態(tài)中增加掛起狀態(tài)和激活狀態(tài) 引入掛起狀態(tài)的原因:引入掛起狀態(tài)的原因:n用戶要求用戶要求n負(fù)荷調(diào)節(jié)負(fù)荷調(diào)節(jié)n父進(jìn)程請(qǐng)求父進(jìn)程請(qǐng)求20引起進(jìn)程掛起的原因引起進(jìn)程掛起的原因系統(tǒng)中的系統(tǒng)中的進(jìn)程均處于等待狀態(tài)進(jìn)程均處于等待狀態(tài),處理器空閑,此時(shí)需要,處理器空閑,此時(shí)需要把一些阻塞進(jìn)程對(duì)換出去,以騰出足夠的內(nèi)存裝入就緒把一些阻塞進(jìn)程對(duì)換出去,以騰出足夠的內(nèi)存裝入就緒進(jìn)程運(yùn)行。進(jìn)程運(yùn)行。 進(jìn)程

14、競(jìng)爭(zhēng)資源,導(dǎo)致系統(tǒng)資源不足,負(fù)荷過(guò)重,此時(shí)進(jìn)程競(jìng)爭(zhēng)資源,導(dǎo)致系統(tǒng)資源不足,負(fù)荷過(guò)重,此時(shí) 需要掛起部分進(jìn)程以需要掛起部分進(jìn)程以調(diào)整系統(tǒng)負(fù)荷調(diào)整系統(tǒng)負(fù)荷,保證系統(tǒng)的實(shí)時(shí),保證系統(tǒng)的實(shí)時(shí) 性或讓系統(tǒng)正常運(yùn)行。性或讓系統(tǒng)正常運(yùn)行。 把一些定期執(zhí)行的進(jìn)程(如審計(jì)程序、監(jiān)控程序和記把一些定期執(zhí)行的進(jìn)程(如審計(jì)程序、監(jiān)控程序和記 賬程序)賬程序)對(duì)換出去對(duì)換出去,以減輕系統(tǒng)負(fù)荷。,以減輕系統(tǒng)負(fù)荷。21 用戶要求掛起自己的進(jìn)程用戶要求掛起自己的進(jìn)程,以便根據(jù)中間執(zhí)行,以便根據(jù)中間執(zhí)行 情況和中間結(jié)果進(jìn)行某些調(diào)試、檢查和改正。情況和中間結(jié)果進(jìn)行某些調(diào)試、檢查和改正。 父進(jìn)程要求掛起自己的后代子進(jìn)程父進(jìn)程要求掛

15、起自己的后代子進(jìn)程,以進(jìn)行,以進(jìn)行 某些檢查和改正。某些檢查和改正。 操作系統(tǒng)需要掛起某些進(jìn)程操作系統(tǒng)需要掛起某些進(jìn)程,檢查運(yùn)行中資,檢查運(yùn)行中資 源使用情況,以改善系統(tǒng)性能;或當(dāng)系統(tǒng)出源使用情況,以改善系統(tǒng)性能;或當(dāng)系統(tǒng)出 現(xiàn)故障或某些功能受到破壞時(shí),需要掛起某現(xiàn)故障或某些功能受到破壞時(shí),需要掛起某 些進(jìn)程以排除故障。些進(jìn)程以排除故障。 22五種狀態(tài)進(jìn)程模型(續(xù))五種狀態(tài)進(jìn)程模型(續(xù))五種狀態(tài):五種狀態(tài):n就緒狀態(tài)就緒狀態(tài)(Ready)(Ready):進(jìn)程在:進(jìn)程在內(nèi)存內(nèi)存且可立即進(jìn)入且可立即進(jìn)入 運(yùn)行狀態(tài)運(yùn)行狀態(tài)n阻塞狀態(tài)阻塞狀態(tài)(Blocked)(Blocked):進(jìn)程在:進(jìn)程在內(nèi)存內(nèi)存

16、并等待某事件并等待某事件 的出現(xiàn)的出現(xiàn)n阻塞掛起狀態(tài)阻塞掛起狀態(tài)(Blocked suspend)(Blocked suspend):進(jìn)程在:進(jìn)程在外存外存 并等待某事件的出現(xiàn)并等待某事件的出現(xiàn)n就緒掛起狀態(tài)就緒掛起狀態(tài)(Ready suspend)(Ready suspend):進(jìn)程在:進(jìn)程在外存外存, 但只要進(jìn)入內(nèi)存,即可運(yùn)行但只要進(jìn)入內(nèi)存,即可運(yùn)行n運(yùn)行態(tài)運(yùn)行態(tài)23五種狀態(tài)進(jìn)程模型(續(xù))五種狀態(tài)進(jìn)程模型(續(xù))24五種狀態(tài)進(jìn)程模型(續(xù))五種狀態(tài)進(jìn)程模型(續(xù))n掛起(掛起(SuspendSuspend):把一個(gè)進(jìn)程:把一個(gè)進(jìn)程從內(nèi)存轉(zhuǎn)到外存從內(nèi)存轉(zhuǎn)到外存;可能有以下幾種情況:可能有以下幾種情

17、況:n阻塞阻塞阻塞掛起阻塞掛起:操作系統(tǒng)根據(jù)當(dāng)前資源狀況和性能:操作系統(tǒng)根據(jù)當(dāng)前資源狀況和性能要求,可以決定把等待態(tài)進(jìn)程對(duì)換出去成為掛起等待要求,可以決定把等待態(tài)進(jìn)程對(duì)換出去成為掛起等待態(tài)。態(tài)。n就緒就緒就緒掛起就緒掛起:操作系統(tǒng)根據(jù)當(dāng)前資源狀況和性能:操作系統(tǒng)根據(jù)當(dāng)前資源狀況和性能要求,也可以決定把就緒態(tài)進(jìn)程對(duì)換出去成為掛起就要求,也可以決定把就緒態(tài)進(jìn)程對(duì)換出去成為掛起就緒態(tài)。緒態(tài)。n 運(yùn)行運(yùn)行就緒掛起就緒掛起:當(dāng)一個(gè)具有較高優(yōu)先級(jí)的掛起等:當(dāng)一個(gè)具有較高優(yōu)先級(jí)的掛起等待態(tài)進(jìn)程的等待事件結(jié)束后,它需要搶占待態(tài)進(jìn)程的等待事件結(jié)束后,它需要搶占CPU CPU ,而此,而此時(shí)主存空間不夠,從而,可

18、能導(dǎo)致正在運(yùn)行的進(jìn)程轉(zhuǎn)時(shí)主存空間不夠,從而,可能導(dǎo)致正在運(yùn)行的進(jìn)程轉(zhuǎn)化為掛起就緒態(tài)。另外,處于運(yùn)行態(tài)的進(jìn)程也可以自化為掛起就緒態(tài)。另外,處于運(yùn)行態(tài)的進(jìn)程也可以自己掛起自己。己掛起自己。 25五種狀態(tài)進(jìn)程模型(續(xù))五種狀態(tài)進(jìn)程模型(續(xù))n激活(激活(ActivateActivate):把一個(gè)進(jìn)程從:把一個(gè)進(jìn)程從外存轉(zhuǎn)到內(nèi)外存轉(zhuǎn)到內(nèi)存存,可能有以下幾種情況:,可能有以下幾種情況:n就緒掛起就緒掛起就緒就緒:沒(méi)有就緒進(jìn)程沒(méi)有就緒進(jìn)程或或掛起就緒進(jìn)程掛起就緒進(jìn)程 優(yōu)先級(jí)高于優(yōu)先級(jí)高于就緒進(jìn)程時(shí),發(fā)生轉(zhuǎn)換就緒進(jìn)程時(shí),發(fā)生轉(zhuǎn)換 n阻塞掛起阻塞掛起阻塞阻塞:當(dāng)一個(gè)進(jìn)程:當(dāng)一個(gè)進(jìn)程釋放足夠內(nèi)存釋放足夠內(nèi)存時(shí),

19、時(shí), 系統(tǒng)會(huì)把一個(gè)高優(yōu)先級(jí)阻塞掛起(系統(tǒng)認(rèn)為會(huì)很系統(tǒng)會(huì)把一個(gè)高優(yōu)先級(jí)阻塞掛起(系統(tǒng)認(rèn)為會(huì)很 快出現(xiàn)所等待的事件)進(jìn)程快出現(xiàn)所等待的事件)進(jìn)程 26(4)創(chuàng)建狀態(tài)與終止?fàn)顟B(tài))創(chuàng)建狀態(tài)與終止?fàn)顟B(tài)27創(chuàng)建(新創(chuàng)建(新newnew)狀態(tài))狀態(tài)nOS OS 已完成為創(chuàng)建一進(jìn)程所必要的工作已完成為創(chuàng)建一進(jìn)程所必要的工作n已構(gòu)造了進(jìn)程標(biāo)識(shí)符已構(gòu)造了進(jìn)程標(biāo)識(shí)符n已創(chuàng)建了管理進(jìn)程所需的表格已創(chuàng)建了管理進(jìn)程所需的表格n但還沒(méi)有允許執(zhí)行該進(jìn)程但還沒(méi)有允許執(zhí)行該進(jìn)程( (尚未同意尚未同意) )n因?yàn)橘Y源有限因?yàn)橘Y源有限28終止(退出終止(退出exitexit)狀態(tài))狀態(tài)n中止后進(jìn)程移入該狀態(tài)中止后進(jìn)程移入該狀態(tài)n它不

20、再有執(zhí)行資格它不再有執(zhí)行資格n表格和其它信息暫時(shí)由輔助程序保留表格和其它信息暫時(shí)由輔助程序保留 例子例子: : 為處理用戶帳單而累計(jì)資源使為處理用戶帳單而累計(jì)資源使 用情況的財(cái)務(wù)程序用情況的財(cái)務(wù)程序 29新增狀態(tài)轉(zhuǎn)換新增狀態(tài)轉(zhuǎn)換NULLNULL新建態(tài)新建態(tài):執(zhí)行一個(gè)程序,創(chuàng)建一個(gè)子進(jìn)程。:執(zhí)行一個(gè)程序,創(chuàng)建一個(gè)子進(jìn)程。新建態(tài)新建態(tài)就緒態(tài)就緒態(tài):當(dāng)操作系統(tǒng)完成了進(jìn)程創(chuàng)建的必要操:當(dāng)操作系統(tǒng)完成了進(jìn)程創(chuàng)建的必要操作,并且當(dāng)前系統(tǒng)的性能和虛擬內(nèi)存的容量均允許。作,并且當(dāng)前系統(tǒng)的性能和虛擬內(nèi)存的容量均允許。運(yùn)行態(tài)運(yùn)行態(tài)終止態(tài)終止態(tài):當(dāng)一個(gè)進(jìn)程到達(dá)了自然結(jié)束點(diǎn),或是:當(dāng)一個(gè)進(jìn)程到達(dá)了自然結(jié)束點(diǎn),或是出現(xiàn)

21、了無(wú)法克服的錯(cuò)誤,或是被操作系統(tǒng)所終結(jié),或是出現(xiàn)了無(wú)法克服的錯(cuò)誤,或是被操作系統(tǒng)所終結(jié),或是被其他有終止權(quán)的進(jìn)程所終結(jié)。被其他有終止權(quán)的進(jìn)程所終結(jié)。終止態(tài)終止態(tài)NULLNULL:完成善后操作。:完成善后操作。就緒態(tài)就緒態(tài)終止態(tài)終止態(tài):未在狀態(tài)轉(zhuǎn)換圖中顯示,但某些操作:未在狀態(tài)轉(zhuǎn)換圖中顯示,但某些操作系統(tǒng)允許父進(jìn)程終結(jié)子進(jìn)程。系統(tǒng)允許父進(jìn)程終結(jié)子進(jìn)程。阻塞態(tài)阻塞態(tài)終止態(tài)終止態(tài):未在狀態(tài)轉(zhuǎn)換圖中顯示,但某些操作:未在狀態(tài)轉(zhuǎn)換圖中顯示,但某些操作系統(tǒng)允許父進(jìn)程終結(jié)子進(jìn)程。系統(tǒng)允許父進(jìn)程終結(jié)子進(jìn)程。 30進(jìn)程的描述進(jìn)程的描述n進(jìn)程由三部分組成:進(jìn)程由三部分組成:進(jìn)程控制塊進(jìn)程控制塊、有關(guān)程有關(guān)程序段序

22、段和該段程序段對(duì)其進(jìn)行操作的和該段程序段對(duì)其進(jìn)行操作的數(shù)據(jù)集數(shù)據(jù)集合。合。程序。程序。主要用于描述進(jìn)程所要完成的功能。主要用于描述進(jìn)程所要完成的功能。數(shù)據(jù)集合數(shù)據(jù)集合。包括程序執(zhí)行時(shí)所需的數(shù)據(jù)、堆棧。包括程序執(zhí)行時(shí)所需的數(shù)據(jù)、堆棧和工作區(qū)。和工作區(qū)。進(jìn)程控制塊進(jìn)程控制塊(PCBPCB)315. 5. 進(jìn)程控制塊進(jìn)程控制塊(Process Control BlockProcess Control Block)概念:概念: 記錄記錄OSOS所需的、用于描述進(jìn)程的當(dāng)前情況以及控制進(jìn)所需的、用于描述進(jìn)程的當(dāng)前情況以及控制進(jìn)程運(yùn)行的全部信息,是進(jìn)程存在的唯一標(biāo)志,常駐內(nèi)存。程運(yùn)行的全部信息,是進(jìn)程存在的

23、唯一標(biāo)志,常駐內(nèi)存。 (又稱進(jìn)程描述符、進(jìn)程屬性)又稱進(jìn)程描述符、進(jìn)程屬性)nPCBPCB的內(nèi)容:的內(nèi)容:n進(jìn)程標(biāo)識(shí)符進(jìn)程標(biāo)識(shí)符n處理機(jī)狀態(tài)(處理機(jī)狀態(tài)(CPUCPU現(xiàn)場(chǎng))現(xiàn)場(chǎng))n進(jìn)程調(diào)度信息:狀態(tài)、優(yōu)先級(jí)、時(shí)間、事件進(jìn)程調(diào)度信息:狀態(tài)、優(yōu)先級(jí)、時(shí)間、事件n進(jìn)程控制信息:地址、通信信息、資源進(jìn)程控制信息:地址、通信信息、資源 進(jìn)程與進(jìn)程與PCBPCB是一一對(duì)應(yīng)的是一一對(duì)應(yīng)的32(1)進(jìn)程的組成進(jìn)程的組成33(2)PCB(2)PCB表組織方式表組織方式 系統(tǒng)把所有系統(tǒng)把所有PCBPCB組織在一起,并把它們放在內(nèi)組織在一起,并把它們放在內(nèi) 存的固定區(qū)域,就構(gòu)成了存的固定區(qū)域,就構(gòu)成了PCBPCB表

24、表鏈接結(jié)構(gòu):鏈接結(jié)構(gòu):n同一狀態(tài)進(jìn)程的同一狀態(tài)進(jìn)程的PCBPCB組成一個(gè)鏈表,不同狀態(tài)對(duì)應(yīng)多組成一個(gè)鏈表,不同狀態(tài)對(duì)應(yīng)多個(gè)不同的鏈表個(gè)不同的鏈表n就緒鏈表、阻塞鏈表就緒鏈表、阻塞鏈表索引結(jié)構(gòu):索引結(jié)構(gòu):n對(duì)具有相同狀態(tài)的進(jìn)程,分別設(shè)置各自的對(duì)具有相同狀態(tài)的進(jìn)程,分別設(shè)置各自的PCBPCB索引表,索引表,表明表明PCBPCB在在PCBPCB表中的地址表中的地址進(jìn)程隊(duì)列:進(jìn)程隊(duì)列:不同狀態(tài)進(jìn)程分別組成隊(duì)列不同狀態(tài)進(jìn)程分別組成隊(duì)列n運(yùn)行隊(duì)列、就緒隊(duì)列、等待隊(duì)列運(yùn)行隊(duì)列、就緒隊(duì)列、等待隊(duì)列3435PCBPCB表組織方式(續(xù)表組織方式(續(xù)2 2)36n為了防止為了防止OSOS及關(guān)鍵數(shù)據(jù)如及關(guān)鍵數(shù)據(jù)如PC

25、BPCB等,受到用戶程序等,受到用戶程序的破壞,將處理機(jī)的執(zhí)行狀態(tài)分成的破壞,將處理機(jī)的執(zhí)行狀態(tài)分成系統(tǒng)態(tài)系統(tǒng)態(tài)和和用用戶態(tài)戶態(tài)兩種。兩種。nOSOS內(nèi)核通常是運(yùn)行在系統(tǒng)態(tài)的,而內(nèi)核通常是運(yùn)行在系統(tǒng)態(tài)的,而進(jìn)程控制是進(jìn)程控制是由由OSOS內(nèi)核實(shí)現(xiàn)的內(nèi)核實(shí)現(xiàn)的。6. 進(jìn)程控制進(jìn)程控制37Os的內(nèi)核的內(nèi)核n通常將一些與硬件緊密相關(guān)的模塊(通常將一些與硬件緊密相關(guān)的模塊(中斷中斷處理程序處理程序,常用設(shè)備的驅(qū)動(dòng)常用設(shè)備的驅(qū)動(dòng),運(yùn)行頻率較,運(yùn)行頻率較高的高的時(shí)鐘管理、進(jìn)程調(diào)度、公用時(shí)鐘管理、進(jìn)程調(diào)度、公用的一些操的一些操作)都安排在緊靠硬件的軟件層次中,并作)都安排在緊靠硬件的軟件層次中,并使他們常駐

26、內(nèi)存。使他們常駐內(nèi)存。38OS的支撐功能的支撐功能1.中斷處理中斷處理2.時(shí)鐘管理時(shí)鐘管理3.原語(yǔ)操作原語(yǔ)操作 原語(yǔ)本身是有若干條指令所構(gòu)成、用于原語(yǔ)本身是有若干條指令所構(gòu)成、用于完成一定功能的一個(gè)過(guò)程。它是一個(gè)完成一定功能的一個(gè)過(guò)程。它是一個(gè)原子操原子操作作。396. 6. 進(jìn)程控制進(jìn)程控制n進(jìn)程控制是由進(jìn)程控制是由OSOS內(nèi)核完成的內(nèi)核完成的nOSOS內(nèi)核通過(guò)執(zhí)行相應(yīng)的原語(yǔ)來(lái)實(shí)現(xiàn)進(jìn)程的控制內(nèi)核通過(guò)執(zhí)行相應(yīng)的原語(yǔ)來(lái)實(shí)現(xiàn)進(jìn)程的控制n進(jìn)程控制原語(yǔ):創(chuàng)建、終止、阻塞與喚醒、掛進(jìn)程控制原語(yǔ):創(chuàng)建、終止、阻塞與喚醒、掛起與激活起與激活40進(jìn)程的創(chuàng)建進(jìn)程的創(chuàng)建n創(chuàng)建一個(gè)創(chuàng)建一個(gè)PCBPCB 賦予一個(gè)統(tǒng)一

27、進(jìn)程標(biāo)識(shí)符賦予一個(gè)統(tǒng)一進(jìn)程標(biāo)識(shí)符 為進(jìn)程映象分配空間為進(jìn)程映象分配空間n初始化進(jìn)程控制塊初始化進(jìn)程控制塊 許多默認(rèn)值許多默認(rèn)值( (如如: : 狀態(tài),使用狀態(tài),使用I/OI/O設(shè)備,優(yōu)先級(jí)等設(shè)備,優(yōu)先級(jí)等) )n設(shè)置相應(yīng)的鏈接設(shè)置相應(yīng)的鏈接 如如: : 把新進(jìn)程加到就緒隊(duì)列的鏈表中把新進(jìn)程加到就緒隊(duì)列的鏈表中n進(jìn)程家族進(jìn)程家族 創(chuàng)建進(jìn)程稱為父進(jìn)程創(chuàng)建進(jìn)程稱為父進(jìn)程(Parent Process)(Parent Process),被創(chuàng)建的,被創(chuàng)建的 進(jìn)程稱為子進(jìn)程進(jìn)程稱為子進(jìn)程(Child Process)(Child Process), 子進(jìn)程可以繼承父進(jìn)程所擁有的資源,并且子進(jìn)子進(jìn)程可以繼承

28、父進(jìn)程所擁有的資源,并且子進(jìn) 程又可以通過(guò)創(chuàng)建原語(yǔ)再創(chuàng)建它自己的子進(jìn)程,程又可以通過(guò)創(chuàng)建原語(yǔ)再創(chuàng)建它自己的子進(jìn)程, 從而形成一個(gè)進(jìn)程家族樹(shù)從而形成一個(gè)進(jìn)程家族樹(shù) 圖圖2.132.1341進(jìn)程創(chuàng)建流程圖進(jìn)程創(chuàng)建流程圖創(chuàng)建失敗創(chuàng)建失敗入口入口查查PCB鏈表鏈表有空有空PCB?取空取空PCB(i)將有關(guān)參數(shù)填入將有關(guān)參數(shù)填入PCB(i)相應(yīng)表項(xiàng))相應(yīng)表項(xiàng)PCB(i)入就緒隊(duì)列)入就緒隊(duì)列PCB(i)入進(jìn)程家族或進(jìn)程鏈)入進(jìn)程家族或進(jìn)程鏈返回返回?zé)o無(wú)有有42進(jìn)程撤消進(jìn)程撤消n收回進(jìn)程所占有的資源收回進(jìn)程所占有的資源n撤消該進(jìn)程的撤消該進(jìn)程的PCBPCB43進(jìn)程撤消流程圖進(jìn)程撤消流程圖出錯(cuò)處理出錯(cuò)處理入

29、口入口查進(jìn)程鏈表或進(jìn)程家族查進(jìn)程鏈表或進(jìn)程家族有此有此PCB?釋放該進(jìn)程所占有的資源釋放該進(jìn)程所占有的資源釋放該釋放該P(yáng)CB結(jié)構(gòu)本身結(jié)構(gòu)本身返回返回該該P(yáng)CB有子進(jìn)程嗎?有子進(jìn)程嗎?有有有有無(wú)無(wú)無(wú)無(wú)44進(jìn)程阻塞和進(jìn)程喚醒進(jìn)程阻塞和進(jìn)程喚醒 處于運(yùn)行狀態(tài)的進(jìn)程,在其運(yùn)行過(guò)程中期處于運(yùn)行狀態(tài)的進(jìn)程,在其運(yùn)行過(guò)程中期待某一事件發(fā)生,如等待鍵盤(pán)輸入、等待磁待某一事件發(fā)生,如等待鍵盤(pán)輸入、等待磁盤(pán)數(shù)據(jù)傳輸完成、等待其它進(jìn)程發(fā)送消息,盤(pán)數(shù)據(jù)傳輸完成、等待其它進(jìn)程發(fā)送消息,當(dāng)被等待的事件未發(fā)生時(shí),當(dāng)被等待的事件未發(fā)生時(shí),由進(jìn)程自己執(zhí)行由進(jìn)程自己執(zhí)行阻塞原語(yǔ),使自己由運(yùn)行態(tài)變?yōu)樽枞麘B(tài)阻塞原語(yǔ),使自己由運(yùn)行態(tài)變

30、為阻塞態(tài)45進(jìn)程阻塞與進(jìn)程喚醒流程圖進(jìn)程阻塞與進(jìn)程喚醒流程圖保存當(dāng)前進(jìn)程的保存當(dāng)前進(jìn)程的CPU現(xiàn)場(chǎng)現(xiàn)場(chǎng)置該進(jìn)程為阻塞狀態(tài)置該進(jìn)程為阻塞狀態(tài)被阻塞進(jìn)程入等待隊(duì)列被阻塞進(jìn)程入等待隊(duì)列轉(zhuǎn)進(jìn)程調(diào)度轉(zhuǎn)進(jìn)程調(diào)度從等待隊(duì)列中摘下被喚醒進(jìn)程從等待隊(duì)列中摘下被喚醒進(jìn)程將被喚醒進(jìn)程置為就緒狀態(tài)將被喚醒進(jìn)程置為就緒狀態(tài)將被喚醒進(jìn)程送入就緒隊(duì)列將被喚醒進(jìn)程送入就緒隊(duì)列轉(zhuǎn)進(jìn)程調(diào)度或返回轉(zhuǎn)進(jìn)程調(diào)度或返回入口入口入口入口46進(jìn)程切換與模式切換進(jìn)程切換與模式切換 n進(jìn)程切換進(jìn)程切換 把一個(gè)進(jìn)程讓出把一個(gè)進(jìn)程讓出CPUCPU,由另一個(gè)進(jìn)程占用,由另一個(gè)進(jìn)程占用CPUCPU的過(guò)程稱的過(guò)程稱 為為“進(jìn)程切換進(jìn)程切換”。進(jìn)程切換是由

31、進(jìn)程狀態(tài)的變化引起。進(jìn)程切換是由進(jìn)程狀態(tài)的變化引起的的n進(jìn)程上下文進(jìn)程上下文n操作系統(tǒng)中把進(jìn)程物理實(shí)體和支持進(jìn)程運(yùn)行的環(huán)操作系統(tǒng)中把進(jìn)程物理實(shí)體和支持進(jìn)程運(yùn)行的環(huán)境合稱為進(jìn)程上下文境合稱為進(jìn)程上下文 n進(jìn)程上下文切換進(jìn)程上下文切換 n進(jìn)程切換是讓處于運(yùn)行態(tài)的進(jìn)程中斷運(yùn)行,讓出進(jìn)程切換是讓處于運(yùn)行態(tài)的進(jìn)程中斷運(yùn)行,讓出處理器,這時(shí)要做一次進(jìn)程上下文切換處理器,這時(shí)要做一次進(jìn)程上下文切換 n進(jìn)程切換的步驟進(jìn)程切換的步驟 47n模式切換模式切換 n當(dāng)中斷發(fā)生時(shí),暫時(shí)中斷正在執(zhí)行的用戶進(jìn)程,把當(dāng)中斷發(fā)生時(shí),暫時(shí)中斷正在執(zhí)行的用戶進(jìn)程,把CPUCPU的工作狀態(tài)從用戶態(tài)切換到核心狀態(tài),去執(zhí)行操的工作狀態(tài)從

32、用戶態(tài)切換到核心狀態(tài),去執(zhí)行操作系統(tǒng)例行程序以獲得服務(wù),這是一次作系統(tǒng)例行程序以獲得服務(wù),這是一次CPUCPU模式切換模式切換n模式切換不同于進(jìn)程切換,它并不引起進(jìn)程狀態(tài)的變模式切換不同于進(jìn)程切換,它并不引起進(jìn)程狀態(tài)的變化,且這兩個(gè)進(jìn)程(用戶進(jìn)程和系統(tǒng)進(jìn)程)使用同一化,且這兩個(gè)進(jìn)程(用戶進(jìn)程和系統(tǒng)進(jìn)程)使用同一個(gè)個(gè)PCBPCB n見(jiàn)見(jiàn)P47 P47 圖圖2.122.1248二、線程的基本概念二、線程的基本概念n1.1.線程概念的引入線程概念的引入n2.2.線程與進(jìn)程的比較線程與進(jìn)程的比較n3.3.線程的分類線程的分類491.1.線程概念的引入線程概念的引入(1)(1)為什么要引入線程?為什么要

33、引入線程?進(jìn)程的兩個(gè)基本屬性:進(jìn)程的兩個(gè)基本屬性:n資源的擁有者:資源的擁有者: 給每個(gè)進(jìn)程分配一虛擬地址空間,保存進(jìn)給每個(gè)進(jìn)程分配一虛擬地址空間,保存進(jìn) 程映像,控制一些資源(文件,程映像,控制一些資源(文件,I/OI/O設(shè)設(shè) 備),有狀態(tài)、優(yōu)先級(jí)、調(diào)度備),有狀態(tài)、優(yōu)先級(jí)、調(diào)度n調(diào)度單位:調(diào)度單位: 進(jìn)程是一個(gè)執(zhí)行軌跡進(jìn)程是一個(gè)執(zhí)行軌跡 以上兩個(gè)屬性構(gòu)成進(jìn)程并發(fā)執(zhí)行的基礎(chǔ)以上兩個(gè)屬性構(gòu)成進(jìn)程并發(fā)執(zhí)行的基礎(chǔ)50為什么引入線程?為什么引入線程?系統(tǒng)必須完成的操作:系統(tǒng)必須完成的操作:n創(chuàng)建進(jìn)程創(chuàng)建進(jìn)程n撤消進(jìn)程撤消進(jìn)程n進(jìn)程切換進(jìn)程切換缺點(diǎn):缺點(diǎn): 時(shí)間空間開(kāi)銷大,限制并發(fā)度的提高時(shí)間空間開(kāi)銷

34、大,限制并發(fā)度的提高51為什么引入線程?(續(xù))為什么引入線程?(續(xù))為什么引入線程?為什么引入線程?n在操作系統(tǒng)中,進(jìn)程的引入提高了計(jì)算機(jī)資源在操作系統(tǒng)中,進(jìn)程的引入提高了計(jì)算機(jī)資源的利用效率。但在進(jìn)一步提高進(jìn)程的并發(fā)性時(shí),的利用效率。但在進(jìn)一步提高進(jìn)程的并發(fā)性時(shí),人們發(fā)現(xiàn)進(jìn)程切換開(kāi)銷占的比重越來(lái)越大,同人們發(fā)現(xiàn)進(jìn)程切換開(kāi)銷占的比重越來(lái)越大,同時(shí)進(jìn)程間通信的效率也受到限制時(shí)進(jìn)程間通信的效率也受到限制n線程的引入正是為了簡(jiǎn)化線程間的通信,以小線程的引入正是為了簡(jiǎn)化線程間的通信,以小的開(kāi)銷來(lái)提高進(jìn)程內(nèi)的并發(fā)程度的開(kāi)銷來(lái)提高進(jìn)程內(nèi)的并發(fā)程度52(2)(2)線程的定義線程的定義 有時(shí)稱輕量級(jí)進(jìn)程有時(shí)稱

35、輕量級(jí)進(jìn)程進(jìn)程中的一個(gè)運(yùn)行實(shí)體進(jìn)程中的一個(gè)運(yùn)行實(shí)體線程是一個(gè)線程是一個(gè)CPUCPU調(diào)度單位調(diào)度單位資源的擁有者還是進(jìn)程或稱任務(wù)資源的擁有者還是進(jìn)程或稱任務(wù) 將原來(lái)進(jìn)程的兩個(gè)屬性將原來(lái)進(jìn)程的兩個(gè)屬性“獨(dú)立分配資源獨(dú)立分配資源”與與“被調(diào)度分派執(zhí)行被調(diào)度分派執(zhí)行”分離開(kāi)來(lái)處理分離開(kāi)來(lái)處理53(3)(3)線程特點(diǎn)線程特點(diǎn)線程:線程:n有執(zhí)行狀態(tài)(狀態(tài)轉(zhuǎn)換)有執(zhí)行狀態(tài)(狀態(tài)轉(zhuǎn)換)n不運(yùn)行時(shí)保存上下文不運(yùn)行時(shí)保存上下文n有一個(gè)執(zhí)行棧有一個(gè)執(zhí)行棧n有一些局部變量的靜態(tài)存儲(chǔ)有一些局部變量的靜態(tài)存儲(chǔ)n可存取所在進(jìn)程的內(nèi)存和其它資源可存取所在進(jìn)程的內(nèi)存和其它資源n可以創(chuàng)建、撤消另一個(gè)線程可以創(chuàng)建、撤消另一個(gè)線程

36、54(4)(4)引入線程的好處引入線程的好處n資源共享資源共享:多個(gè)線程共享它們:多個(gè)線程共享它們所屬進(jìn)程所屬進(jìn)程的內(nèi)存的內(nèi)存和資源。和資源。 n經(jīng)濟(jì)經(jīng)濟(jì):創(chuàng)建一個(gè)新線程花費(fèi)時(shí)間少(結(jié)束亦如:創(chuàng)建一個(gè)新線程花費(fèi)時(shí)間少(結(jié)束亦如此);兩個(gè)線程的切換花費(fèi)時(shí)間少(如果機(jī)器此);兩個(gè)線程的切換花費(fèi)時(shí)間少(如果機(jī)器設(shè)有設(shè)有“存儲(chǔ)存儲(chǔ) 恢復(fù)恢復(fù) 所有寄存器所有寄存器”指令,則整個(gè)指令,則整個(gè)切換過(guò)程用幾條指令即可完成)切換過(guò)程用幾條指令即可完成)n因?yàn)橥贿M(jìn)程內(nèi)的線程共享內(nèi)存和文件,因因?yàn)橥贿M(jìn)程內(nèi)的線程共享內(nèi)存和文件,因 此它們之間此它們之間相互通信無(wú)須調(diào)用內(nèi)核相互通信無(wú)須調(diào)用內(nèi)核n適合適合多處理機(jī)多處

37、理機(jī)系統(tǒng)系統(tǒng)552.2.線程與進(jìn)程的比較線程與進(jìn)程的比較(1)(1)單線程進(jìn)程結(jié)構(gòu)和多線程進(jìn)程結(jié)構(gòu)單線程進(jìn)程結(jié)構(gòu)和多線程進(jìn)程結(jié)構(gòu) 線程和進(jìn)程:線程和進(jìn)程:n單進(jìn)程、單線程單進(jìn)程、單線程n單進(jìn)程、多線程單進(jìn)程、多線程n多進(jìn)程、一個(gè)進(jìn)程一個(gè)線程多進(jìn)程、一個(gè)進(jìn)程一個(gè)線程n多進(jìn)程、一個(gè)進(jìn)程多個(gè)線程多進(jìn)程、一個(gè)進(jìn)程多個(gè)線程565758線程與進(jìn)程的比較線程與進(jìn)程的比較n調(diào)度。調(diào)度。線程作為調(diào)度和分派線程作為調(diào)度和分派CPUCPU的基本單位。的基本單位。n并發(fā)性。并發(fā)性。不僅進(jìn)程之間可以并發(fā)執(zhí)行,而且在一個(gè)進(jìn)程中不僅進(jìn)程之間可以并發(fā)執(zhí)行,而且在一個(gè)進(jìn)程中的多個(gè)線程之間也可以并發(fā)執(zhí)行。的多個(gè)線程之間也可以并發(fā)

38、執(zhí)行。n擁有資源。擁有資源。進(jìn)程是擁有資源的獨(dú)立單位。線程自己不用有進(jìn)程是擁有資源的獨(dú)立單位。線程自己不用有系統(tǒng)資源(只有少量的必不可少的資源),但它可以訪問(wèn)系統(tǒng)資源(只有少量的必不可少的資源),但它可以訪問(wèn)其隸屬進(jìn)程的資源。其隸屬進(jìn)程的資源。n系統(tǒng)開(kāi)銷。系統(tǒng)開(kāi)銷。進(jìn)程切換時(shí),涉及到當(dāng)前進(jìn)程進(jìn)程切換時(shí),涉及到當(dāng)前進(jìn)程CPUCPU環(huán)境的保存環(huán)境的保存及新被調(diào)度運(yùn)行的進(jìn)程及新被調(diào)度運(yùn)行的進(jìn)程CPUCPU環(huán)境的設(shè)置,包括程序地址和環(huán)境的設(shè)置,包括程序地址和數(shù)據(jù)地址等。而線程的切換只須保存和設(shè)置少量寄存器的數(shù)據(jù)地址等。而線程的切換只須保存和設(shè)置少量寄存器的內(nèi)容,并不涉及到存儲(chǔ)器管理方面的操作。內(nèi)容,并

39、不涉及到存儲(chǔ)器管理方面的操作。593.3.線程的分類線程的分類n根據(jù)線程的切換是否依賴于內(nèi)核把線程分成三根據(jù)線程的切換是否依賴于內(nèi)核把線程分成三類:類:n用戶級(jí)線程用戶級(jí)線程(User Level ThreadsUser Level Threads,簡(jiǎn)寫(xiě)為,簡(jiǎn)寫(xiě)為ULTULT) n內(nèi)核級(jí)線程內(nèi)核級(jí)線程(Kernel Supported ThreadsKernel Supported Threads,簡(jiǎn)寫(xiě)為,簡(jiǎn)寫(xiě)為KSTKST)n混合式線程混合式線程。 60用用戶戶空空間間線程庫(kù)線程庫(kù)P P內(nèi)內(nèi)核核空空間間(b b)用戶級(jí)線程)用戶級(jí)線程用用戶戶空空間間P P內(nèi)內(nèi)核核空空間間(a a)內(nèi)核級(jí)線程

40、)內(nèi)核級(jí)線程用用戶戶空空間間線程庫(kù)線程庫(kù)P PP P內(nèi)內(nèi)核核空空間間(c c)混合式線程)混合式線程ULTULTKLTKLTProcessProcessP P三種類型的線程三種類型的線程61【思考題【思考題】1 1如果系統(tǒng)中有如果系統(tǒng)中有N N個(gè)進(jìn)程,運(yùn)行的進(jìn)程最多幾個(gè)進(jìn)程,運(yùn)行的進(jìn)程最多幾 個(gè),最少幾個(gè);就緒進(jìn)程最多幾個(gè)最少幾個(gè);個(gè),最少幾個(gè);就緒進(jìn)程最多幾個(gè)最少幾個(gè); 等待進(jìn)程最多幾個(gè),最少幾個(gè)?等待進(jìn)程最多幾個(gè),最少幾個(gè)?2. 2. 有沒(méi)有這樣的狀態(tài)轉(zhuǎn)換,為什么?有沒(méi)有這樣的狀態(tài)轉(zhuǎn)換,為什么? 等待等待運(yùn)行;就緒運(yùn)行;就緒等待等待3. 3. 一個(gè)狀態(tài)轉(zhuǎn)換的發(fā)生,是否一定導(dǎo)致另一個(gè)一個(gè)狀態(tài)

41、轉(zhuǎn)換的發(fā)生,是否一定導(dǎo)致另一個(gè) 轉(zhuǎn)換發(fā)生,列出所有的可能轉(zhuǎn)換發(fā)生,列出所有的可能4. 4. 舉舉2 2個(gè)日常生活中類似進(jìn)程的例子個(gè)日常生活中類似進(jìn)程的例子62 運(yùn)行狀態(tài)最多1個(gè),最少0個(gè); 等待狀態(tài)最多N個(gè),最少N-1個(gè); 就緒狀態(tài)最多N-1個(gè),最少0個(gè)。 63問(wèn)題:一個(gè)轉(zhuǎn)換發(fā)生,是否另一個(gè)轉(zhuǎn)換一定發(fā)生?找出所有的可能。問(wèn)題:一個(gè)轉(zhuǎn)換發(fā)生,是否另一個(gè)轉(zhuǎn)換一定發(fā)生?找出所有的可能。解答:就緒解答:就緒運(yùn)行運(yùn)行: : 不一定(系統(tǒng)中僅一個(gè)進(jìn)程)不一定(系統(tǒng)中僅一個(gè)進(jìn)程) 轉(zhuǎn)換條件:被調(diào)度程序選中轉(zhuǎn)換條件:被調(diào)度程序選中 運(yùn)行運(yùn)行就緒就緒: : 一定(討論就緒隊(duì)列的長(zhǎng)度)一定(討論就緒隊(duì)列的長(zhǎng)度)

42、轉(zhuǎn)換條件:時(shí)間片到時(shí)轉(zhuǎn)換條件:時(shí)間片到時(shí), ,或有更高優(yōu)先級(jí)的進(jìn)程出現(xiàn)或有更高優(yōu)先級(jí)的進(jìn)程出現(xiàn) 運(yùn)行運(yùn)行等待等待: : 不一定(考慮死鎖)不一定(考慮死鎖) 轉(zhuǎn)換條件:等待某事件發(fā)生轉(zhuǎn)換條件:等待某事件發(fā)生 等待等待就緒就緒: : 不一定不一定 轉(zhuǎn)換條件:等待的事件發(fā)生轉(zhuǎn)換條件:等待的事件發(fā)生問(wèn)題:日常生活中的問(wèn)題:日常生活中的“進(jìn)程進(jìn)程”舉例舉例解答:解答:兩個(gè)角度:兩個(gè)角度:“程序程序- -數(shù)據(jù)數(shù)據(jù)- -運(yùn)行運(yùn)行” 或或“資源資源- -調(diào)度調(diào)度- -運(yùn)行運(yùn)行”經(jīng)典例子:經(jīng)典例子:“按照菜譜作菜按照菜譜作菜”“”“樂(lè)隊(duì)演奏樂(lè)隊(duì)演奏” 或或“圖紙圖紙”與與“施工施工”等等. .64填空題填空題

43、1 1進(jìn)程的靜態(tài)描述由三部分組成:進(jìn)程的靜態(tài)描述由三部分組成: 、 和和 。2 2進(jìn)程存在的標(biāo)志是進(jìn)程存在的標(biāo)志是 ?!敬鸢浮俊敬鸢浮縋CBPCB、程序部分、程序部分、相關(guān)的數(shù)據(jù)結(jié)構(gòu)集相關(guān)的數(shù)據(jù)結(jié)構(gòu)集【解析】【解析】PCBPCB是系統(tǒng)感知進(jìn)程的唯一實(shí)體。進(jìn)程的程序部分描述了進(jìn)程是系統(tǒng)感知進(jìn)程的唯一實(shí)體。進(jìn)程的程序部分描述了進(jìn)程所要完成的功能,而數(shù)據(jù)結(jié)構(gòu)集是程序在執(zhí)行時(shí)必不可少的工作區(qū)和操所要完成的功能,而數(shù)據(jù)結(jié)構(gòu)集是程序在執(zhí)行時(shí)必不可少的工作區(qū)和操作對(duì)象。后兩部分是進(jìn)程完成所需功能的物質(zhì)基礎(chǔ)。作對(duì)象。后兩部分是進(jìn)程完成所需功能的物質(zhì)基礎(chǔ)?!敬鸢浮窟M(jìn)程控制塊【答案】進(jìn)程控制塊PCBPCB【解析】

44、系統(tǒng)根據(jù)【解析】系統(tǒng)根據(jù)PCBPCB感知進(jìn)程的存在和通過(guò)感知進(jìn)程的存在和通過(guò)PCBPCB中所包含的各項(xiàng)變量中所包含的各項(xiàng)變量的變化,掌握進(jìn)程所處的狀態(tài)以達(dá)到控制進(jìn)程活動(dòng)的目的的變化,掌握進(jìn)程所處的狀態(tài)以達(dá)到控制進(jìn)程活動(dòng)的目的653 3 是現(xiàn)代操作系統(tǒng)的基本特征之一,是現(xiàn)代操作系統(tǒng)的基本特征之一,為了更好地描述這一特征而引入了為了更好地描述這一特征而引入了 這這一概念。一概念。 【答案】【答案】程序的并發(fā)執(zhí)行,程序的并發(fā)執(zhí)行,進(jìn)程進(jìn)程【解析】程序的并發(fā)執(zhí)行和資源共享是現(xiàn)代操行系統(tǒng)的【解析】程序的并發(fā)執(zhí)行和資源共享是現(xiàn)代操行系統(tǒng)的基本特征。程序的并發(fā)執(zhí)行使程序失去了程序順序執(zhí)行基本特征。程序的并發(fā)

45、執(zhí)行使程序失去了程序順序執(zhí)行時(shí)所具有的封閉性和可再現(xiàn)性。在程序并發(fā)執(zhí)行時(shí),程時(shí)所具有的封閉性和可再現(xiàn)性。在程序并發(fā)執(zhí)行時(shí),程序這個(gè)概念不能反映程序并發(fā)執(zhí)行所具有的特性,所以序這個(gè)概念不能反映程序并發(fā)執(zhí)行所具有的特性,所以引入進(jìn)程概念來(lái)描述程序并發(fā)執(zhí)行所具有的特點(diǎn)。引入進(jìn)程概念來(lái)描述程序并發(fā)執(zhí)行所具有的特點(diǎn)。664 4給出用于進(jìn)程控制的四種常見(jiàn)的原語(yǔ)給出用于進(jìn)程控制的四種常見(jiàn)的原語(yǔ) 、 、 和和 ?!敬鸢浮俊敬鸢浮縿?chuàng)建原語(yǔ)、創(chuàng)建原語(yǔ)、撤消原語(yǔ)、撤消原語(yǔ)、 阻塞原語(yǔ)、阻塞原語(yǔ)、喚醒原語(yǔ)喚醒原語(yǔ)【解析】進(jìn)程控制是系統(tǒng)使用一些具有特定功能的程序段【解析】進(jìn)程控制是系統(tǒng)使用一些具有特定功能的程序段來(lái)創(chuàng)建

46、、撤消進(jìn)程以及完成進(jìn)程各狀態(tài)間的轉(zhuǎn)換,從而達(dá)來(lái)創(chuàng)建、撤消進(jìn)程以及完成進(jìn)程各狀態(tài)間的轉(zhuǎn)換,從而達(dá)到多個(gè)過(guò)程高效率地并行執(zhí)行和協(xié)調(diào),實(shí)現(xiàn)資源共享的目到多個(gè)過(guò)程高效率地并行執(zhí)行和協(xié)調(diào),實(shí)現(xiàn)資源共享的目的。把那些在管態(tài)下執(zhí)行的具有特定功能的程序段稱為原的。把那些在管態(tài)下執(zhí)行的具有特定功能的程序段稱為原語(yǔ)。語(yǔ)。675 5進(jìn)程被創(chuàng)建后,最初處于進(jìn)程被創(chuàng)建后,最初處于 狀態(tài),然后狀態(tài),然后經(jīng)經(jīng) 選中后進(jìn)入選中后進(jìn)入 狀態(tài)。狀態(tài)?!敬鸢浮俊敬鸢浮烤途w,就緒,進(jìn)程調(diào)度程序,進(jìn)程調(diào)度程序,運(yùn)行運(yùn)行【解析】進(jìn)程的從無(wú)到有,從存在到消亡是由進(jìn)程創(chuàng)建【解析】進(jìn)程的從無(wú)到有,從存在到消亡是由進(jìn)程創(chuàng)建原語(yǔ)和撤消原語(yǔ)完成的。

47、被創(chuàng)建的進(jìn)程最初處于就緒狀原語(yǔ)和撤消原語(yǔ)完成的。被創(chuàng)建的進(jìn)程最初處于就緒狀態(tài),即該進(jìn)程獲得了除處理機(jī)以外的所有資源,處于準(zhǔn)態(tài),即該進(jìn)程獲得了除處理機(jī)以外的所有資源,處于準(zhǔn)備執(zhí)行的狀態(tài);從就緒狀態(tài)到運(yùn)行狀態(tài)的轉(zhuǎn)換是由進(jìn)程備執(zhí)行的狀態(tài);從就緒狀態(tài)到運(yùn)行狀態(tài)的轉(zhuǎn)換是由進(jìn)程調(diào)度程序來(lái)完成的。調(diào)度程序來(lái)完成的。 68n6.6.當(dāng)一個(gè)進(jìn)程完成了特定的任務(wù)后,系統(tǒng)收回當(dāng)一個(gè)進(jìn)程完成了特定的任務(wù)后,系統(tǒng)收回這個(gè)進(jìn)程所占的這個(gè)進(jìn)程所占的_ _ _ _ _ _和取消該進(jìn)程的和取消該進(jìn)程的_ _ _ _就撤消了該進(jìn)程。就撤消了該進(jìn)程。 【答案】【答案】資源資源 PCBPCB697.7.進(jìn)程主要由進(jìn)程主要由_、_、_

48、三部分內(nèi)三部分內(nèi)容組成,其中容組成,其中_是進(jìn)程存在的唯是進(jìn)程存在的唯 一標(biāo)志。而一標(biāo)志。而_部分也可以為其他進(jìn)程共享。部分也可以為其他進(jìn)程共享。 答:答:程序段程序段 數(shù)據(jù)段數(shù)據(jù)段 PCB PCB PCB PCB 程序段程序段 708.8.將進(jìn)程的將進(jìn)程的_鏈接在一起就形成了進(jìn)程隊(duì)鏈接在一起就形成了進(jìn)程隊(duì)列。列。 答:答:PCBPCB719.9.設(shè)系統(tǒng)中有設(shè)系統(tǒng)中有n(nn(n2)2)個(gè)進(jìn)程,且當(dāng)前不在執(zhí)行進(jìn)程調(diào)個(gè)進(jìn)程,且當(dāng)前不在執(zhí)行進(jìn)程調(diào)度程序,試考慮下述度程序,試考慮下述4 4種情況:種情況: 沒(méi)有運(yùn)行進(jìn)程,有沒(méi)有運(yùn)行進(jìn)程,有2 2個(gè)就緒進(jìn)程,個(gè)就緒進(jìn)程,n n個(gè)進(jìn)程處于等待狀態(tài)個(gè)進(jìn)程處

49、于等待狀態(tài) 有有1 1個(gè)運(yùn)行進(jìn)程,沒(méi)有就緒進(jìn)程,個(gè)運(yùn)行進(jìn)程,沒(méi)有就緒進(jìn)程,n-1n-1進(jìn)程處于等待狀態(tài)進(jìn)程處于等待狀態(tài) 有有1 1個(gè)運(yùn)行進(jìn)程,有個(gè)運(yùn)行進(jìn)程,有1 1個(gè)就緒進(jìn)程,個(gè)就緒進(jìn)程,n-2n-2進(jìn)程處于等待狀態(tài)進(jìn)程處于等待狀態(tài) 有有1 1個(gè)運(yùn)行進(jìn)程,個(gè)運(yùn)行進(jìn)程,n-1n-1個(gè)就緒進(jìn)程,沒(méi)有進(jìn)程處于等待狀態(tài)個(gè)就緒進(jìn)程,沒(méi)有進(jìn)程處于等待狀態(tài) 上述情況中,不可能發(fā)生的情況是上述情況中,不可能發(fā)生的情況是_ _ 。 答:答: 7210.10.在一個(gè)單處理機(jī)系統(tǒng)中,若有在一個(gè)單處理機(jī)系統(tǒng)中,若有5 5個(gè)用戶進(jìn)程,個(gè)用戶進(jìn)程,且假設(shè)當(dāng)前時(shí)刻為用戶態(tài),則處于且假設(shè)當(dāng)前時(shí)刻為用戶態(tài),則處于 就緒狀態(tài)的用

50、戶進(jìn)程最多有就緒狀態(tài)的用戶進(jìn)程最多有_個(gè),最少有個(gè),最少有_個(gè)。個(gè)。 答:答:4 0 73選擇題選擇題n1 1一個(gè)進(jìn)程被喚醒,意味著一個(gè)進(jìn)程被喚醒,意味著 。(A A)該進(jìn)程重新占有了)該進(jìn)程重新占有了CPU CPU (B B)進(jìn)程狀態(tài)變?yōu)榫途w)進(jìn)程狀態(tài)變?yōu)榫途w (C C)它的優(yōu)先權(quán)變?yōu)樽畲螅┧膬?yōu)先權(quán)變?yōu)樽畲?(D D)其)其PCBPCB移至就緒隊(duì)列的隊(duì)首移至就緒隊(duì)列的隊(duì)首 【答案】(【答案】(B B)【解析】進(jìn)程被喚醒是進(jìn)入就緒隊(duì)列。是否插入到就緒隊(duì)列【解析】進(jìn)程被喚醒是進(jìn)入就緒隊(duì)列。是否插入到就緒隊(duì)列的什么地方,取決于就緒的管理方法和進(jìn)程調(diào)度的算法。如的什么地方,取決于就緒的管理方法和進(jìn)

51、程調(diào)度的算法。如果進(jìn)程調(diào)度是最高優(yōu)先數(shù)優(yōu)先,該進(jìn)程按優(yōu)先數(shù)插入該隊(duì)列果進(jìn)程調(diào)度是最高優(yōu)先數(shù)優(yōu)先,該進(jìn)程按優(yōu)先數(shù)插入該隊(duì)列中;如果該隊(duì)列是按到達(dá)的先后次序排列的,則按到達(dá)的先中;如果該隊(duì)列是按到達(dá)的先后次序排列的,則按到達(dá)的先后插入。后插入。 74n2 2進(jìn)程和程序的本質(zhì)區(qū)別是進(jìn)程和程序的本質(zhì)區(qū)別是 。(A A)存儲(chǔ)在內(nèi)存和外存)存儲(chǔ)在內(nèi)存和外存 (B B)順序和非順序執(zhí)行機(jī)器指令)順序和非順序執(zhí)行機(jī)器指令(C C)分時(shí)使用和獨(dú)占使用計(jì)算機(jī)資源)分時(shí)使用和獨(dú)占使用計(jì)算機(jī)資源 (D D)動(dòng)態(tài)和靜態(tài)特征)動(dòng)態(tài)和靜態(tài)特征【答案】(【答案】(D D)【解析】程序是指令的集合,而進(jìn)程是可以和其它程序并發(fā)【

52、解析】程序是指令的集合,而進(jìn)程是可以和其它程序并發(fā)執(zhí)行的程序的一次執(zhí)行過(guò)程。程序可以作為資料長(zhǎng)期保存,執(zhí)行的程序的一次執(zhí)行過(guò)程。程序可以作為資料長(zhǎng)期保存,而進(jìn)程有從產(chǎn)生到消亡的過(guò)程。而進(jìn)程有從產(chǎn)生到消亡的過(guò)程。75n3 3某進(jìn)程所要求的一次打印輸出結(jié)束,該進(jìn)程某進(jìn)程所要求的一次打印輸出結(jié)束,該進(jìn)程被被 ,進(jìn)程的狀態(tài)將從,進(jìn)程的狀態(tài)將從 。(A A)阻塞)阻塞 (B B)執(zhí)行)執(zhí)行 (C C)喚)喚醒醒 (D D)運(yùn)行狀態(tài)到阻塞狀態(tài))運(yùn)行狀態(tài)到阻塞狀態(tài)(E E)就緒到運(yùn)行)就緒到運(yùn)行 (F F)阻塞到就緒)阻塞到就緒 (H H)運(yùn)行到就緒)運(yùn)行到就緒 【答案】【答案】(C C),),(F F)【

53、解析】當(dāng)某進(jìn)程在進(jìn)程輸入輸出時(shí),進(jìn)程的狀態(tài)是處【解析】當(dāng)某進(jìn)程在進(jìn)程輸入輸出時(shí),進(jìn)程的狀態(tài)是處于阻塞或等待狀態(tài),輸入輸出完成后,進(jìn)程被喚醒,其于阻塞或等待狀態(tài),輸入輸出完成后,進(jìn)程被喚醒,其狀態(tài)將從阻塞變?yōu)榫途w。狀態(tài)將從阻塞變?yōu)榫途w。 76n4 4系統(tǒng)感知進(jìn)程的唯一實(shí)體是系統(tǒng)感知進(jìn)程的唯一實(shí)體是 。(A A)JCB JCB (B B)FCBFCB (C C)PCB PCB (D D)SJTSJT 【答案】(【答案】(C C)【解析】進(jìn)程控制塊【解析】進(jìn)程控制塊PCBPCB是進(jìn)程存在的唯一標(biāo)志。是進(jìn)程存在的唯一標(biāo)志。 77n5 5一進(jìn)程在某一時(shí)刻具有一進(jìn)程在某一時(shí)刻具有 。 (A A)一種狀態(tài))

54、一種狀態(tài) (B B)兩種狀態(tài))兩種狀態(tài) (C C)三種狀態(tài))三種狀態(tài) (D D)四種狀態(tài))四種狀態(tài) 【答案】(【答案】(A A)【解析】進(jìn)程可能處于就緒、運(yùn)行、等待三種基本狀【解析】進(jìn)程可能處于就緒、運(yùn)行、等待三種基本狀態(tài),但進(jìn)程在任一時(shí)刻只能處于一種狀態(tài)。態(tài),但進(jìn)程在任一時(shí)刻只能處于一種狀態(tài)。 78n6 6進(jìn)程從運(yùn)行狀態(tài)變?yōu)榈却脑蚩赡苓M(jìn)程從運(yùn)行狀態(tài)變?yōu)榈却脑蚩赡苁鞘?。(A A)輸入輸出事件發(fā)生)輸入輸出事件發(fā)生 (B B)時(shí)間片到)時(shí)間片到 (C C)輸入輸出事件完成)輸入輸出事件完成 (D D)某個(gè)進(jìn)程被喚醒)某個(gè)進(jìn)程被喚醒 【答案】(【答案】(A A)【解析】正在運(yùn)行的進(jìn)程如果要申請(qǐng)輸入或輸出,這時(shí)【解析】正在運(yùn)行的進(jìn)程如果要申請(qǐng)輸入或輸出,這時(shí)進(jìn)程的狀態(tài)將從運(yùn)行變?yōu)榈却?,將進(jìn)程的狀態(tài)將從運(yùn)行變?yōu)榈却?,將CPUCPU讓出,等待輸入或讓出,等待輸入或輸出完成。輸出完成。 79n7 7進(jìn)程創(chuàng)建原語(yǔ)的任務(wù)是進(jìn)程創(chuàng)建原語(yǔ)的任務(wù)是 。(A A)為進(jìn)程編制程序)為進(jìn)程編制程序 (B B)為進(jìn)程建立)為進(jìn)程建立PCBPCB表表 (C C)為進(jìn)程分配)為進(jìn)程分配CPU CPU (D D)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論