操作系統(tǒng)進(jìn)階-2 進(jìn)程管理1_第1頁
操作系統(tǒng)進(jìn)階-2 進(jìn)程管理1_第2頁
操作系統(tǒng)進(jìn)階-2 進(jìn)程管理1_第3頁
操作系統(tǒng)進(jìn)階-2 進(jìn)程管理1_第4頁
操作系統(tǒng)進(jìn)階-2 進(jìn)程管理1_第5頁
已閱讀5頁,還剩97頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系1第第2 2章章 進(jìn)程管理進(jìn)程管理山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系2知識(shí)體系框架圖知識(shí)體系框架圖2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系3主要知識(shí)點(diǎn)主要知識(shí)點(diǎn)1.1. 進(jìn)程與線程進(jìn)程與線程2.2. 處理機(jī)調(diào)度處理機(jī)調(diào)度3.3. 進(jìn)程同步與互斥進(jìn)程同步與互斥4.4. 死死 鎖鎖進(jìn)程概念進(jìn)程概念進(jìn)程的狀態(tài)與轉(zhuǎn)換進(jìn)程的狀態(tài)與轉(zhuǎn)換 進(jìn)程控制進(jìn)程控制進(jìn)程組織進(jìn)程組織進(jìn)程通信進(jìn)程通信線程概念與多線程模型線程概念與多線程模型調(diào)度的基本概念調(diào)度的基本概念調(diào)度時(shí)機(jī)、切換與過程調(diào)

2、度時(shí)機(jī)、切換與過程 調(diào)度的基本準(zhǔn)則調(diào)度的基本準(zhǔn)則調(diào)度方式調(diào)度方式典型調(diào)度算法典型調(diào)度算法 進(jìn)程同步的概念進(jìn)程同步的概念實(shí)現(xiàn)臨界區(qū)互斥的基本方法實(shí)現(xiàn)臨界區(qū)互斥的基本方法 信號(hào)量信號(hào)量經(jīng)典同步算法經(jīng)典同步算法死鎖概念死鎖概念死鎖處理策略死鎖處理策略 死鎖預(yù)防死鎖預(yù)防死鎖避免死鎖避免死鎖檢測(cè)與解除死鎖檢測(cè)與解除2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系42.1 2.1 進(jìn)程與線程進(jìn)程與線程在多道程序設(shè)計(jì)的環(huán)境下,為了描在多道程序設(shè)計(jì)的環(huán)境下,為了描述程序在計(jì)算機(jī)系統(tǒng)內(nèi)的執(zhí)行情況,述程序在計(jì)算機(jī)系統(tǒng)內(nèi)的執(zhí)行情況,必須引人新的概念必須引人新的概念進(jìn)程進(jìn)程。1.1.進(jìn)程的定義:進(jìn)程的定義:可

3、并發(fā)執(zhí)行的程序在一可并發(fā)執(zhí)行的程序在一個(gè)數(shù)據(jù)集合上的一次執(zhí)行過程個(gè)數(shù)據(jù)集合上的一次執(zhí)行過程, ,是系統(tǒng)進(jìn)行是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。資源分配和調(diào)度的一個(gè)獨(dú)立單位。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系5進(jìn)程的組成進(jìn)程的組成操作系統(tǒng)表示、管理進(jìn)程的操作系統(tǒng)表示、管理進(jìn)程的PCBPCB表以及:表以及: 執(zhí)行的執(zhí)行的程序程序及處理的及處理的數(shù)據(jù)數(shù)據(jù); 一片存放程序和數(shù)據(jù)的空間一片存放程序和數(shù)據(jù)的空間; 一個(gè)棧區(qū)一個(gè)棧區(qū)(一個(gè)用戶棧一個(gè)用戶棧,一個(gè)核心棧一個(gè)核心棧); 進(jìn)程使用的其它系統(tǒng)資源。進(jìn)程使用的其它系統(tǒng)資源。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)

4、系6練習(xí)題練習(xí)題 “程序狀態(tài)字寄存器內(nèi)容程序狀態(tài)字寄存器內(nèi)容”屬于進(jìn)程屬于進(jìn)程控制塊的控制塊的( )A、標(biāo)識(shí)信息、標(biāo)識(shí)信息 B、控制信息、控制信息C、現(xiàn)場(chǎng)信息、現(xiàn)場(chǎng)信息 D、調(diào)度信息、調(diào)度信息C程序和數(shù)據(jù)的地址程序和數(shù)據(jù)的地址進(jìn)程同步和通信機(jī)制進(jìn)程同步和通信機(jī)制資源清單資源清單鏈接指針鏈接指針進(jìn)程優(yōu)先級(jí)進(jìn)程優(yōu)先級(jí)進(jìn)程調(diào)度所需其他信進(jìn)程調(diào)度所需其他信息息事件事件進(jìn)程狀態(tài)進(jìn)程狀態(tài)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系7l進(jìn)程上下文(進(jìn)程上下文(process context)是進(jìn)程執(zhí)行活動(dòng)全過程的靜態(tài)描述。是進(jìn)程執(zhí)行活動(dòng)全過程的靜態(tài)描述。進(jìn)程的物理實(shí)體與支持進(jìn)程運(yùn)行的物理環(huán)境統(tǒng)稱

5、為進(jìn)程的物理實(shí)體與支持進(jìn)程運(yùn)行的物理環(huán)境統(tǒng)稱為進(jìn)程上下文進(jìn)程上下文lPCB+程序程序l系統(tǒng)環(huán)境:地址空間,系統(tǒng)棧,打開文件表,系統(tǒng)環(huán)境:地址空間,系統(tǒng)棧,打開文件表,l上下文切換(上下文切換(context switch)由一個(gè)進(jìn)程的上下文轉(zhuǎn)到另外一個(gè)進(jìn)程的上下文由一個(gè)進(jìn)程的上下文轉(zhuǎn)到另外一個(gè)進(jìn)程的上下文l系統(tǒng)開銷(系統(tǒng)開銷(system overhead)運(yùn)行操作系統(tǒng)程序完成系統(tǒng)管理工作所花費(fèi)的時(shí)間運(yùn)行操作系統(tǒng)程序完成系統(tǒng)管理工作所花費(fèi)的時(shí)間和空間和空間進(jìn)程上下文進(jìn)程上下文2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系8進(jìn)程上下文進(jìn)程上下文2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)

6、業(yè)大學(xué)計(jì)算機(jī)系9核心態(tài)和用戶態(tài)核心態(tài)和用戶態(tài)用戶態(tài)時(shí)不可直接訪問受保護(hù)的用戶態(tài)時(shí)不可直接訪問受保護(hù)的OS代碼;代碼;核心態(tài)時(shí)可執(zhí)行全部核心態(tài)時(shí)可執(zhí)行全部OS代碼代碼.(處理機(jī)運(yùn)行時(shí)的兩種狀態(tài))(處理機(jī)運(yùn)行時(shí)的兩種狀態(tài))2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系10 進(jìn)程核心棧:進(jìn)程核心棧:處理機(jī)狀態(tài)信息保存區(qū)。處理機(jī)狀態(tài)信息保存區(qū)。保存進(jìn)程核心態(tài)運(yùn)行現(xiàn)場(chǎng)信息:保存進(jìn)程核心態(tài)運(yùn)行現(xiàn)場(chǎng)信息: 通用寄存器通用寄存器。這是指用戶程序可以使用的數(shù)。這是指用戶程序可以使用的數(shù)據(jù)、地址寄存器。據(jù)、地址寄存器。 控制和狀態(tài)寄存器控制和狀態(tài)寄存器。如程序計(jì)數(shù)器。如程序計(jì)數(shù)器(PC);處;處理機(jī)狀態(tài)

7、字理機(jī)狀態(tài)字(PS) 用戶棧:用戶棧:保存在用戶態(tài)執(zhí)行時(shí)函數(shù)調(diào)保存在用戶態(tài)執(zhí)行時(shí)函數(shù)調(diào)用的參數(shù)、局部變量和其它數(shù)據(jù)結(jié)構(gòu)。用的參數(shù)、局部變量和其它數(shù)據(jù)結(jié)構(gòu)。用戶棧與核心棧用戶棧與核心棧2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系11用戶棧與核心棧用戶棧與核心棧 一個(gè)進(jìn)程的核心棧和用戶棧是分開的;一個(gè)進(jìn)程的核心棧和用戶棧是分開的; 當(dāng)一個(gè)進(jìn)程在用戶態(tài)下執(zhí)行時(shí),它的核當(dāng)一個(gè)進(jìn)程在用戶態(tài)下執(zhí)行時(shí),它的核心棧為空。心棧為空。 進(jìn)程執(zhí)行過程:進(jìn)程執(zhí)行過程:用戶態(tài)用戶態(tài) 系統(tǒng)調(diào)用系統(tǒng)調(diào)用 中斷中斷 核心態(tài)核心態(tài) 當(dāng)進(jìn)程轉(zhuǎn)換至核心態(tài)時(shí),開始使用核心當(dāng)進(jìn)程轉(zhuǎn)換至核心態(tài)時(shí),開始使用核心棧。棧。2022

8、-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系12執(zhí)執(zhí) 行行阻阻 塞塞就就 緒緒時(shí)間片完時(shí)間片完 I/OI/O請(qǐng)求請(qǐng)求 進(jìn)程調(diào)度進(jìn)程調(diào)度 I/OI/O完成完成進(jìn)程的三種基本狀態(tài)以及各狀態(tài)之間的轉(zhuǎn)換關(guān)系進(jìn)程的三種基本狀態(tài)以及各狀態(tài)之間的轉(zhuǎn)換關(guān)系進(jìn)程的基本狀態(tài)與轉(zhuǎn)換進(jìn)程的基本狀態(tài)與轉(zhuǎn)換2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系13 任一進(jìn)程任一時(shí)刻有任一進(jìn)程任一時(shí)刻有( )A. 一種狀態(tài)一種狀態(tài) B兩種狀態(tài)兩種狀態(tài) C. 三種狀態(tài)三種狀態(tài) D四種狀態(tài)四種狀態(tài) A練習(xí)題練習(xí)題2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系14A. 從運(yùn)行狀態(tài)到阻塞狀態(tài);從運(yùn)行狀態(tài)到阻塞狀態(tài);

9、B. 從運(yùn)行狀態(tài)到就緒狀態(tài);從運(yùn)行狀態(tài)到就緒狀態(tài);C. 從就緒狀態(tài)到運(yùn)行狀態(tài);從就緒狀態(tài)到運(yùn)行狀態(tài);D. 從阻塞狀態(tài)到就緒狀態(tài)。從阻塞狀態(tài)到就緒狀態(tài)。A練習(xí)題練習(xí)題進(jìn)程自身決定()。進(jìn)程自身決定()。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系15A. 進(jìn)程獲得進(jìn)程獲得CPU運(yùn)行是通過調(diào)度得到的;運(yùn)行是通過調(diào)度得到的;B. 優(yōu)先級(jí)是進(jìn)程調(diào)度的重要依據(jù),一旦確定就不能優(yōu)先級(jí)是進(jìn)程調(diào)度的重要依據(jù),一旦確定就不能改變;改變;C. 在單在單CPU的系統(tǒng)中,任意時(shí)刻都有一個(gè)進(jìn)程處于的系統(tǒng)中,任意時(shí)刻都有一個(gè)進(jìn)程處于運(yùn)行狀態(tài);運(yùn)行狀態(tài);D. 進(jìn)程申請(qǐng)進(jìn)程申請(qǐng)CPU得不到滿足時(shí),其狀態(tài)變?yōu)樽枞?/p>

10、得不到滿足時(shí),其狀態(tài)變?yōu)樽枞?。A練習(xí)題練習(xí)題以下關(guān)于進(jìn)程的描述中,正確的是:以下關(guān)于進(jìn)程的描述中,正確的是:2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系16答:答:進(jìn)程運(yùn)行完成而終止。進(jìn)程運(yùn)行完成而終止。進(jìn)程因等待而進(jìn)入阻塞狀態(tài)。進(jìn)程因等待而進(jìn)入阻塞狀態(tài)。發(fā)現(xiàn)有比現(xiàn)行進(jìn)程更高優(yōu)先權(quán)進(jìn)程。發(fā)現(xiàn)有比現(xiàn)行進(jìn)程更高優(yōu)先權(quán)進(jìn)程。進(jìn)程用完了規(guī)定的時(shí)間片。進(jìn)程用完了規(guī)定的時(shí)間片。系統(tǒng)出現(xiàn)異常強(qiáng)行進(jìn)入進(jìn)程調(diào)度系統(tǒng)出現(xiàn)異常強(qiáng)行進(jìn)入進(jìn)程調(diào)度練習(xí)題練習(xí)題進(jìn)程調(diào)度是內(nèi)核的進(jìn)程控制原語之一,進(jìn)程調(diào)度是內(nèi)核的進(jìn)程控制原語之一,該原語在什么情況下被啟動(dòng)?該原語在什么情況下被啟動(dòng)?2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算

11、機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系1720102010年考研試題之一年考研試題之一26、下列選項(xiàng)中,降低進(jìn)程優(yōu)先級(jí)的合、下列選項(xiàng)中,降低進(jìn)程優(yōu)先級(jí)的合理時(shí)機(jī)是()。理時(shí)機(jī)是()。A、進(jìn)程的時(shí)間片用完、進(jìn)程的時(shí)間片用完B、進(jìn)程剛完成、進(jìn)程剛完成I/O,進(jìn)入就緒隊(duì)列,進(jìn)入就緒隊(duì)列C、進(jìn)程長(zhǎng)期處于就緒隊(duì)列中、進(jìn)程長(zhǎng)期處于就緒隊(duì)列中D、進(jìn)程從就緒狀態(tài)轉(zhuǎn)為運(yùn)行態(tài)、進(jìn)程從就緒狀態(tài)轉(zhuǎn)為運(yùn)行態(tài)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系18例、某系統(tǒng)的進(jìn)程狀態(tài)變遷如圖例、某系統(tǒng)的進(jìn)程狀態(tài)變遷如圖所示(設(shè)該系統(tǒng)的進(jìn)程調(diào)度方式所示(設(shè)該系統(tǒng)的進(jìn)程調(diào)度方式為可剝奪方式):為可剝奪方式):執(zhí)執(zhí) 行行因因I/OI/O

12、阻塞阻塞低優(yōu)先就緒低優(yōu)先就緒首次選擇首次選擇100ms 高優(yōu)先就緒高優(yōu)先就緒其次選擇其次選擇500ms 21345創(chuàng)創(chuàng) 建建2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系19 說明進(jìn)程發(fā)生變遷說明進(jìn)程發(fā)生變遷1、3、5的原因;的原因; 當(dāng)發(fā)生一個(gè)變遷時(shí)可能引起另一個(gè)變遷的當(dāng)發(fā)生一個(gè)變遷時(shí)可能引起另一個(gè)變遷的發(fā)生,則這兩個(gè)變遷稱為因果變遷。下述發(fā)生,則這兩個(gè)變遷稱為因果變遷。下述因果變遷是否會(huì)發(fā)生,如果有可能的話,因果變遷是否會(huì)發(fā)生,如果有可能的話,會(huì)在什么情況下發(fā)生?會(huì)在什么情況下發(fā)生? (a) 35 (b) 32 (c) 21 (d) 41 (e) 45 根據(jù)狀態(tài)變遷圖說明該系統(tǒng)的

13、調(diào)度策略和根據(jù)狀態(tài)變遷圖說明該系統(tǒng)的調(diào)度策略和調(diào)度效果。調(diào)度效果。請(qǐng)回答請(qǐng)回答2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系20分析分析 本題主要考查對(duì)進(jìn)程狀態(tài)變遷的理解。本題主要考查對(duì)進(jìn)程狀態(tài)變遷的理解。 圖中將傳統(tǒng)的圖中將傳統(tǒng)的3種進(jìn)程狀態(tài)改成了種進(jìn)程狀態(tài)改成了4種,種,其實(shí)就是將就緒按優(yōu)先級(jí)分成了兩級(jí)。其實(shí)就是將就緒按優(yōu)先級(jí)分成了兩級(jí)。 但對(duì)于進(jìn)程而言,其最基本的狀態(tài)還是但對(duì)于進(jìn)程而言,其最基本的狀態(tài)還是3個(gè):運(yùn)行、阻塞、就緒,只是在調(diào)度時(shí),個(gè):運(yùn)行、阻塞、就緒,只是在調(diào)度時(shí),引入了優(yōu)先級(jí)搶占方式。引入了優(yōu)先級(jí)搶占方式。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系2

14、1解答解答v系統(tǒng)中當(dāng)前運(yùn)行著的進(jìn)程因中止、結(jié)束或等待某系統(tǒng)中當(dāng)前運(yùn)行著的進(jìn)程因中止、結(jié)束或等待某個(gè)個(gè)I/O事件而退出運(yùn)行,并且此時(shí)高優(yōu)先就緒隊(duì)列事件而退出運(yùn)行,并且此時(shí)高優(yōu)先就緒隊(duì)列中沒有等待進(jìn)程,發(fā)生中沒有等待進(jìn)程,發(fā)生變遷變遷1;v當(dāng)運(yùn)行著的進(jìn)程發(fā)出當(dāng)運(yùn)行著的進(jìn)程發(fā)出I/O請(qǐng)求,需要等待請(qǐng)求,需要等待I/O事件事件完成才能繼續(xù)進(jìn)行,發(fā)生完成才能繼續(xù)進(jìn)行,發(fā)生變遷變遷3;v當(dāng)有高優(yōu)先級(jí)進(jìn)程進(jìn)入就緒隊(duì)列,并且運(yùn)行著的當(dāng)有高優(yōu)先級(jí)進(jìn)程進(jìn)入就緒隊(duì)列,并且運(yùn)行著的進(jìn)程是低優(yōu)先級(jí)進(jìn)程時(shí),高優(yōu)先級(jí)進(jìn)程會(huì)搶占進(jìn)程是低優(yōu)先級(jí)進(jìn)程時(shí),高優(yōu)先級(jí)進(jìn)程會(huì)搶占CPU,發(fā)生,發(fā)生變遷變遷5. 變遷變遷1、3、5的原因:

15、的原因:2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系22 下述因果變遷的發(fā)生及情況:下述因果變遷的發(fā)生及情況:(a) 35 是因果變遷;是因果變遷;(b) 32 不是;不是;(c) 21 是;是;(d) 41 不是;不是;(e) 45 是。是。此系統(tǒng)采用根據(jù)進(jìn)程優(yōu)先級(jí)分別設(shè)置高優(yōu)先就緒隊(duì)列和此系統(tǒng)采用根據(jù)進(jìn)程優(yōu)先級(jí)分別設(shè)置高優(yōu)先就緒隊(duì)列和低優(yōu)先就緒隊(duì)列:低優(yōu)先就緒隊(duì)列:高優(yōu)先進(jìn)程運(yùn)行高優(yōu)先進(jìn)程運(yùn)行100ms 后就降為低優(yōu)先就緒隊(duì)列,以使后就降為低優(yōu)先就緒隊(duì)列,以使短進(jìn)程優(yōu)先完成;短進(jìn)程優(yōu)先完成;對(duì)低優(yōu)先就緒隊(duì)列中的進(jìn)程采用時(shí)間片輪轉(zhuǎn)法(時(shí)間片對(duì)低優(yōu)先就緒隊(duì)列中的進(jìn)程采用時(shí)間片輪轉(zhuǎn)法

16、(時(shí)間片程度為程度為500ms),確保每個(gè)進(jìn)程都有運(yùn)行機(jī)會(huì);),確保每個(gè)進(jìn)程都有運(yùn)行機(jī)會(huì);同時(shí),對(duì)于進(jìn)行了同時(shí),對(duì)于進(jìn)行了I/O操作的進(jìn)程賦予一個(gè)高優(yōu)先級(jí),保操作的進(jìn)程賦予一個(gè)高優(yōu)先級(jí),保證對(duì)外界事件可以盡快響應(yīng)。證對(duì)外界事件可以盡快響應(yīng)。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系23不同調(diào)度算不同調(diào)度算法的進(jìn)程狀法的進(jìn)程狀態(tài)轉(zhuǎn)換圖態(tài)轉(zhuǎn)換圖2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系24例題:某系統(tǒng)采用可搶占處理機(jī)的靜例題:某系統(tǒng)采用可搶占處理機(jī)的靜態(tài)優(yōu)先數(shù)調(diào)度算法,請(qǐng)問何時(shí)會(huì)發(fā)生態(tài)優(yōu)先數(shù)調(diào)度算法,請(qǐng)問何時(shí)會(huì)發(fā)生搶占處理機(jī)的現(xiàn)象搶占處理機(jī)的現(xiàn)象? ? 答:當(dāng)一個(gè)新創(chuàng)建

17、的進(jìn)程或一個(gè)被答:當(dāng)一個(gè)新創(chuàng)建的進(jìn)程或一個(gè)被喚醒進(jìn)程的優(yōu)先數(shù)比正在運(yùn)行進(jìn)程喚醒進(jìn)程的優(yōu)先數(shù)比正在運(yùn)行進(jìn)程的優(yōu)先數(shù)高時(shí),可能發(fā)生搶占處理的優(yōu)先數(shù)高時(shí),可能發(fā)生搶占處理機(jī)現(xiàn)象。機(jī)現(xiàn)象。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系25進(jìn)程的狀態(tài)與轉(zhuǎn)換進(jìn)程的狀態(tài)與轉(zhuǎn)換NewNewRunningRunningExitExitReadyReadyBlockedBlocked被調(diào)度被調(diào)度時(shí)間片完時(shí)間片完事件發(fā)生事件發(fā)生等待事件等待事件結(jié)束結(jié)束進(jìn)入就緒隊(duì)列進(jìn)入就緒隊(duì)列2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系26練習(xí)題練習(xí)題2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系27

18、練習(xí)題 判斷:進(jìn)程是基于多道程序技術(shù)而提出判斷:進(jìn)程是基于多道程序技術(shù)而提出來的。其最基本的特性是動(dòng)態(tài)性和并發(fā)來的。其最基本的特性是動(dòng)態(tài)性和并發(fā)性;進(jìn)程的執(zhí)行也即在各種基本狀態(tài)之性;進(jìn)程的執(zhí)行也即在各種基本狀態(tài)之間多次轉(zhuǎn)換的過程。間多次轉(zhuǎn)換的過程。錯(cuò)誤。進(jìn)程在新、死狀態(tài)上只經(jīng)過一次!錯(cuò)誤。進(jìn)程在新、死狀態(tài)上只經(jīng)過一次!2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系281.1.活動(dòng)就緒活動(dòng)就緒靜止就緒靜止就緒2.2.活動(dòng)阻塞活動(dòng)阻塞靜止阻塞靜止阻塞3.3.靜止就緒靜止就緒活動(dòng)就緒活動(dòng)就緒4.4.靜止阻塞靜止阻塞活動(dòng)阻塞活動(dòng)阻塞引入掛起狀態(tài)引入掛起狀態(tài)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系

19、山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系29具有掛起操作的進(jìn)程狀態(tài)轉(zhuǎn)換圖具有掛起操作的進(jìn)程狀態(tài)轉(zhuǎn)換圖創(chuàng)建創(chuàng)建阻塞阻塞喚醒喚醒掛掛起起激活激活活躍活躍阻塞阻塞運(yùn)行運(yùn)行靜止靜止阻塞阻塞靜止靜止就緒就緒活躍活躍就緒就緒時(shí)間片用完時(shí)間片用完調(diào)調(diào)度度掛掛起起喚醒喚醒激活激活活躍活躍靜止靜止掛掛起起2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系30試分析中斷與進(jìn)程狀態(tài)轉(zhuǎn)換試分析中斷與進(jìn)程狀態(tài)轉(zhuǎn)換之間的關(guān)系之間的關(guān)系答:答: 進(jìn)程狀態(tài)轉(zhuǎn)換是通過原語實(shí)現(xiàn)的、由內(nèi)核控制的;進(jìn)程狀態(tài)轉(zhuǎn)換是通過原語實(shí)現(xiàn)的、由內(nèi)核控制的; 如果一個(gè)進(jìn)程的狀態(tài)發(fā)生了改變,則在新舊狀態(tài)之如果一個(gè)進(jìn)程的狀態(tài)發(fā)生了改變,則在新舊狀態(tài)之間一定發(fā)生了處理

20、機(jī)狀態(tài)由目態(tài)到管態(tài)的轉(zhuǎn)換;間一定發(fā)生了處理機(jī)狀態(tài)由目態(tài)到管態(tài)的轉(zhuǎn)換; 而中斷是處理機(jī)狀態(tài)由目態(tài)轉(zhuǎn)換到管態(tài)的必要條件;而中斷是處理機(jī)狀態(tài)由目態(tài)轉(zhuǎn)換到管態(tài)的必要條件; 所以所以中斷也是進(jìn)程狀態(tài)轉(zhuǎn)換的必要條件中斷也是進(jìn)程狀態(tài)轉(zhuǎn)換的必要條件。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系31進(jìn)程控制進(jìn)程控制原語原語(primitive):由若干條指令構(gòu)成由若干條指令構(gòu)成的的“原子操作原子操作(atomic operation)”過程,作為一個(gè)整體而不可分割過程,作為一個(gè)整體而不可分割要么全都完成,要么全都不做。要么全都完成,要么全都不做。內(nèi)核控制下,由原語實(shí)現(xiàn)內(nèi)核控制下,由原語實(shí)現(xiàn)!原語是一

21、種特殊的系統(tǒng)調(diào)用。原語是一種特殊的系統(tǒng)調(diào)用。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系32B練習(xí)題練習(xí)題操作系統(tǒng)中有一組常稱為特殊系統(tǒng)調(diào)用的操作系統(tǒng)中有一組常稱為特殊系統(tǒng)調(diào)用的程序,它不能被系統(tǒng)中斷,在操作系統(tǒng)中程序,它不能被系統(tǒng)中斷,在操作系統(tǒng)中稱為(稱為( )。)。 A.初始化程序初始化程序 B. 原語原語 C.子程序子程序 D. 控制模塊控制模塊2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系33 創(chuàng)建過程:創(chuàng)建過程:(1) (1) 申請(qǐng)空白申請(qǐng)空白PCBPCB(2) (2) 為新進(jìn)程分配資源為新進(jìn)程分配資源(3) (3) 初始化初始化PCBPCB(4) (4) 將

22、新進(jìn)程插入就緒隊(duì)列將新進(jìn)程插入就緒隊(duì)列1.1.操作系統(tǒng)發(fā)現(xiàn)要求創(chuàng)建新進(jìn)程的事件操作系統(tǒng)發(fā)現(xiàn)要求創(chuàng)建新進(jìn)程的事件后,調(diào)用進(jìn)程創(chuàng)建原語創(chuàng)建新進(jìn)程。后,調(diào)用進(jìn)程創(chuàng)建原語創(chuàng)建新進(jìn)程。進(jìn)程的創(chuàng)建進(jìn)程的創(chuàng)建2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系341 用戶登錄:在分時(shí)系統(tǒng)中,用戶在終端鍵入登錄命令后,若 是合法用戶,系統(tǒng)建立一個(gè)進(jìn)程,并插入就緒隊(duì)列。2 作業(yè)調(diào)度:批處理系統(tǒng)中,作業(yè)調(diào)度程序調(diào)度到某個(gè)作業(yè)以 后,就把這個(gè)作業(yè)裝入內(nèi)存,并分配必要的資源, 創(chuàng)建進(jìn)程,插入就緒隊(duì)列。3 提供服務(wù):運(yùn)行中的用戶向系統(tǒng)提出請(qǐng)求后,系統(tǒng)專門建立一 個(gè)進(jìn)程為用戶服務(wù)。(打印請(qǐng)求)4 應(yīng)用請(qǐng)求:應(yīng)用進(jìn)程的

23、需要,由它自己創(chuàng)建一個(gè)新進(jìn)程,使新 進(jìn)程以并發(fā)運(yùn)行方式完成特定任務(wù)。(輸入數(shù)據(jù)并 將處理結(jié)果輸出到表格上)由操作系統(tǒng)核心(系統(tǒng)程序模塊)創(chuàng)建由操作系統(tǒng)核心(系統(tǒng)程序模塊)創(chuàng)建由父進(jìn)程創(chuàng)建由父進(jìn)程創(chuàng)建引起創(chuàng)建進(jìn)程的事件引起創(chuàng)建進(jìn)程的事件2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系3520102010年考研試題之一年考研試題之一24、下列選項(xiàng)中,導(dǎo)制創(chuàng)進(jìn)新進(jìn)程的操作是()下列選項(xiàng)中,導(dǎo)制創(chuàng)進(jìn)新進(jìn)程的操作是()I 用戶登陸成功用戶登陸成功 II 設(shè)備分配設(shè)備分配 III 啟動(dòng)程序執(zhí)行啟動(dòng)程序執(zhí)行A、僅、僅I和和IIB、僅、僅II和和IIIC、僅、僅I和和IIID、I、II、III2022

24、-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系36進(jìn)程的終止進(jìn)程的終止 引起進(jìn)程終止的事件引起進(jìn)程終止的事件用戶退出用戶退出運(yùn)行完畢運(yùn)行完畢因出錯(cuò)而停止因出錯(cuò)而停止用戶請(qǐng)求用戶請(qǐng)求2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系37 父進(jìn)程終止,子進(jìn)程可以不必父進(jìn)程終止,子進(jìn)程可以不必隨之撤銷,對(duì)嗎?隨之撤銷,對(duì)嗎?錯(cuò)錯(cuò)!練習(xí)題練習(xí)題6種種 進(jìn)程控制原語主要有哪幾種?進(jìn)程控制原語主要有哪幾種?2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系38練習(xí)題練習(xí)題 填空:為了實(shí)現(xiàn)進(jìn)程由等待狀態(tài)轉(zhuǎn)換成填空:為了實(shí)現(xiàn)進(jìn)程由等待狀態(tài)轉(zhuǎn)換成就緒狀態(tài)的狀態(tài)變化,操作系統(tǒng)應(yīng)提供就緒狀態(tài)的狀態(tài)變化

25、,操作系統(tǒng)應(yīng)提供_原語。原語。喚醒原語喚醒原語2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系39進(jìn)程的特征進(jìn)程的特征 動(dòng)態(tài)性動(dòng)態(tài)性 并發(fā)性并發(fā)性 結(jié)構(gòu)性結(jié)構(gòu)性 獨(dú)立性獨(dú)立性 異步性異步性程序段程序段數(shù)據(jù)段數(shù)據(jù)段進(jìn)程控制塊進(jìn)程控制塊PCBPCB獨(dú)立運(yùn)行獨(dú)立運(yùn)行獨(dú)立分配資源獨(dú)立分配資源獨(dú)立接受調(diào)度的基本單位獨(dú)立接受調(diào)度的基本單位最基本的特征最基本的特征2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系40進(jìn)程和程序進(jìn)程和程序 進(jìn)程是動(dòng)態(tài)的,程序是進(jìn)程是動(dòng)態(tài)的,程序是靜態(tài)的。靜態(tài)的。 進(jìn)程是暫時(shí)的,程序可進(jìn)程是暫時(shí)的,程序可長(zhǎng)久保存。長(zhǎng)久保存。 進(jìn)程和程序的組成不同。進(jìn)程和程序的組成

26、不同。 進(jìn)程與程序的對(duì)應(yīng)關(guān)系。進(jìn)程與程序的對(duì)應(yīng)關(guān)系。 一個(gè)程序可以對(duì)應(yīng)多個(gè)進(jìn)程,一個(gè)程序可以對(duì)應(yīng)多個(gè)進(jìn)程,一個(gè)進(jìn)程也可以對(duì)應(yīng)多個(gè)程序。一個(gè)進(jìn)程也可以對(duì)應(yīng)多個(gè)程序。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系41A練習(xí)題練習(xí)題進(jìn)程與程序之間有密切聯(lián)系,但又是不同進(jìn)程與程序之間有密切聯(lián)系,但又是不同的概念。二者的一個(gè)本質(zhì)區(qū)別是(的概念。二者的一個(gè)本質(zhì)區(qū)別是( )。)。A程序是靜態(tài)概念,進(jìn)程是動(dòng)態(tài)概念程序是靜態(tài)概念,進(jìn)程是動(dòng)態(tài)概念 B程序是動(dòng)態(tài)概念,進(jìn)程是靜態(tài)概念程序是動(dòng)態(tài)概念,進(jìn)程是靜態(tài)概念C程序保存在文件中,進(jìn)程存放在內(nèi)存中程序保存在文件中,進(jìn)程存放在內(nèi)存中D程序順序執(zhí)行,進(jìn)程并發(fā)執(zhí)

27、行程序順序執(zhí)行,進(jìn)程并發(fā)執(zhí)行2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系42進(jìn)程切換與進(jìn)程切換與CPUCPU模式切換模式切換 進(jìn)程切換進(jìn)程切換是讓處于運(yùn)行態(tài)的進(jìn)程中斷運(yùn)行,是讓處于運(yùn)行態(tài)的進(jìn)程中斷運(yùn)行,讓出處理器,這時(shí)要做一次進(jìn)程上下文切讓出處理器,這時(shí)要做一次進(jìn)程上下文切換、即保存老進(jìn)程狀態(tài)而裝入被保護(hù)了的換、即保存老進(jìn)程狀態(tài)而裝入被保護(hù)了的新進(jìn)程的狀態(tài),以便新進(jìn)程運(yùn)行。新進(jìn)程的狀態(tài),以便新進(jìn)程運(yùn)行。模式切換是模式切換是當(dāng)系統(tǒng)調(diào)用(中斷)發(fā)生時(shí),當(dāng)系統(tǒng)調(diào)用(中斷)發(fā)生時(shí),暫時(shí)中斷正在執(zhí)行的用戶進(jìn)程,把進(jìn)程從暫時(shí)中斷正在執(zhí)行的用戶進(jìn)程,把進(jìn)程從用戶狀態(tài)切換到內(nèi)核狀態(tài),去執(zhí)行操作系用

28、戶狀態(tài)切換到內(nèi)核狀態(tài),去執(zhí)行操作系統(tǒng)例行程序以獲得服務(wù)。統(tǒng)例行程序以獲得服務(wù)。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系43模式切換:模式切換:進(jìn)程在用戶態(tài)運(yùn)行進(jìn)程在用戶態(tài)運(yùn)行用戶程序用戶程序,在自陷、系統(tǒng)調(diào)用和中斷時(shí)轉(zhuǎn)換到核心在自陷、系統(tǒng)調(diào)用和中斷時(shí)轉(zhuǎn)換到核心態(tài)運(yùn)行操作系統(tǒng)態(tài)運(yùn)行操作系統(tǒng)內(nèi)核程序內(nèi)核程序.進(jìn)程切換:進(jìn)程切換:指正在運(yùn)行的進(jìn)程因?yàn)樽陨碇刚谶\(yùn)行的進(jìn)程因?yàn)樽陨淼却录蛴懈惹行枰\(yùn)行的進(jìn)程就等待事件或有更迫切需要運(yùn)行的進(jìn)程就緒而放棄處理機(jī),處理機(jī)轉(zhuǎn)去運(yùn)行其他緒而放棄處理機(jī),處理機(jī)轉(zhuǎn)去運(yùn)行其他進(jìn)程進(jìn)程 .模式切換與進(jìn)程切換模式切換與進(jìn)程切換2022-5-3山東農(nóng)業(yè)大

29、學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系44模式切換與進(jìn)程切換的區(qū)別模式切換與進(jìn)程切換的區(qū)別 模式切換模式切換 不引起進(jìn)程狀態(tài)變化不引起進(jìn)程狀態(tài)變化 也不一定引起進(jìn)程的切換也不一定引起進(jìn)程的切換 從核心態(tài)返回時(shí)可以通過逆向設(shè)置返回用戶態(tài)繼續(xù)從核心態(tài)返回時(shí)可以通過逆向設(shè)置返回用戶態(tài)繼續(xù)執(zhí)行被中斷的進(jìn)程執(zhí)行被中斷的進(jìn)程 進(jìn)程切換進(jìn)程切換 進(jìn)程調(diào)度的本質(zhì)進(jìn)程調(diào)度的本質(zhì) 在核心態(tài)下發(fā)生在核心態(tài)下發(fā)生 引起進(jìn)程狀態(tài)的變遷引起進(jìn)程狀態(tài)的變遷 進(jìn)程上下文的切換進(jìn)程上下文的切換2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系45例題:例題:若在若在T1T1時(shí)刻用戶進(jìn)程時(shí)刻用戶進(jìn)程P1P1運(yùn)行,運(yùn)行,T2T2時(shí)刻

30、用戶進(jìn)程時(shí)刻用戶進(jìn)程P2P2運(yùn)行,且運(yùn)行,且P1P2 ,P1P2 ,則在則在時(shí)刻時(shí)刻T1T1和時(shí)刻和時(shí)刻T2T2期間之內(nèi)一定發(fā)生過中期間之內(nèi)一定發(fā)生過中斷。這種說法對(duì)嗎斷。這種說法對(duì)嗎? ? 為什么為什么? ? 答:正確。答:正確。如果在時(shí)刻如果在時(shí)刻 T1進(jìn)程進(jìn)程P1在運(yùn)行,在時(shí)刻在運(yùn)行,在時(shí)刻T2進(jìn)程進(jìn)程P2在運(yùn)行,在運(yùn)行,且且P1P2,則說明在,則說明在T1和和T2之間發(fā)生了之間發(fā)生了進(jìn)程切換進(jìn)程切換。即在即在T1和和T2之間執(zhí)行了處理機(jī)之間執(zhí)行了處理機(jī)調(diào)度程序調(diào)度程序,而處理機(jī)調(diào)度,而處理機(jī)調(diào)度程序是操作系統(tǒng)低層中的一個(gè)模塊,運(yùn)行于管態(tài),說明在程序是操作系統(tǒng)低層中的一個(gè)模塊,運(yùn)行于管態(tài)

31、,說明在T1與與T2時(shí)刻之間處理機(jī)狀態(tài)曾時(shí)刻之間處理機(jī)狀態(tài)曾由目態(tài)轉(zhuǎn)換到管態(tài)由目態(tài)轉(zhuǎn)換到管態(tài)。由于中斷是系統(tǒng)由目態(tài)轉(zhuǎn)換為管態(tài)的必要條件,所以在時(shí)由于中斷是系統(tǒng)由目態(tài)轉(zhuǎn)換為管態(tài)的必要條件,所以在時(shí)刻刻T1與時(shí)刻與時(shí)刻T2之間一定發(fā)生過中斷,也就是說,中斷是進(jìn)之間一定發(fā)生過中斷,也就是說,中斷是進(jìn)程切換的必要條件,程切換的必要條件,然而中斷不是進(jìn)程切換的充分條件。然而中斷不是進(jìn)程切換的充分條件。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系46上題續(xù)上題續(xù) 例如例如: 一個(gè)進(jìn)程執(zhí)行一個(gè)系統(tǒng)調(diào)用命令將一個(gè)進(jìn)程執(zhí)行一個(gè)系統(tǒng)調(diào)用命令將一個(gè)消息發(fā)給另外一個(gè)進(jìn)程,該命令的一個(gè)消息發(fā)給另外一個(gè)進(jìn)程,

32、該命令的執(zhí)行將通過中斷進(jìn)入操作系統(tǒng),操作系執(zhí)行將通過中斷進(jìn)入操作系統(tǒng),操作系統(tǒng)處理完消息的發(fā)送工作后可能返回原統(tǒng)處理完消息的發(fā)送工作后可能返回原調(diào)用進(jìn)程,此時(shí)中斷未導(dǎo)致進(jìn)程切換;調(diào)用進(jìn)程,此時(shí)中斷未導(dǎo)致進(jìn)程切換;也可能選擇一個(gè)新的進(jìn)程,此時(shí)中斷導(dǎo)也可能選擇一個(gè)新的進(jìn)程,此時(shí)中斷導(dǎo)致了進(jìn)程切換。致了進(jìn)程切換。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系47UNIXUNIX中進(jìn)程上下文切換和模式切換中進(jìn)程上下文切換和模式切換系統(tǒng)調(diào)系統(tǒng)調(diào)用或中用或中斷斷( (隱隱含模式含模式切換切換) )模式切換模式切換用戶態(tài)用戶態(tài)運(yùn)行運(yùn)行等待等待狀態(tài)狀態(tài)就緒就緒狀態(tài)狀態(tài)發(fā)生事件發(fā)生事件喚醒喚醒調(diào)度進(jìn)程

33、調(diào)度進(jìn)程核心態(tài)核心態(tài)運(yùn)行運(yùn)行中斷、中斷、中斷返回中斷返回時(shí)間片到時(shí)間片到2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系48作業(yè)(作業(yè)(Job)Job) 作業(yè)概念作業(yè)概念 用戶要求計(jì)算機(jī)系統(tǒng)為其完成的計(jì)算任務(wù)集合。用戶要求計(jì)算機(jī)系統(tǒng)為其完成的計(jì)算任務(wù)集合。 作業(yè)步(作業(yè)步(job step) 作業(yè)處理過程中一個(gè)相對(duì)獨(dú)立的步驟作業(yè)處理過程中一個(gè)相對(duì)獨(dú)立的步驟 一般一個(gè)作業(yè)步可由一個(gè)進(jìn)程完成一般一個(gè)作業(yè)步可由一個(gè)進(jìn)程完成 某些作業(yè)步之間可以并行某些作業(yè)步之間可以并行 作業(yè)分類作業(yè)分類 批處理作業(yè)批處理作業(yè) 交互式作業(yè)交互式作業(yè)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系49JC

34、LJCL與與JCBJCB 作業(yè)控制語言作業(yè)控制語言(JCL):(JCL):是對(duì)用戶作業(yè)的進(jìn)行組織和管理的各種控制命令的集合.作業(yè)控制說明書作業(yè)控制說明書是用戶用于描述批處理作業(yè)處理過程控制意圖的一種特殊程序, 作業(yè)控制說明書主要包括內(nèi)容: 作業(yè)的基本描述、作業(yè)控制描述和資源要求描述作業(yè)控制塊作業(yè)控制塊是批處理作業(yè)存在的標(biāo)志,其中保存了系統(tǒng)對(duì)于作業(yè)進(jìn)行管理所需要的全部信息,它們被保存于磁盤區(qū)域中2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系50作業(yè)與進(jìn)程的關(guān)系作業(yè)與進(jìn)程的關(guān)系 作業(yè)作業(yè): :是用戶對(duì)計(jì)算機(jī)的一次獨(dú)立的使用是用戶對(duì)計(jì)算機(jī)的一次獨(dú)立的使用過程過程 進(jìn)程進(jìn)程: :是分配計(jì)算機(jī)

35、資源的單位是分配計(jì)算機(jī)資源的單位, ,是用戶任是用戶任務(wù)運(yùn)行的實(shí)體務(wù)運(yùn)行的實(shí)體, ,作業(yè)可包含多個(gè)進(jìn)程作業(yè)可包含多個(gè)進(jìn)程( (至少至少一個(gè)一個(gè)) )2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系51批處理系統(tǒng)作業(yè)與進(jìn)程關(guān)系批處理系統(tǒng)作業(yè)與進(jìn)程關(guān)系 作業(yè)調(diào)度程序作業(yè)調(diào)度程序每選擇一道每選擇一道作業(yè)作業(yè)運(yùn)行時(shí)運(yùn)行時(shí),首首先為該作業(yè)創(chuàng)建一個(gè)先為該作業(yè)創(chuàng)建一個(gè)根進(jìn)程根進(jìn)程,該進(jìn)程執(zhí)行該進(jìn)程執(zhí)行作業(yè)控制語言解釋器程序,并可根據(jù)需作業(yè)控制語言解釋器程序,并可根據(jù)需要?jiǎng)?chuàng)建多個(gè)子進(jìn)程要?jiǎng)?chuàng)建多個(gè)子進(jìn)程.2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系52作業(yè)和進(jìn)程狀態(tài)轉(zhuǎn)換圖作業(yè)和進(jìn)程狀態(tài)轉(zhuǎn)換圖

36、提交提交后備后備運(yùn)行運(yùn)行完成完成作業(yè)輸入作業(yè)輸入作業(yè)調(diào)度作業(yè)調(diào)度創(chuàng)建進(jìn)程創(chuàng)建進(jìn)程作業(yè)終止作業(yè)終止就緒就緒執(zhí)行執(zhí)行等待等待進(jìn)程調(diào)度進(jìn)程調(diào)度2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系53 把用戶的一次上機(jī)過程看成是一個(gè)把用戶的一次上機(jī)過程看成是一個(gè)交互作交互作業(yè)業(yè)( (無論從內(nèi)部表示及外部特征無論從內(nèi)部表示及外部特征, ,它都有別它都有別于批作業(yè)于批作業(yè)) ); 系統(tǒng)為每個(gè)終端設(shè)備生成一個(gè)系統(tǒng)為每個(gè)終端設(shè)備生成一個(gè)進(jìn)程進(jìn)程,該進(jìn),該進(jìn)程運(yùn)行程運(yùn)行終端命令解釋器終端命令解釋器。該進(jìn)程根據(jù)需要。該進(jìn)程根據(jù)需要還可以創(chuàng)建多個(gè)子進(jìn)程還可以創(chuàng)建多個(gè)子進(jìn)程分時(shí)系統(tǒng)作業(yè)與進(jìn)程之關(guān)系分時(shí)系統(tǒng)作業(yè)與進(jìn)

37、程之關(guān)系2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系54作業(yè)、進(jìn)程、線程作業(yè)、進(jìn)程、線程 作業(yè)與進(jìn)程作業(yè)與進(jìn)程 作業(yè)進(jìn)入內(nèi)存后變?yōu)檫M(jìn)程作業(yè)進(jìn)入內(nèi)存后變?yōu)檫M(jìn)程 一個(gè)作業(yè)通常與多個(gè)進(jìn)程相對(duì)應(yīng)一個(gè)作業(yè)通常與多個(gè)進(jìn)程相對(duì)應(yīng) 進(jìn)程與線程進(jìn)程與線程 不支持多線程的系統(tǒng),可視為單線程進(jìn)程不支持多線程的系統(tǒng),可視為單線程進(jìn)程 一個(gè)進(jìn)程一般包含多個(gè)線程,至少包含一個(gè)一個(gè)進(jìn)程一般包含多個(gè)線程,至少包含一個(gè)線程線程2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系55A練習(xí)題練習(xí)題進(jìn)程與程序之間有密切聯(lián)系,但又是不同進(jìn)程與程序之間有密切聯(lián)系,但又是不同的概念。二者的一個(gè)本質(zhì)區(qū)別是(的概念。二者的一

38、個(gè)本質(zhì)區(qū)別是( )。)。A程序是靜態(tài)概念,進(jìn)程是動(dòng)態(tài)概念程序是靜態(tài)概念,進(jìn)程是動(dòng)態(tài)概念 B程序是動(dòng)態(tài)概念,進(jìn)程是靜態(tài)概念程序是動(dòng)態(tài)概念,進(jìn)程是靜態(tài)概念C程序保存在文件中,進(jìn)程存放在內(nèi)存中程序保存在文件中,進(jìn)程存放在內(nèi)存中D程序順序執(zhí)行,進(jìn)程并發(fā)執(zhí)行程序順序執(zhí)行,進(jìn)程并發(fā)執(zhí)行2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系56C練習(xí)題練習(xí)題用戶在一次計(jì)算過程中,或者一次事物處用戶在一次計(jì)算過程中,或者一次事物處理中,要求計(jì)算機(jī)完成所做的工作的集合,理中,要求計(jì)算機(jī)完成所做的工作的集合,這是指(這是指( )。)。A.進(jìn)程進(jìn)程 B.程序程序 C.作業(yè)作業(yè) D.系統(tǒng)調(diào)用系統(tǒng)調(diào)用2022-5-3

39、山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系57錯(cuò)!錯(cuò)!作業(yè)一共有四種狀態(tài),其中的運(yùn)行作業(yè)一共有四種狀態(tài),其中的運(yùn)行狀態(tài)是指被調(diào)度進(jìn)入內(nèi)存后的狀態(tài),此狀態(tài)是指被調(diào)度進(jìn)入內(nèi)存后的狀態(tài),此時(shí)被稱作進(jìn)程,因此,不管進(jìn)程處于什時(shí)被稱作進(jìn)程,因此,不管進(jìn)程處于什么狀態(tài),都是作業(yè)的運(yùn)行狀態(tài)。么狀態(tài),都是作業(yè)的運(yùn)行狀態(tài)。判斷題判斷題當(dāng)作業(yè)對(duì)應(yīng)的進(jìn)程阻塞時(shí),該作業(yè)處于等當(dāng)作業(yè)對(duì)應(yīng)的進(jìn)程阻塞時(shí),該作業(yè)處于等待狀態(tài)。待狀態(tài)。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系58練習(xí)題練習(xí)題進(jìn)程的基本狀態(tài)有執(zhí)行、進(jìn)程的基本狀態(tài)有執(zhí)行、 和和 。批處理作業(yè)的基本狀態(tài)有運(yùn)行、批處理作業(yè)的基本狀態(tài)有運(yùn)行、 和和。其中,

40、。其中,運(yùn)行運(yùn)行 狀態(tài)包含了進(jìn)程的等待狀狀態(tài)包含了進(jìn)程的等待狀態(tài)。態(tài)。作業(yè)調(diào)度程序?qū)崿F(xiàn)了作業(yè)從作業(yè)調(diào)度程序?qū)崿F(xiàn)了作業(yè)從 狀態(tài)到執(zhí)行狀態(tài)到執(zhí)行狀態(tài)的轉(zhuǎn)換,而進(jìn)程調(diào)度狀態(tài)的轉(zhuǎn)換,而進(jìn)程調(diào)度 程序?qū)崿F(xiàn)了進(jìn)程程序?qū)崿F(xiàn)了進(jìn)程從從狀態(tài)到執(zhí)行狀態(tài)的轉(zhuǎn)換。狀態(tài)到執(zhí)行狀態(tài)的轉(zhuǎn)換。處于處于狀態(tài)的進(jìn)程是不會(huì)獲得狀態(tài)的進(jìn)程是不會(huì)獲得CPU的。的。 2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系59進(jìn)程通信進(jìn)程通信進(jìn)程通信進(jìn)程通信低級(jí)通信低級(jí)通信高級(jí)通信高級(jí)通信進(jìn)程間競(jìng)進(jìn)程間競(jìng)爭(zhēng)資源爭(zhēng)資源進(jìn)程間相進(jìn)程間相互合作互合作共享存儲(chǔ)共享存儲(chǔ)器系統(tǒng)器系統(tǒng)消息傳消息傳遞系統(tǒng)遞系統(tǒng)管道管道通信通信進(jìn)程互斥進(jìn)程互斥進(jìn)程同步進(jìn)

41、程同步信號(hào)量機(jī)制信號(hào)量機(jī)制信號(hào)量信號(hào)量集機(jī)制集機(jī)制記錄型信記錄型信號(hào)量機(jī)制號(hào)量機(jī)制整型信號(hào)整型信號(hào)量機(jī)制量機(jī)制管程機(jī)制管程機(jī)制基于基于共享共享數(shù)據(jù)數(shù)據(jù)結(jié)構(gòu)結(jié)構(gòu)方式方式基于基于共享共享存儲(chǔ)存儲(chǔ)區(qū)方區(qū)方式式直接直接通信通信方式方式間接通間接通信方式信方式-信箱信箱通信通信2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系60進(jìn)程的通信進(jìn)程的通信低級(jí)通信進(jìn)程同步低級(jí)通信進(jìn)程同步簡(jiǎn)單的信號(hào)交換(如:鎖、信號(hào)簡(jiǎn)單的信號(hào)交換(如:鎖、信號(hào)量等,主要交換的是控制信號(hào))量等,主要交換的是控制信號(hào))高級(jí)通信進(jìn)程通信高級(jí)通信進(jìn)程通信高效、大量數(shù)據(jù)傳遞高效、大量數(shù)據(jù)傳遞2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東

42、農(nóng)業(yè)大學(xué)計(jì)算機(jī)系61進(jìn)程通信的類型進(jìn)程通信的類型共享存儲(chǔ)器系統(tǒng)共享存儲(chǔ)器系統(tǒng)消息傳遞系統(tǒng)消息傳遞系統(tǒng)管道通信系統(tǒng)管道通信系統(tǒng)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系62 在共享存儲(chǔ)器系統(tǒng)中,相互通信的進(jìn)程在共享存儲(chǔ)器系統(tǒng)中,相互通信的進(jìn)程共享某些共享某些存儲(chǔ)區(qū)存儲(chǔ)區(qū),進(jìn)程之間能夠通過這,進(jìn)程之間能夠通過這些空間進(jìn)行通信。些空間進(jìn)行通信。共享存儲(chǔ)器系統(tǒng)共享存儲(chǔ)器系統(tǒng)向系統(tǒng)申請(qǐng)共享存儲(chǔ)區(qū)中的一個(gè)分區(qū)向系統(tǒng)申請(qǐng)共享存儲(chǔ)區(qū)中的一個(gè)分區(qū)指定該分區(qū)的關(guān)鍵字指定該分區(qū)的關(guān)鍵字如果已經(jīng)給其他進(jìn)程分配了這樣的存儲(chǔ)區(qū),如果已經(jīng)給其他進(jìn)程分配了這樣的存儲(chǔ)區(qū), 將使用分區(qū)的描述符返回給申請(qǐng)者將使用分區(qū)

43、的描述符返回給申請(qǐng)者申請(qǐng)者將申請(qǐng)到的共享分區(qū)掛到本進(jìn)程上申請(qǐng)者將申請(qǐng)到的共享分區(qū)掛到本進(jìn)程上2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系63 消息傳遞系統(tǒng):消息傳遞系統(tǒng):進(jìn)程間的數(shù)據(jù)交換,以格進(jìn)程間的數(shù)據(jù)交換,以格式化的消息為單位。式化的消息為單位。消息傳遞系統(tǒng)消息傳遞系統(tǒng)計(jì)算機(jī)網(wǎng)絡(luò):計(jì)算機(jī)網(wǎng)絡(luò):消息稱為報(bào)文。程序員直消息稱為報(bào)文。程序員直接利用系統(tǒng)提供的一組通信命令接利用系統(tǒng)提供的一組通信命令( (原語原語) )進(jìn)行通信。進(jìn)行通信。直接通信方式(消息緩沖機(jī)制)直接通信方式(消息緩沖機(jī)制)間接通信方式(信箱通信方式)間接通信方式(信箱通信方式)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山

44、東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系64所謂所謂“管道管道”,是指用于連接,是指用于連接一個(gè)讀進(jìn)程和一個(gè)寫進(jìn)程以實(shí)一個(gè)讀進(jìn)程和一個(gè)寫進(jìn)程以實(shí)現(xiàn)他們之間通信的一個(gè)現(xiàn)他們之間通信的一個(gè)共享文共享文件,又名件,又名pipe文件。文件。管道通信管道通信2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系65試比較進(jìn)程間的低級(jí)通信工試比較進(jìn)程間的低級(jí)通信工具與高級(jí)通信工具具與高級(jí)通信工具 用戶用低級(jí)通信工具實(shí)現(xiàn)進(jìn)程通信很用戶用低級(jí)通信工具實(shí)現(xiàn)進(jìn)程通信很不方便,因?yàn)槠湫实?,通信?duì)用戶不方便,因?yàn)槠湫实停ㄐ艑?duì)用戶不透明,所有的操作都必須由程序員不透明,所有的操作都必須由程序員來實(shí)現(xiàn);來實(shí)現(xiàn); 高級(jí)通信工具則可彌補(bǔ)這

45、些缺陷,用高級(jí)通信工具則可彌補(bǔ)這些缺陷,用戶可直接利用操作系統(tǒng)所提供的一組戶可直接利用操作系統(tǒng)所提供的一組通信命令,高效地傳送大量的數(shù)據(jù)。通信命令,高效地傳送大量的數(shù)據(jù)。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系66在單處理機(jī)環(huán)境下,進(jìn)程間在單處理機(jī)環(huán)境下,進(jìn)程間有哪幾種通信方式有哪幾種通信方式? ? 共享存儲(chǔ)器系統(tǒng)通信方式共享存儲(chǔ)器系統(tǒng)通信方式; 消息傳遞系統(tǒng)通信方式消息傳遞系統(tǒng)通信方式; 管道通信方式管道通信方式. 2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系67B練習(xí)題練習(xí)題在進(jìn)程通信中,使用信箱方式交換信息的在進(jìn)程通信中,使用信箱方式交換信息的是(是( )。)

46、。A低級(jí)進(jìn)程通信低級(jí)進(jìn)程通信 B高級(jí)進(jìn)程通信高級(jí)進(jìn)程通信 C共享內(nèi)存方式共享內(nèi)存方式 D管道文件方式管道文件方式2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系68C練習(xí)題練習(xí)題在間接通信時(shí),用在間接通信時(shí),用Send(N,M)原語發(fā)送信原語發(fā)送信件,其中件,其中N表示:表示:A 發(fā)送信件的進(jìn)程名發(fā)送信件的進(jìn)程名B 接收信件的進(jìn)程名接收信件的進(jìn)程名C 信箱名信箱名D 信件內(nèi)容信件內(nèi)容2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系69B練習(xí)題練習(xí)題用信箱實(shí)現(xiàn)進(jìn)程間通信時(shí)應(yīng)該用信箱實(shí)現(xiàn)進(jìn)程間通信時(shí)應(yīng)該( ) A.由發(fā)送信件者設(shè)置信箱由發(fā)送信件者設(shè)置信箱 B.由接受信件者設(shè)置信箱由

47、接受信件者設(shè)置信箱 C.當(dāng)信箱滿時(shí)讓接收者等信箱當(dāng)信箱滿時(shí)讓接收者等信箱 D. 在在send原語中指出發(fā)送者名原語中指出發(fā)送者名2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系70消息緩沖通信機(jī)制有什么好處?消息緩沖通信機(jī)制有什么好處?試述消息緩沖通信的過程。試述消息緩沖通信的過程。 消息緩沖通信機(jī)制不僅能較好地解決進(jìn)程間的同步互斥問消息緩沖通信機(jī)制不僅能較好地解決進(jìn)程間的同步互斥問題,還能交換大量信息,是理想的進(jìn)程通信工具;題,還能交換大量信息,是理想的進(jìn)程通信工具; 操作系統(tǒng)隱藏了進(jìn)程通信的實(shí)現(xiàn)細(xì)節(jié),即通信過程對(duì)用戶操作系統(tǒng)隱藏了進(jìn)程通信的實(shí)現(xiàn)細(xì)節(jié),即通信過程對(duì)用戶是透明的,簡(jiǎn)化了

48、通信程序編制上的復(fù)雜性。是透明的,簡(jiǎn)化了通信程序編制上的復(fù)雜性。 實(shí)現(xiàn)過程:實(shí)現(xiàn)過程: 當(dāng)某個(gè)進(jìn)程需要向另一個(gè)進(jìn)程發(fā)送消息時(shí),便向系統(tǒng)申請(qǐng)當(dāng)某個(gè)進(jìn)程需要向另一個(gè)進(jìn)程發(fā)送消息時(shí),便向系統(tǒng)申請(qǐng)一個(gè)消息緩沖區(qū),并把要發(fā)送的數(shù)據(jù)送到消息緩沖區(qū),然一個(gè)消息緩沖區(qū),并把要發(fā)送的數(shù)據(jù)送到消息緩沖區(qū),然后把該消息緩沖區(qū)插入到接受進(jìn)程的消息隊(duì)列中;后把該消息緩沖區(qū)插入到接受進(jìn)程的消息隊(duì)列中; 接受進(jìn)程在接受消息時(shí),只要從本進(jìn)程的消息隊(duì)列中摘下接受進(jìn)程在接受消息時(shí),只要從本進(jìn)程的消息隊(duì)列中摘下該消息緩沖區(qū),即可從中取下所需的信息,然后把該消息該消息緩沖區(qū),即可從中取下所需的信息,然后把該消息緩沖區(qū)交還給系統(tǒng)。緩沖

49、區(qū)交還給系統(tǒng)。 2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系71試比較消息隊(duì)列與管道通信試比較消息隊(duì)列與管道通信機(jī)制機(jī)制 所謂管道,是指用于連接一個(gè)讀進(jìn)程和一所謂管道,是指用于連接一個(gè)讀進(jìn)程和一個(gè)寫進(jìn)程、以實(shí)現(xiàn)它們之間通信的共享文個(gè)寫進(jìn)程、以實(shí)現(xiàn)它們之間通信的共享文件,又稱件,又稱pipe文件。管道通信是屬于共享文件。管道通信是屬于共享存儲(chǔ)器系統(tǒng)的。存儲(chǔ)器系統(tǒng)的。 消息隊(duì)列通信機(jī)制屬于消息傳遞系統(tǒng)通信消息隊(duì)列通信機(jī)制屬于消息傳遞系統(tǒng)通信機(jī)制,存在通信鏈路,有消息的格式,有機(jī)制,存在通信鏈路,有消息的格式,有若干緩沖隊(duì)列,采用獨(dú)特的發(fā)送原語和接若干緩沖隊(duì)列,采用獨(dú)特的發(fā)送原語和接收原

50、語收原語.。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系72引入引入進(jìn)程進(jìn)程 的目的:的目的: 使多個(gè)程序能并發(fā)執(zhí)行,提高使多個(gè)程序能并發(fā)執(zhí)行,提高資源利用率資源利用率和系和系統(tǒng)統(tǒng)吞吐量吞吐量。引入引入線程線程 的目的:的目的: 減少程序在并發(fā)執(zhí)行時(shí)所付出的減少程序在并發(fā)執(zhí)行時(shí)所付出的時(shí)空開銷時(shí)空開銷,使,使操作系統(tǒng)具有更好的并發(fā)性。操作系統(tǒng)具有更好的并發(fā)性。線程的引入線程的引入2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系73線程的概念線程的概念 線程:進(jìn)程中一個(gè)相對(duì)獨(dú)立的執(zhí)行流。線程:進(jìn)程中一個(gè)相對(duì)獨(dú)立的執(zhí)行流。 進(jìn)程與線程進(jìn)程與線程 進(jìn)程是資源分配單位進(jìn)程是資源分配

51、單位 線程是線程是CPU執(zhí)行單位執(zhí)行單位 多線程優(yōu)點(diǎn)多線程優(yōu)點(diǎn) 切換速度快(地址空間不變)切換速度快(地址空間不變) 系統(tǒng)開銷小系統(tǒng)開銷小 通訊容易(共享數(shù)據(jù)空間)通訊容易(共享數(shù)據(jù)空間)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系74資源擁有者資源擁有者執(zhí)行序列執(zhí)行序列進(jìn)程控制塊進(jìn) 程用戶地址空間用戶堆棧系統(tǒng)堆棧進(jìn)程的抽象模型進(jìn)程的抽象模型2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系75管理和執(zhí)行相分離的進(jìn)程模型管理和執(zhí)行相分離的進(jìn)程模型 用戶堆棧系統(tǒng)堆棧執(zhí)行控制進(jìn) 程進(jìn)程控制塊用戶地址空間共 享用戶堆棧系統(tǒng)堆棧執(zhí)行控制執(zhí)行序列執(zhí)行序列資源擁有者資源擁有者執(zhí)行序列執(zhí)行

52、序列2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系76進(jìn)進(jìn) 程程地址空間地址空間線線程程1 1共共 享享線線 程程空空 間間線線程程2 2線線程程n n線程的內(nèi)存布局線程的內(nèi)存布局2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系77內(nèi)核支持線程和用戶級(jí)線程 內(nèi)核支持線程,內(nèi)核支持線程,它們是依賴于內(nèi)核的,它們是依賴于內(nèi)核的,即無論是用戶進(jìn)程中的線程,還是系統(tǒng)即無論是用戶進(jìn)程中的線程,還是系統(tǒng)進(jìn)程中的線程,它們的創(chuàng)建、撤消、切進(jìn)程中的線程,它們的創(chuàng)建、撤消、切換都由內(nèi)核實(shí)現(xiàn)。換都由內(nèi)核實(shí)現(xiàn)。 用戶級(jí)線程,用戶級(jí)線程,對(duì)于這種線程的創(chuàng)建、撤對(duì)于這種線程的創(chuàng)建、撤消、和切換,都不用

53、系統(tǒng)調(diào)用來實(shí)現(xiàn)。消、和切換,都不用系統(tǒng)調(diào)用來實(shí)現(xiàn)。內(nèi)核并不知道用戶級(jí)線程的存在。內(nèi)核并不知道用戶級(jí)線程的存在。2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系78核心級(jí)線程(核心級(jí)線程(KLTKLT) 所有線程管理由核心完成所有線程管理由核心完成 沒有線程庫,但核心提供沒有線程庫,但核心提供APIAPI 核心維護(hù)進(jìn)程和線程的上下文核心維護(hù)進(jìn)程和線程的上下文 線程之間的切換需要核心支持線程之間的切換需要核心支持 以線程為基礎(chǔ)進(jìn)行調(diào)度以線程為基礎(chǔ)進(jìn)行調(diào)度 例子:例子:Windows 2000/XPWindows 2000/XP2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系79進(jìn)程

54、進(jìn)程線程線程核心棧核心棧進(jìn)程表進(jìn)程表用戶空間用戶空間系統(tǒng)空間系統(tǒng)空間TCB2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系80用戶級(jí)線程用戶級(jí)線程(ULT)(ULT) 實(shí)現(xiàn)方法:實(shí)現(xiàn)方法: 基于基于library函數(shù),系統(tǒng)不可見函數(shù),系統(tǒng)不可見 線程創(chuàng)建、撤銷、狀態(tài)轉(zhuǎn)換在目態(tài)完成線程創(chuàng)建、撤銷、狀態(tài)轉(zhuǎn)換在目態(tài)完成 TCB在用戶空間,每個(gè)進(jìn)程一個(gè)系統(tǒng)棧在用戶空間,每個(gè)進(jìn)程一個(gè)系統(tǒng)棧 優(yōu)點(diǎn):優(yōu)點(diǎn): 不依賴于操作系統(tǒng),調(diào)度靈活不依賴于操作系統(tǒng),調(diào)度靈活 切換無須從目態(tài)到管態(tài),速度快切換無須從目態(tài)到管態(tài),速度快 ULTULT可運(yùn)行在任何操作系統(tǒng)上(只需要線程庫),可以在一個(gè)可運(yùn)行在任何操作系統(tǒng)

55、上(只需要線程庫),可以在一個(gè)不支持線程的不支持線程的OSOS上實(shí)現(xiàn)上實(shí)現(xiàn) 缺點(diǎn):缺點(diǎn): 核心只將處理器分配給進(jìn)程,核心只將處理器分配給進(jìn)程,在多處理機(jī)中同一進(jìn)程中多個(gè)在多處理機(jī)中同一進(jìn)程中多個(gè)線程不能真正并行線程不能真正并行 一個(gè)線程進(jìn)入系統(tǒng)受阻,進(jìn)程中其它線程不能執(zhí)行一個(gè)線程進(jìn)入系統(tǒng)受阻,進(jìn)程中其它線程不能執(zhí)行2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系81運(yùn)行時(shí)系統(tǒng)運(yùn)行時(shí)系統(tǒng)TCB進(jìn)程進(jìn)程線程線程核心棧核心棧進(jìn)程表進(jìn)程表用戶空間用戶空間系統(tǒng)空間系統(tǒng)空間用戶級(jí)線程用戶級(jí)線程運(yùn)行時(shí)系統(tǒng):用于管理和控制線程的函數(shù)集合。運(yùn)行時(shí)系統(tǒng):用于管理和控制線程的函數(shù)集合。2022-5-3山東農(nóng)

56、業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系82線程庫線程庫提供線程運(yùn)行管理系統(tǒng):提供線程運(yùn)行管理系統(tǒng): 創(chuàng)建、撤消線程創(chuàng)建、撤消線程 在線程之間傳遞消息和數(shù)據(jù)在線程之間傳遞消息和數(shù)據(jù) 調(diào)度線程執(zhí)行調(diào)度線程執(zhí)行 保護(hù)和恢復(fù)線程上下文保護(hù)和恢復(fù)線程上下文2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系83用戶級(jí)線程和核心級(jí)線程用戶級(jí)線程和核心級(jí)線程2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系84用戶級(jí)線程與核心級(jí)線程的比較用戶級(jí)線程與核心級(jí)線程的比較用戶級(jí)線程用戶級(jí)線程(ULT)核心及線程核心及線程(KLT)管理管理線程庫線程庫內(nèi)核內(nèi)核調(diào)度單位調(diào)度單位進(jìn)程進(jìn)程線程線程切換速度切換速度同

57、一進(jìn)程諸線程間切換,由線程同一進(jìn)程諸線程間切換,由線程庫完成,速度較快庫完成,速度較快由內(nèi)核完成,速度較慢由內(nèi)核完成,速度較慢系統(tǒng)調(diào)用行為系統(tǒng)調(diào)用行為內(nèi)核看做是整個(gè)用戶進(jìn)程的行為內(nèi)核看做是整個(gè)用戶進(jìn)程的行為內(nèi)核只看做該線程的行為內(nèi)核只看做該線程的行為阻塞阻塞用戶進(jìn)程用戶進(jìn)程線程線程優(yōu)點(diǎn)優(yōu)點(diǎn)線程切換不調(diào)用內(nèi)核,切換速度線程切換不調(diào)用內(nèi)核,切換速度較快,調(diào)度算法可由應(yīng)用程序定較快,調(diào)度算法可由應(yīng)用程序定對(duì)多處理器,可同時(shí)調(diào)度同對(duì)多處理器,可同時(shí)調(diào)度同一進(jìn)程的多個(gè)線程,速度較一進(jìn)程的多個(gè)線程,速度較快,阻塞是在線程一級(jí)快,阻塞是在線程一級(jí)缺點(diǎn)缺點(diǎn)阻塞在用戶進(jìn)程一級(jí)阻塞在用戶進(jìn)程一級(jí)同一進(jìn)程內(nèi)的線程切

58、換速度同一進(jìn)程內(nèi)的線程切換速度較慢較慢2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系85例題 設(shè)進(jìn)程設(shè)進(jìn)程A擁有擁有1個(gè)用戶級(jí)線程,進(jìn)程個(gè)用戶級(jí)線程,進(jìn)程B擁有擁有100個(gè)用戶級(jí)線程,則在系統(tǒng)調(diào)度時(shí)各占用幾個(gè)時(shí)個(gè)用戶級(jí)線程,則在系統(tǒng)調(diào)度時(shí)各占用幾個(gè)時(shí)間片?間片?答:答:1 1個(gè)個(gè) 設(shè)進(jìn)程設(shè)進(jìn)程A擁有擁有1個(gè)內(nèi)核級(jí)線程,進(jìn)程個(gè)內(nèi)核級(jí)線程,進(jìn)程B擁有擁有100個(gè)內(nèi)核級(jí)線程,則在系統(tǒng)調(diào)度時(shí)各占用幾個(gè)時(shí)個(gè)內(nèi)核級(jí)線程,則在系統(tǒng)調(diào)度時(shí)各占用幾個(gè)時(shí)間片?間片?答:答:A:1A:1個(gè)個(gè);B:100;B:100個(gè)個(gè)2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系86 在混合式線程系統(tǒng)中,內(nèi)核支

59、持在混合式線程系統(tǒng)中,內(nèi)核支持KLT多線程的多線程的建立、調(diào)度和管理;建立、調(diào)度和管理; 同時(shí)同時(shí),也提供線程庫,允許用戶應(yīng)用程序建立、也提供線程庫,允許用戶應(yīng)用程序建立、調(diào)度和管理調(diào)度和管理ULT; 一個(gè)應(yīng)用程序的多個(gè)一個(gè)應(yīng)用程序的多個(gè)ULT映射成一些映射成一些KLT,程序程序員可按應(yīng)用需要和機(jī)器配置調(diào)整員可按應(yīng)用需要和機(jī)器配置調(diào)整KLT數(shù)目,以數(shù)目,以達(dá)到較好效果;達(dá)到較好效果; 混合式中,一個(gè)應(yīng)用中的多個(gè)線程能同時(shí)在多混合式中,一個(gè)應(yīng)用中的多個(gè)線程能同時(shí)在多處理器上并行運(yùn)行,且阻塞一個(gè)線程時(shí)并不需處理器上并行運(yùn)行,且阻塞一個(gè)線程時(shí)并不需要封鎖整個(gè)進(jìn)程。如果設(shè)計(jì)得當(dāng)?shù)脑?,則混合要封鎖整個(gè)進(jìn)

60、程。如果設(shè)計(jì)得當(dāng)?shù)脑?,則混合式多線程機(jī)制能夠結(jié)合了兩者優(yōu)點(diǎn),并舍去它式多線程機(jī)制能夠結(jié)合了兩者優(yōu)點(diǎn),并舍去它們的缺點(diǎn)。們的缺點(diǎn)。混合線程混合線程2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系87P P線程庫線程庫P P3 3)混合式線程)混合式線程ULTULTKLTKLTProcessProcessP PP P1 1)內(nèi)核級(jí)線程)內(nèi)核級(jí)線程內(nèi)核空間內(nèi)核空間用戶空間用戶空間用戶空間用戶空間內(nèi)核空間內(nèi)核空間線程庫線程庫P P2 2)用戶級(jí)線程)用戶級(jí)線程用戶空間用戶空間內(nèi)核空間內(nèi)核空間線程實(shí)現(xiàn)方法線程實(shí)現(xiàn)方法2022-5-3山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系山東農(nóng)業(yè)大學(xué)計(jì)算機(jī)系88練習(xí)題練習(xí)題1 同一

溫馨提示

  • 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)論