第二章 課后習(xí)題解答

上傳人:無(wú)*** 文檔編號(hào):239609836 上傳時(shí)間:2024-02-07 格式:PPT 頁(yè)數(shù):17 大?。?76KB
收藏 版權(quán)申訴 舉報(bào) 下載
第二章 課后習(xí)題解答_第1頁(yè)
第1頁(yè) / 共17頁(yè)
第二章 課后習(xí)題解答_第2頁(yè)
第2頁(yè) / 共17頁(yè)
第二章 課后習(xí)題解答_第3頁(yè)
第3頁(yè) / 共17頁(yè)

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《第二章 課后習(xí)題解答》由會(huì)員分享,可在線閱讀,更多相關(guān)《第二章 課后習(xí)題解答(17頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、第二章第二章 課后習(xí)題解答課后習(xí)題解答第第2章章 進(jìn)程管理進(jìn)程管理11操作系統(tǒng)為什么要引入進(jìn)程的概念?操作系統(tǒng)為什么要引入進(jìn)程的概念?【解答解答】程序在并發(fā)執(zhí)行方式下,運(yùn)行時(shí)具有異程序在并發(fā)執(zhí)行方式下,運(yùn)行時(shí)具有異步性的特征。這樣,就需要一個(gè)數(shù)據(jù)結(jié)構(gòu)步性的特征。這樣,就需要一個(gè)數(shù)據(jù)結(jié)構(gòu)PCB來(lái)來(lái)記錄程序的狀態(tài),以及控制其狀態(tài)轉(zhuǎn)換所需的一記錄程序的狀態(tài),以及控制其狀態(tài)轉(zhuǎn)換所需的一些信息。因此,將些信息。因此,將PCB、程序、數(shù)據(jù)三者組成一程序、數(shù)據(jù)三者組成一個(gè)完整的實(shí)體,就是進(jìn)程實(shí)體。進(jìn)程是程序的一個(gè)完整的實(shí)體,就是進(jìn)程實(shí)體。進(jìn)程是程序的一次執(zhí)行,引入進(jìn)程的概念,便于操作系統(tǒng)對(duì)于程次執(zhí)行,引入進(jìn)

2、程的概念,便于操作系統(tǒng)對(duì)于程序的運(yùn)行進(jìn)行控制。序的運(yùn)行進(jìn)行控制。2試比較進(jìn)程和程序的區(qū)別。試比較進(jìn)程和程序的區(qū)別。【解答解答】進(jìn)程和程序之間存在著密切的聯(lián)系,但它們是兩進(jìn)程和程序之間存在著密切的聯(lián)系,但它們是兩個(gè)完全不同的概念。它們之間的主要區(qū)別是:個(gè)完全不同的概念。它們之間的主要區(qū)別是:(1)程序是靜態(tài)的概念,本身可以作為一種軟件資源長(zhǎng)期)程序是靜態(tài)的概念,本身可以作為一種軟件資源長(zhǎng)期保存著;而進(jìn)程則是程序的一次執(zhí)行過(guò)程。它是動(dòng)態(tài)的概保存著;而進(jìn)程則是程序的一次執(zhí)行過(guò)程。它是動(dòng)態(tài)的概念。念。(2)進(jìn)程是一個(gè)能獨(dú)立運(yùn)行的單位,能與其它進(jìn)程并發(fā)執(zhí))進(jìn)程是一個(gè)能獨(dú)立運(yùn)行的單位,能與其它進(jìn)程并發(fā)執(zhí)行

3、。進(jìn)程是作為資源申請(qǐng)和調(diào)度單位存在的;而通常的程行。進(jìn)程是作為資源申請(qǐng)和調(diào)度單位存在的;而通常的程序是不能作為一個(gè)獨(dú)立運(yùn)行的單位而并發(fā)執(zhí)行的。序是不能作為一個(gè)獨(dú)立運(yùn)行的單位而并發(fā)執(zhí)行的。(3)程序和進(jìn)程無(wú)一一對(duì)應(yīng)的關(guān)系。一個(gè)程序可由多個(gè)進(jìn))程序和進(jìn)程無(wú)一一對(duì)應(yīng)的關(guān)系。一個(gè)程序可由多個(gè)進(jìn)程共用;另一方面,一個(gè)進(jìn)程在其活動(dòng)中又可順序地執(zhí)行程共用;另一方面,一個(gè)進(jìn)程在其活動(dòng)中又可順序地執(zhí)行若干個(gè)程序。一個(gè)程序,運(yùn)行一次,便創(chuàng)建了一個(gè)進(jìn)程;若干個(gè)程序。一個(gè)程序,運(yùn)行一次,便創(chuàng)建了一個(gè)進(jìn)程;同一個(gè)程序,若運(yùn)行十次,就產(chǎn)生了十個(gè)進(jìn)程。同一個(gè)程序,若運(yùn)行十次,就產(chǎn)生了十個(gè)進(jìn)程。(4)各個(gè)進(jìn)程在并發(fā)執(zhí)行過(guò)程中

4、會(huì)產(chǎn)生相互制約關(guān)系,造)各個(gè)進(jìn)程在并發(fā)執(zhí)行過(guò)程中會(huì)產(chǎn)生相互制約關(guān)系,造成各自前進(jìn)速度的不可預(yù)測(cè)性。而程序本身是靜態(tài)的,不成各自前進(jìn)速度的不可預(yù)測(cè)性。而程序本身是靜態(tài)的,不存在這種異步特征。存在這種異步特征。第第2章章 進(jìn)程管理進(jìn)程管理23程序并發(fā)執(zhí)行,為什么會(huì)失去封閉性和可再現(xiàn)性?程序并發(fā)執(zhí)行,為什么會(huì)失去封閉性和可再現(xiàn)性?【解答解答】在程序并發(fā)執(zhí)行的環(huán)境下,多個(gè)進(jìn)程共享系統(tǒng)中在程序并發(fā)執(zhí)行的環(huán)境下,多個(gè)進(jìn)程共享系統(tǒng)中的資源,這些資源是否被使用,及每一時(shí)刻由哪個(gè)進(jìn)程使的資源,這些資源是否被使用,及每一時(shí)刻由哪個(gè)進(jìn)程使用,將由多個(gè)進(jìn)程的相互作用而決定。這樣,程序的執(zhí)行用,將由多個(gè)進(jìn)程的相互作用而

5、決定。這樣,程序的執(zhí)行就失去了封閉性。某個(gè)進(jìn)程的執(zhí)行必然受到其它進(jìn)程的影就失去了封閉性。某個(gè)進(jìn)程的執(zhí)行必然受到其它進(jìn)程的影響。響。由于進(jìn)程在并發(fā)執(zhí)行的過(guò)程中失去了封閉性,當(dāng)下一次再由于進(jìn)程在并發(fā)執(zhí)行的過(guò)程中失去了封閉性,當(dāng)下一次再運(yùn)行該程序時(shí),系統(tǒng)中存在的進(jìn)程及各進(jìn)程的狀態(tài)都可能運(yùn)行該程序時(shí),系統(tǒng)中存在的進(jìn)程及各進(jìn)程的狀態(tài)都可能發(fā)生變化,導(dǎo)致進(jìn)程的執(zhí)行失去可再現(xiàn)性。發(fā)生變化,導(dǎo)致進(jìn)程的執(zhí)行失去可再現(xiàn)性。4什么叫進(jìn)程的并發(fā)性?試舉一個(gè)進(jìn)程并發(fā)執(zhí)行的例子。什么叫進(jìn)程的并發(fā)性?試舉一個(gè)進(jìn)程并發(fā)執(zhí)行的例子?!窘獯鸾獯稹慷鄠€(gè)進(jìn)程在同一時(shí)間間隔內(nèi)同時(shí)發(fā)生,叫做進(jìn)程多個(gè)進(jìn)程在同一時(shí)間間隔內(nèi)同時(shí)發(fā)生,叫做進(jìn)程

6、的并發(fā)性。的并發(fā)性。例如:我們?cè)诶纾何覀冊(cè)贚inux系統(tǒng)下使用編輯器系統(tǒng)下使用編輯器vi進(jìn)行編輯,而此進(jìn)行編輯,而此時(shí)系統(tǒng)正在后臺(tái)運(yùn)行一個(gè)編譯程序,此時(shí),兩個(gè)進(jìn)程并發(fā)時(shí)系統(tǒng)正在后臺(tái)運(yùn)行一個(gè)編譯程序,此時(shí),兩個(gè)進(jìn)程并發(fā)執(zhí)行。執(zhí)行。第第2章章 進(jìn)程管理進(jìn)程管理35舉一個(gè)例子,說(shuō)明一個(gè)程序可能同時(shí)屬于多個(gè)進(jìn)程。舉一個(gè)例子,說(shuō)明一個(gè)程序可能同時(shí)屬于多個(gè)進(jìn)程?!窘獯鸾獯稹坷纾撼械氖浙y系統(tǒng)。在每個(gè)終端上,收銀員在運(yùn)例如:超市的收銀系統(tǒng)。在每個(gè)終端上,收銀員在運(yùn)行收款程序,因此每個(gè)收銀員都在執(zhí)行一個(gè)進(jìn)程。超市里同時(shí)行收款程序,因此每個(gè)收銀員都在執(zhí)行一個(gè)進(jìn)程。超市里同時(shí)有很多收款終端,同一個(gè)程序被并發(fā)執(zhí)

7、行多次,造成了多個(gè)進(jìn)有很多收款終端,同一個(gè)程序被并發(fā)執(zhí)行多次,造成了多個(gè)進(jìn)程并發(fā)執(zhí)行。程并發(fā)執(zhí)行。6試說(shuō)明試說(shuō)明PCB的作用的作用,為什么說(shuō)為什么說(shuō)PCB是進(jìn)程存在的惟一標(biāo)志是進(jìn)程存在的惟一標(biāo)志?【解答解答】PCB的作用是:在一個(gè)在多道程序環(huán)境下,集中反映的作用是:在一個(gè)在多道程序環(huán)境下,集中反映了一個(gè)進(jìn)程的動(dòng)態(tài)特征。在進(jìn)程并發(fā)執(zhí)行時(shí),由于資源共享,了一個(gè)進(jìn)程的動(dòng)態(tài)特征。在進(jìn)程并發(fā)執(zhí)行時(shí),由于資源共享,帶來(lái)各進(jìn)程之間的相互制約。顯然,為了反映這些制約關(guān)系和帶來(lái)各進(jìn)程之間的相互制約。顯然,為了反映這些制約關(guān)系和資源共享關(guān)系,必須使用資源共享關(guān)系,必須使用PCB中的信息,才能對(duì)進(jìn)程實(shí)施有效中的信息

8、,才能對(duì)進(jìn)程實(shí)施有效的管理和控制。的管理和控制。PCB是進(jìn)程實(shí)體的一部分,是操作系統(tǒng)中非常重要的數(shù)據(jù)是進(jìn)程實(shí)體的一部分,是操作系統(tǒng)中非常重要的數(shù)據(jù)結(jié)構(gòu),存放著進(jìn)程所需的運(yùn)行信息和控制信息,系統(tǒng)在創(chuàng)建進(jìn)結(jié)構(gòu),存放著進(jìn)程所需的運(yùn)行信息和控制信息,系統(tǒng)在創(chuàng)建進(jìn)程時(shí),首先創(chuàng)建程時(shí),首先創(chuàng)建PCB,然后通過(guò)然后通過(guò)PCB感知進(jìn)程的存在,進(jìn)程在感知進(jìn)程的存在,進(jìn)程在被撤消時(shí),被撤消時(shí),PCB也隨之被撤消。因此,也隨之被撤消。因此,PCB是進(jìn)程存在的惟一是進(jìn)程存在的惟一標(biāo)志。標(biāo)志。第第2章章 進(jìn)程管理進(jìn)程管理47說(shuō)明進(jìn)程由哪幾部分構(gòu)成?說(shuō)明進(jìn)程由哪幾部分構(gòu)成?【解答解答】進(jìn)程實(shí)體通常就是由程序、數(shù)據(jù)集合和進(jìn)

9、程實(shí)體通常就是由程序、數(shù)據(jù)集合和PCB這三部分構(gòu)成,也稱為這三部分構(gòu)成,也稱為“進(jìn)程映像進(jìn)程映像”。8什么叫臨界區(qū)?為什么進(jìn)程在進(jìn)入臨界區(qū)之前,什么叫臨界區(qū)?為什么進(jìn)程在進(jìn)入臨界區(qū)之前,要先執(zhí)行申請(qǐng)操作,離開(kāi)臨界區(qū),要做釋放操作?要先執(zhí)行申請(qǐng)操作,離開(kāi)臨界區(qū),要做釋放操作?【解答解答】將每個(gè)進(jìn)程中訪問(wèn)臨界資源的那段代碼稱將每個(gè)進(jìn)程中訪問(wèn)臨界資源的那段代碼稱為臨界區(qū),因此也可以說(shuō):不能被多個(gè)進(jìn)程同時(shí)進(jìn)為臨界區(qū),因此也可以說(shuō):不能被多個(gè)進(jìn)程同時(shí)進(jìn)入的程序或數(shù)據(jù)區(qū)域叫做臨界區(qū)。入的程序或數(shù)據(jù)區(qū)域叫做臨界區(qū)。因?yàn)榕R界區(qū)不能由多個(gè)進(jìn)程同時(shí)進(jìn)入,因此,在進(jìn)因?yàn)榕R界區(qū)不能由多個(gè)進(jìn)程同時(shí)進(jìn)入,因此,在進(jìn)入臨界

10、區(qū)之前,要先執(zhí)行申請(qǐng)操作,確保在沒(méi)有其入臨界區(qū)之前,要先執(zhí)行申請(qǐng)操作,確保在沒(méi)有其它進(jìn)程進(jìn)入的情況下,該進(jìn)程才能進(jìn)入該臨界區(qū);它進(jìn)程進(jìn)入的情況下,該進(jìn)程才能進(jìn)入該臨界區(qū);在離開(kāi)臨界區(qū)之前,要做釋放操作,以便其它進(jìn)程在離開(kāi)臨界區(qū)之前,要做釋放操作,以便其它進(jìn)程可以進(jìn)入該臨界區(qū)??梢赃M(jìn)入該臨界區(qū)。第第2章章 進(jìn)程管理進(jìn)程管理59試說(shuō)明進(jìn)程的基本狀態(tài)及轉(zhuǎn)換的原因。試說(shuō)明進(jìn)程的基本狀態(tài)及轉(zhuǎn)換的原因?!窘獯鸾獯稹吭诓僮飨到y(tǒng)中,進(jìn)程通常至少有三種基本狀態(tài)在操作系統(tǒng)中,進(jìn)程通常至少有三種基本狀態(tài):就就緒狀態(tài)、執(zhí)行狀態(tài)和阻塞狀態(tài)。緒狀態(tài)、執(zhí)行狀態(tài)和阻塞狀態(tài)。進(jìn)程狀態(tài)轉(zhuǎn)換的原因是進(jìn)程狀態(tài)轉(zhuǎn)換的原因是:系統(tǒng)中的進(jìn)

11、程是并發(fā)執(zhí)行的。在系系統(tǒng)中的進(jìn)程是并發(fā)執(zhí)行的。在系統(tǒng)中,統(tǒng)中,CPU在不同的時(shí)間,按一定的算法為不同的進(jìn)程服在不同的時(shí)間,按一定的算法為不同的進(jìn)程服務(wù)務(wù);系統(tǒng)中的資源是有限的系統(tǒng)中的資源是有限的;各進(jìn)程之間存在相互作用。因各進(jìn)程之間存在相互作用。因此,進(jìn)程并非固定處于某個(gè)狀態(tài),它將隨著自身的推進(jìn)和此,進(jìn)程并非固定處于某個(gè)狀態(tài),它將隨著自身的推進(jìn)和外界條件的變化而發(fā)生變化。對(duì)于一個(gè)系統(tǒng),處于就緒狀外界條件的變化而發(fā)生變化。對(duì)于一個(gè)系統(tǒng),處于就緒狀態(tài)的進(jìn)程,態(tài)的進(jìn)程,在調(diào)度程序?yàn)橹峙淞颂幚頇C(jī)之后,該在調(diào)度程序?yàn)橹峙淞颂幚頇C(jī)之后,該進(jìn)進(jìn)程便程便由就緒態(tài)由就緒態(tài)轉(zhuǎn)變?yōu)閳?zhí)行狀態(tài)。當(dāng)前進(jìn)程如果因分配給

12、它的時(shí)轉(zhuǎn)變?yōu)閳?zhí)行狀態(tài)。當(dāng)前進(jìn)程如果因分配給它的時(shí)間片己用完而被暫停執(zhí)行時(shí),該進(jìn)程便由執(zhí)行狀態(tài)又回到間片己用完而被暫停執(zhí)行時(shí),該進(jìn)程便由執(zhí)行狀態(tài)又回到就緒狀態(tài)就緒狀態(tài);一個(gè)處于執(zhí)行狀態(tài)的進(jìn)程,因?yàn)榈却惩獠渴录粋€(gè)處于執(zhí)行狀態(tài)的進(jìn)程,因?yàn)榈却惩獠渴录l(fā)生而使該進(jìn)程狀態(tài)轉(zhuǎn)變?yōu)樽枞麪顟B(tài)。一個(gè)處于阻塞狀態(tài)發(fā)生而使該進(jìn)程狀態(tài)轉(zhuǎn)變?yōu)樽枞麪顟B(tài)。一個(gè)處于阻塞狀態(tài)的進(jìn)程,當(dāng)它所需的外部事件滿足,它應(yīng)由阻塞狀態(tài)變?yōu)榈倪M(jìn)程,當(dāng)它所需的外部事件滿足,它應(yīng)由阻塞狀態(tài)變?yōu)榫途w狀態(tài)。就緒狀態(tài)。第第2章章 進(jìn)程管理進(jìn)程管理6n10在創(chuàng)建一個(gè)進(jìn)程時(shí),所要做的工作有在創(chuàng)建一個(gè)進(jìn)程時(shí),所要做的工作有哪些?哪些?n【解答解答】操作

13、系統(tǒng)通過(guò)進(jìn)程創(chuàng)建原語(yǔ)來(lái)創(chuàng)操作系統(tǒng)通過(guò)進(jìn)程創(chuàng)建原語(yǔ)來(lái)創(chuàng)建一個(gè)進(jìn)程。創(chuàng)建原語(yǔ)通過(guò)下述步驟創(chuàng)建建一個(gè)進(jìn)程。創(chuàng)建原語(yǔ)通過(guò)下述步驟創(chuàng)建一個(gè)進(jìn)程:一個(gè)進(jìn)程:n(1)申請(qǐng)空白)申請(qǐng)空白PCB。n(2)為新進(jìn)程分配資源。)為新進(jìn)程分配資源。n(3)初始化進(jìn)程控制塊。)初始化進(jìn)程控制塊。n(4)將新建進(jìn)程插入就緒態(tài)隊(duì)列。)將新建進(jìn)程插入就緒態(tài)隊(duì)列。11從概念上說(shuō)明記錄型信號(hào)量的構(gòu)成,描述從概念上說(shuō)明記錄型信號(hào)量的構(gòu)成,描述wait原語(yǔ)和原語(yǔ)和 signal 原語(yǔ)所進(jìn)行的操作。原語(yǔ)所進(jìn)行的操作?!窘獯鸾獯稹坑涗浶托盘?hào)量的數(shù)據(jù)結(jié)構(gòu)由兩部分構(gòu)成,即:數(shù)值記錄型信號(hào)量的數(shù)據(jù)結(jié)構(gòu)由兩部分構(gòu)成,即:數(shù)值分量和指針?lè)至俊?shù)值

14、表示系統(tǒng)中可用的該類(lèi)臨界資源的數(shù)分量和指針?lè)至?。?shù)值表示系統(tǒng)中可用的該類(lèi)臨界資源的數(shù)量,而指針?lè)至繛檫M(jìn)程鏈表指針,指向等待該類(lèi)資源的量,而指針?lè)至繛檫M(jìn)程鏈表指針,指向等待該類(lèi)資源的PCB隊(duì)列。隊(duì)列。申請(qǐng)臨界資源的原語(yǔ)申請(qǐng)臨界資源的原語(yǔ)wait操作可描述為:操作可描述為:procedure wait(S)var S:semaphore;begin s:=s-1;if s0 then 本進(jìn)程繼續(xù);本進(jìn)程繼續(xù);else 將本進(jìn)程放入阻塞態(tài)隊(duì)列;將本進(jìn)程放入阻塞態(tài)隊(duì)列;轉(zhuǎn)進(jìn)程調(diào)度轉(zhuǎn)進(jìn)程調(diào)度 end第第2章章 進(jìn)程管理進(jìn)程管理8釋放臨界資源的原語(yǔ)signal操作可描述為:procedure signal

15、(S)var S:semaphore;begin s:=s+1;if s0 then 喚醒指針L所指的阻塞態(tài)進(jìn)程;;end12在生產(chǎn)者在生產(chǎn)者消費(fèi)者問(wèn)題中,如果缺少了消費(fèi)者問(wèn)題中,如果缺少了signal(full)或或signal(empty),對(duì)執(zhí)行結(jié)果將對(duì)執(zhí)行結(jié)果將會(huì)有何影響?會(huì)有何影響?【解答解答】若缺少釋放資源的原語(yǔ)操作,則會(huì)導(dǎo)致生產(chǎn)者或若缺少釋放資源的原語(yǔ)操作,則會(huì)導(dǎo)致生產(chǎn)者或消費(fèi)者進(jìn)程不能再繼續(xù)工作。消費(fèi)者進(jìn)程不能再繼續(xù)工作。如缺少了如缺少了signal(full),則消費(fèi)者進(jìn)程可能得不到所需的臨,則消費(fèi)者進(jìn)程可能得不到所需的臨界資源如緩沖區(qū),不能取一件產(chǎn)品;同樣,如果缺少界資源如

16、緩沖區(qū),不能取一件產(chǎn)品;同樣,如果缺少signal(empty),則生產(chǎn)者進(jìn)程又可能得不到所需的資),則生產(chǎn)者進(jìn)程又可能得不到所需的資源,不能存放一件產(chǎn)品。源,不能存放一件產(chǎn)品。13在生產(chǎn)者在生產(chǎn)者消費(fèi)者問(wèn)題中,如果兩個(gè)消費(fèi)者問(wèn)題中,如果兩個(gè)wait操操作即作即wait(mutex)和和wait(empty)位置互換,位置互換,會(huì)產(chǎn)生什么后果?會(huì)產(chǎn)生什么后果?【解答解答】如果兩個(gè)如果兩個(gè)wait操作即操作即wait(mutex)和和wait(empty)位置互換,則有可能產(chǎn)生死鎖。位置互換,則有可能產(chǎn)生死鎖。第第2章章 進(jìn)程管理進(jìn)程管理914進(jìn)程的高級(jí)通信方式有哪幾種?進(jìn)程的高級(jí)通信方式有哪幾

17、種?【解答解答】高級(jí)通信方式可分為三大類(lèi):共享存儲(chǔ)器高級(jí)通信方式可分為三大類(lèi):共享存儲(chǔ)器系統(tǒng)、消息傳遞系統(tǒng)和管道通信系統(tǒng)。系統(tǒng)、消息傳遞系統(tǒng)和管道通信系統(tǒng)。在共享存儲(chǔ)器系統(tǒng)中,相互通信的進(jìn)程共享某些數(shù)在共享存儲(chǔ)器系統(tǒng)中,相互通信的進(jìn)程共享某些數(shù)據(jù)結(jié)構(gòu)或共享存儲(chǔ)區(qū);消息傳遞系統(tǒng)中,進(jìn)程間的據(jù)結(jié)構(gòu)或共享存儲(chǔ)區(qū);消息傳遞系統(tǒng)中,進(jìn)程間的數(shù)據(jù)交換以消息為單位,用戶直接利用系統(tǒng)提供的數(shù)據(jù)交換以消息為單位,用戶直接利用系統(tǒng)提供的一組通信原語(yǔ)來(lái)實(shí)現(xiàn)通信,消息傳遞系統(tǒng)可分為消一組通信原語(yǔ)來(lái)實(shí)現(xiàn)通信,消息傳遞系統(tǒng)可分為消息緩沖通信和信箱通信;管道通信通信的方法是,息緩沖通信和信箱通信;管道通信通信的方法是,向管

18、道提供輸入的發(fā)送進(jìn)程以字符流形式將大量的向管道提供輸入的發(fā)送進(jìn)程以字符流形式將大量的數(shù)據(jù)送入管道,而接受管道輸出的接收進(jìn)程可從管數(shù)據(jù)送入管道,而接受管道輸出的接收進(jìn)程可從管道中接收數(shù)據(jù)。道中接收數(shù)據(jù)。第第2章章 進(jìn)程管理進(jìn)程管理1015什么是線程?說(shuō)明它與進(jìn)程的主要區(qū)別。什么是線程?說(shuō)明它與進(jìn)程的主要區(qū)別?!窘獯鸾獯稹烤€程是進(jìn)程中執(zhí)行運(yùn)算的最小單位,亦即執(zhí)行處線程是進(jìn)程中執(zhí)行運(yùn)算的最小單位,亦即執(zhí)行處理機(jī)調(diào)府的基本單位。理機(jī)調(diào)府的基本單位。線程與進(jìn)程的主要區(qū)別如下線程與進(jìn)程的主要區(qū)別如下:(1)調(diào)度性方面。進(jìn)程是資源分配的基本單位,線程是分配調(diào)度性方面。進(jìn)程是資源分配的基本單位,線程是分配處理

19、機(jī)的基本單位,它與資源分配無(wú)關(guān),即真正在處理機(jī)處理機(jī)的基本單位,它與資源分配無(wú)關(guān),即真正在處理機(jī)上運(yùn)行的是線程。上運(yùn)行的是線程。(2)擁有資源方面。進(jìn)程是擁有資源的獨(dú)立單位,線程基本擁有資源方面。進(jìn)程是擁有資源的獨(dú)立單位,線程基本是不擁有資源的。同一進(jìn)程的線程共用該進(jìn)程的資源。是不擁有資源的。同一進(jìn)程的線程共用該進(jìn)程的資源。(3)并發(fā)性方面。進(jìn)程和線程都可以并發(fā)執(zhí)行。但同一個(gè)進(jìn)并發(fā)性方面。進(jìn)程和線程都可以并發(fā)執(zhí)行。但同一個(gè)進(jìn)程的線程在并發(fā)執(zhí)行時(shí),狀態(tài)轉(zhuǎn)換速度較快。程的線程在并發(fā)執(zhí)行時(shí),狀態(tài)轉(zhuǎn)換速度較快。(4)系統(tǒng)開(kāi)銷(xiāo)方面。進(jìn)程在創(chuàng)建、狀態(tài)轉(zhuǎn)換、撤銷(xiāo)時(shí)開(kāi)銷(xiāo)較系統(tǒng)開(kāi)銷(xiāo)方面。進(jìn)程在創(chuàng)建、狀態(tài)轉(zhuǎn)換、撤

20、銷(xiāo)時(shí)開(kāi)銷(xiāo)較大,對(duì)于同樣的工作,線程的開(kāi)銷(xiāo)較小。大,對(duì)于同樣的工作,線程的開(kāi)銷(xiāo)較小。第第2章章 進(jìn)程管理進(jìn)程管理1116什么是多線程機(jī)制?引入它有什么好處?【解答】多線程機(jī)制是指操作系統(tǒng)支持在一個(gè)進(jìn)程內(nèi)執(zhí)行多個(gè)線程的能力。引入線程的好處有以下幾點(diǎn):(1)易于調(diào)度。由于線程只作為獨(dú)立調(diào)度的基本單位,同一進(jìn)程的多個(gè)線程共享進(jìn)程的資源,所以線程易于切換。(2)提高了系統(tǒng)的效率。通過(guò)線程可方便有效地實(shí)現(xiàn)并發(fā)性。進(jìn)程可創(chuàng)建多個(gè)線程來(lái)執(zhí)行同一程序的不同部分。(3)創(chuàng)建一個(gè)線程比創(chuàng)建一個(gè)進(jìn)程花費(fèi)的開(kāi)銷(xiāo)少,創(chuàng)建速度快。(4)在多處理器的系統(tǒng)中,有利于發(fā)揮多處理器的功能,提高進(jìn)程的并行性。第第2章章 進(jìn)程管理進(jìn)程

21、管理1217在讀者寫(xiě)者問(wèn)題中,如果修改問(wèn)題中的同步算法,要求對(duì)寫(xiě)進(jìn)程優(yōu)先,即一旦寫(xiě)進(jìn)程到達(dá),后續(xù)的讀者進(jìn)程必須等待,而無(wú)論是否有讀者進(jìn)程在讀文件。寫(xiě)出相應(yīng)進(jìn)程的程序段?!窘獯稹吭黾右粋€(gè)信號(hào)量S,用于在寫(xiě)進(jìn)程到達(dá)后封鎖后續(xù)的讀進(jìn)程。semaphore S=1;在讀進(jìn)程開(kāi)頭,增加兩句;P(S);V(S);即所有訪問(wèn)該文件的進(jìn)程,在申請(qǐng)讀以前,先申請(qǐng)信號(hào)量S。如果沒(méi)有寫(xiě)進(jìn)程,則可以直接通過(guò);如果存在寫(xiě)進(jìn)程,則該信號(hào)量S申請(qǐng)不到,該讀者進(jìn)程等待。對(duì)于寫(xiě)進(jìn)程,首先應(yīng)該申請(qǐng)信號(hào)量S,由于讀者進(jìn)程申請(qǐng)到以后接著釋放該信號(hào)量,所以寫(xiě)者進(jìn)程更容易申請(qǐng)到S。寫(xiě)者進(jìn)程申請(qǐng)到S以后,直到寫(xiě)操作完成以后才釋放該信號(hào)量。

22、因此,讀者進(jìn)程和寫(xiě)進(jìn)程改為:第第2章章 進(jìn)程管理進(jìn)程管理13n讀者一寫(xiě)者問(wèn)題可描述如下:semaphore rmutex=1,wmutex=1;semphore S=1;int readcount=0;void main()parbegin(reader,writer);/*讀者進(jìn)程*/*寫(xiě)者進(jìn)程*/void reader()void writer()while(1)while(1)wait(s);wait(s);signal(s);wait(wmutex);wait(rmutex);執(zhí)行寫(xiě)操作;if(readcount=0)wait(wmutex);signal(wmutex);readco

23、unt+;signal(s);signal(rmutex);進(jìn)行讀操作;wait(rmutex);readcount-;if(readcount=0)signal(wmutex);signal(rmutex);18試?yán)糜涗浶托盘?hào)量寫(xiě)出一個(gè)不會(huì)出現(xiàn)死鎖的哲學(xué)家進(jìn)餐問(wèn)題的算法?!窘獯稹坑卸喾N算法可解決該問(wèn)題。方法(1)至多只允許有四位哲學(xué)家同時(shí)去拿左邊的筷子。實(shí)現(xiàn)方法:在每個(gè)進(jìn)程的程序段前定義一個(gè)信號(hào)量S,初值為4,每個(gè)哲學(xué)家在使用筷子之前,先申請(qǐng)信號(hào)量S,吃完放下筷子后,再釋放S。方法(2)僅當(dāng)哲學(xué)家的左、右兩只筷子均可用時(shí),才允許他拿起筷子進(jìn)餐。解決的方法:可用AND型信號(hào)量。方法(3)規(guī)定

24、奇數(shù)號(hào)哲學(xué)家先拿他左邊的筷子,然后再去拿右邊的筷子;而偶數(shù)號(hào)哲學(xué)家則相反。實(shí)現(xiàn)的方法:在第i個(gè)哲學(xué)家所執(zhí)行的程序段中判定i的值是偶數(shù)還是奇數(shù),然后再做資源申請(qǐng)。第第2章章 進(jìn)程管理進(jìn)程管理1519設(shè)公共汽車(chē)上有一位司機(jī)和一位售票員,它們的活動(dòng)設(shè)公共汽車(chē)上有一位司機(jī)和一位售票員,它們的活動(dòng)如下:如下:第第2章章 進(jìn)程管理進(jìn)程管理16請(qǐng)分析司機(jī)與售票員之間的同步關(guān)系,如何用請(qǐng)分析司機(jī)與售票員之間的同步關(guān)系,如何用P、V 操作實(shí)操作實(shí)現(xiàn)?,F(xiàn)。【解答解答】為了安全起見(jiàn),顯然要求:關(guān)車(chē)門(mén)后才能啟動(dòng)車(chē)輛;為了安全起見(jiàn),顯然要求:關(guān)車(chē)門(mén)后才能啟動(dòng)車(chē)輛;到站后才能開(kāi)車(chē)門(mén)。所以司機(jī)和售票員在到站、開(kāi)門(mén)、關(guān)門(mén)、到

25、站后才能開(kāi)車(chē)門(mén)。所以司機(jī)和售票員在到站、開(kāi)門(mén)、關(guān)門(mén)、啟動(dòng)車(chē)輛這幾個(gè)活動(dòng)之間存在著同步關(guān)系。兩個(gè)信號(hào)量啟動(dòng)車(chē)輛這幾個(gè)活動(dòng)之間存在著同步關(guān)系。兩個(gè)信號(hào)量S1、S2分別表示可以開(kāi)車(chē)和可以開(kāi)門(mén),分別表示可以開(kāi)車(chē)和可以開(kāi)門(mén),S1的初值為的初值為1,S2的初的初值為值為0。第第2章章 進(jìn)程管理進(jìn)程管理1720.說(shuō)明說(shuō)明Linux系統(tǒng)的進(jìn)程有哪幾種狀態(tài)?系統(tǒng)的進(jìn)程有哪幾種狀態(tài)?【解答解答】在在Linux中,一個(gè)迸程的狀態(tài)信息是由中,一個(gè)迸程的狀態(tài)信息是由task_struct結(jié)構(gòu)中的結(jié)構(gòu)中的state成負(fù)描述的,它定義了成負(fù)描述的,它定義了5種進(jìn)種進(jìn)程狀態(tài)程狀態(tài):(1)TASK-RUNNING狀態(tài),運(yùn)行狀態(tài)

26、。此進(jìn)程的運(yùn)行狀狀態(tài),運(yùn)行狀態(tài)。此進(jìn)程的運(yùn)行狀態(tài)實(shí)際包含基本狀態(tài)中的執(zhí)行和就緒兩種狀態(tài)。進(jìn)程是正在態(tài)實(shí)際包含基本狀態(tài)中的執(zhí)行和就緒兩種狀態(tài)。進(jìn)程是正在運(yùn)行還是處于就緒狀態(tài)準(zhǔn)備運(yùn)行,要靠運(yùn)行還是處于就緒狀態(tài)準(zhǔn)備運(yùn)行,要靠cunent來(lái)區(qū)分。來(lái)區(qū)分。(2)TASK-INTERRUPTIBLE狀態(tài),可中斷的等待狀態(tài)。狀態(tài),可中斷的等待狀態(tài)。進(jìn)程正在等待某些事件。進(jìn)程正在等待某些事件。(3)TASK-UNINTERRUPTIBLE狀態(tài),不可中斷等待狀狀態(tài),不可中斷等待狀態(tài)。態(tài)。(4)TASK-ZOMBIE狀態(tài),僵死狀態(tài)。由于某些原因進(jìn)程狀態(tài),僵死狀態(tài)。由于某些原因進(jìn)程被終止,這個(gè)迸程所占有的資源全部釋放之后,還保存著被終止,這個(gè)迸程所占有的資源全部釋放之后,還保存著PCB信息,這種占有信息,這種占有PCB但已被撤消的進(jìn)程就處于僵死狀但已被撤消的進(jìn)程就處于僵死狀態(tài)。態(tài)。(5)TASK-STOPPED狀態(tài),暫停狀態(tài)。狀態(tài),暫停狀態(tài)。

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!