操作系統(tǒng)復習資料大全-考試必備_第1頁
操作系統(tǒng)復習資料大全-考試必備_第2頁
操作系統(tǒng)復習資料大全-考試必備_第3頁
操作系統(tǒng)復習資料大全-考試必備_第4頁
操作系統(tǒng)復習資料大全-考試必備_第5頁
已閱讀5頁,還剩81頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、信息工程學院計算機系 操作系統(tǒng) 學習指導書 操作系統(tǒng)課程組 第第 1 章章 操作系統(tǒng)引論操作系統(tǒng)引論 1.1 知識點總結(jié)知識點總結(jié) 1、什么是操作系統(tǒng)、什么是操作系統(tǒng)? 操作系統(tǒng):是控制和管理計算機系統(tǒng)內(nèi)各種硬件和軟件資源、有效地組織多道 程序運行的系統(tǒng)軟件(或程序集合),是用戶與計算機之間的接口。 1) OS 是什么:是系統(tǒng)軟件(一整套程序組成,如 UNIX 由上千個模塊組成) 2) 管什么:控制和管理系統(tǒng)資源(記錄和調(diào)度) 2、操作系統(tǒng)的主要功能操作系統(tǒng)的主要功能? 操作系統(tǒng)的功能:存儲器管理、處理機管理、設備管理、文件管理和用戶接口 管理 。 1) 存儲器管理:內(nèi)存分配,地址映射,內(nèi)存保

2、護和內(nèi)存擴充 2) 處理機管理:作業(yè)和進程調(diào)度,進程控制和進程通信 3) 設備管理:緩沖區(qū)管理,設備分配,設備驅(qū)動和設備無關(guān)性 4) 文件管理:文件存儲空間的管理,文件操作的一般管理,目錄管理,文件的 讀寫管理和存取控制 5) 用戶接口:命令界面/圖形界面和系統(tǒng)調(diào)用接口 3、操作系統(tǒng)的地位、操作系統(tǒng)的地位 操作系統(tǒng)是裸機之上的第一層軟件,是建立其他所有軟件的基礎。它是整個系 統(tǒng)的控制管理中心,既管硬件,又管軟件,它為其它軟件提供運行環(huán)境。 4、操作系統(tǒng)的基本特征?、操作系統(tǒng)的基本特征? 操作系統(tǒng)基本特征:并發(fā),共享和異步性。 1) 并發(fā):并發(fā)性是指兩個或多個活動在同一給定的時間間隔中進行。 2

3、) 共享:共享是指計算機系統(tǒng)中的資源被多個任務所共用。 3) 異步性:每個程序什么時候執(zhí)行,向前推進速度快慢,是由執(zhí)行的現(xiàn)場所決 定。但同一程序在相同的初始數(shù)據(jù)下,無論何時運行都應獲得同樣的結(jié)果。 5、操作系統(tǒng)的主要類型?、操作系統(tǒng)的主要類型? 多道批處理系統(tǒng)、分時系統(tǒng)、實時系統(tǒng)、個人機系統(tǒng)、網(wǎng)絡系統(tǒng)和分布式系統(tǒng) 1) 多道批處理系統(tǒng) (1) 批處理系統(tǒng)的特點:多道、成批 (2) 批處理系統(tǒng)的優(yōu)點:資源利用率高、系統(tǒng)吞吐量大 (3) 批處理系統(tǒng)的缺點:等待時間長、沒有交互能力 2) 分時系統(tǒng) (1) 分時:指若干并發(fā)程序?qū)?CPU 時間的共享。它是通過系統(tǒng)軟件實現(xiàn)的。 共享的時間單位稱為時間片

4、。 (2) 分時系統(tǒng)的特征: 同時性:若干用戶可同時上機使用計算機系統(tǒng) 交互性:用戶能方便地與系統(tǒng)進行人-機對話 獨立性:系統(tǒng)中各用戶可以彼此獨立地操作,互不干擾或破壞 及時性:用戶能在很短時間內(nèi)得到系統(tǒng)的響應 (3) 優(yōu)點主要是: 響應快,界面友好 多用戶,便于普及 便于資源共享 3) 實時系統(tǒng) (1) 實時系統(tǒng):響應時間很快,可以在毫秒甚至微秒級立即處理 (2) 典型應用形式:過程控制系統(tǒng)、信息查詢系統(tǒng)、事務處理系統(tǒng) (3) 與分時系統(tǒng)的主要區(qū)別: 分時系統(tǒng)分時系統(tǒng)實時系統(tǒng)實時系統(tǒng) 交互能力交互能力強(通用系統(tǒng))弱(專用系統(tǒng)) 響應時間響應時間秒級及時,毫秒/微妙級 可靠性可靠性一般要求要

5、求更高 4) 個人機系統(tǒng) (1) 單用戶操作系統(tǒng) 單用戶操作系統(tǒng)特征: 個人使用:整個系統(tǒng)由一個人操縱,使用方便。 界面友好:人機交互的方式,圖形界面。 管理方便:根據(jù)用戶自己的使用要求,方便的對系統(tǒng)進行管理。 適于普及:滿足一般的工作需求,價格低廉。 (2) 多用戶操作系統(tǒng)多:代表是 UNIX,具有更強大的功能和更多優(yōu)點。 網(wǎng)絡操作系統(tǒng) 計算機網(wǎng)絡 = 計算機技術(shù)+通信技術(shù) 計算機網(wǎng)絡的特征:分布性、自治性、互連性、可見性 網(wǎng)絡操作系統(tǒng)功能 本機+網(wǎng)絡操作系統(tǒng):本地 OS 之上覆蓋了網(wǎng)絡 OS,可以是同構(gòu)的也可以 是異構(gòu)的。 功能:實現(xiàn)網(wǎng)絡通信、資源共享和保護、提供網(wǎng)絡服務和網(wǎng)絡接口等 分布

6、式操作系統(tǒng) 定義:運行在不具有共享內(nèi)存的多臺計算機上,但用戶眼里卻像是一臺計 算機。(分布式系統(tǒng)無本地操作系統(tǒng)運行在各個機器上) 分布式系統(tǒng)特征:分布式處理、模塊化結(jié)構(gòu)、利用信息通信、實施整體控 制 分布式操作系統(tǒng)特點:透明性、靈活性、可靠性、高性能、可擴充性 1.2 習題練習習題練習 1、選擇題、選擇題 1) 操作系統(tǒng)是一種( A )。 A.系統(tǒng)軟件B.系統(tǒng)硬件 C.應用軟件 D.支援軟件 2) 多道程序設計是指( D )。 A.在實時系統(tǒng)中并發(fā)運行多個程序 B.在分布系統(tǒng)中同一時刻運行多個程序 C.在一臺處理機同一時刻運行多個程序 D.在一臺處理機上并發(fā)運行多個程序 3) 操作系統(tǒng)的設計目

7、標之一是正確性,下列(D )因素不會影響該目標? A.并發(fā)性 B.共享性 C.高效性 D.隨機性 4) 在下列操作系統(tǒng)的各個功能組成部分中,哪一個不需要有硬件的支持? A.進程調(diào)度 B.時鐘管理 C.地址映射 D.中斷系統(tǒng) 5) 下列操作系統(tǒng)中,( A )是網(wǎng)絡操作系統(tǒng) A.Windows 3.X B.DOS 6.22 C.CP/M 2.2 D.linux 6) 若把操作系統(tǒng)看作是計算機系統(tǒng)資源的管理者,下列( D )不屬于操作 系統(tǒng)所管理的資源? A.CPU B.內(nèi)存 C.程序 D.中斷 7) 操作系統(tǒng)負責管理計算機系統(tǒng)的( A )。 A.程序 B.文件 C.資源 D.進程 8) 沒有下列設

8、備( ),計算機無法工作。 A.硬盤 B.軟盤 C.內(nèi)存 D.打印機 9) 操作系統(tǒng)采用最多的數(shù)據(jù)結(jié)構(gòu)是( )。 A.隊列 B.表格 C.樹 D.堆棧 2、判斷題、判斷題 1) OS 的最終目標是管理好軟件和硬件資源。( ) 2) 系統(tǒng)軟件指的就是操作系統(tǒng)。( ) 3) 操作系統(tǒng)是存在 ROM 上的軟件。( ) 4) 從用戶的角度,操作系統(tǒng)可以看成計算機硬件的擴充。( ) 5) 虛擬機是指硬件外層的軟件。( ) 6) 用戶使用計算機,不必知道內(nèi)部數(shù)據(jù)是如何存放的。( ) 7) 操作系統(tǒng)的兩大使命,服務用戶和管理資源是統(tǒng)一的。( ) 8) 多道程序設計既在內(nèi)存中的多個程序并行運行。( ) 9)

9、多用戶系統(tǒng)一定采用多道技術(shù)。( ) 10) 只有多重處理系統(tǒng)可以為多用戶服務。( ) 11) 多用戶必須使用多終端。( ) 12) 分時系統(tǒng)中時間片越長越好。( ) 13) 用戶可以完全按照自己的意愿生成操作系統(tǒng)。( ) 14) 操作系統(tǒng)的冷,熱啟動差別只在于是否有加電自檢的過程。( ) 3、填空題、填空題 1) 從人機交互方式來看,操作系統(tǒng)是用戶與機器的 。 2) 從管理角度看,操作系統(tǒng)是管理資源的 。 3) 計算機操作系統(tǒng)是 ,管理和控制 的系統(tǒng)軟件。 4、簡答題、簡答題 1) 何謂脫機 I/O,聯(lián)機 I/O ? 2) 分時系統(tǒng)為什么能實現(xiàn)人機交互的操作?為什么主機間斷的服務,用戶卻覺得

10、在連續(xù)地工作? 3) 批處理系統(tǒng)及分時系統(tǒng)中各用戶均能共享系統(tǒng)資源,在共享系統(tǒng)資源的方法上 有什么不同? 4) 為什么 UNIX 系統(tǒng)是小型機的主導操作系統(tǒng)?從系統(tǒng)功能的角度說明之 5) 操作系統(tǒng)的五大類型的特點 6) 簡述操作系統(tǒng)的功能 7) 多道程序設計的基本思想 8) 操作系統(tǒng)一般為用戶提供了哪三種界面?各有什么特點? 9) 解釋下列術(shù)語:并發(fā),吞吐量,分時,實時 1.3 習題解答習題解答 1、選擇題、選擇題 4、簡答題、簡答題 1) 脫機 I/O 是指輸入輸出工作不受主機直接控制,而由衛(wèi)星機專門負責完成 I/O, 主機專門完成快速計算任務,從而二者可以并行操作。 聯(lián)機 I/O 是指作業(yè)

11、的輸入、調(diào)入內(nèi)存以及結(jié)果輸出都在 CPU 直接控制下進行。 2) 分時系統(tǒng)提供兩種接口:命令接口和系統(tǒng)調(diào)用,主機在中斷結(jié)構(gòu)和時鐘系統(tǒng)的 支持下,把 CPU 時間 分成時間片,每個程序只運行一個時間片,就產(chǎn)生一個時鐘中斷, 控制轉(zhuǎn)向操作系統(tǒng),操作系統(tǒng)選 擇另一個用戶程序。 它提供命令接口,交互性好,用 戶在終端上操作,即可得到系統(tǒng)的即時響應 在交互環(huán)境下,一個用戶使用終端,大部分時間用于操作鍵盤輸入字符,或閱讀思 考系統(tǒng)送回顯示 的信息.這個階段終端可獨立完成,無需主機直接的服務.用戶感覺主 機在不間斷地為自己服務, 因此這種系統(tǒng)也稱為聯(lián)機系統(tǒng).各用戶在自己享用的時間 片內(nèi),取得主機的服務 3)

12、 批處理系統(tǒng)采用并發(fā)處理方式,作業(yè)搭配,利用外設申請中斷的功能,通過 系統(tǒng)調(diào)度程序進行 操作。 分時系統(tǒng)各用戶按時間片分享 CPU,使系統(tǒng)具備共享能力 4.核心層提供基本功能,具有較強的進程管理、存儲管理和文件管理的功能, 實用層有命令的解釋和語言系統(tǒng)等實用軟件,也有大量的應用軟件,系統(tǒng)便于掌握, 也便于擴展,代碼采用 C 語言 移植性強。 很強的文件處理能力,以文件方法實現(xiàn) I/O 功能,管理十分方便。良好的開發(fā) 環(huán)境 5. 操作系統(tǒng)有以下幾種類型:多道批處理系統(tǒng)、分時系統(tǒng)、實時系統(tǒng)、網(wǎng)絡操 作系統(tǒng) 和分布式操作系統(tǒng)。多道批處理系統(tǒng)的特點:多道、成批分時系統(tǒng)的特點: 同時性、交互性、獨立性、

13、及時性 實時系統(tǒng)的特點:交互能力較弱,系統(tǒng)專用,響應時間更嚴格、及時、可靠性 要求更高 網(wǎng)絡操作系統(tǒng)的特點:分布性、自治性、互連性、可見性 分布式操作系統(tǒng)的特點:透明性、靈活性、可靠性、高性能、可擴充性 6.存儲器管理:包括內(nèi)存分配、址映射、內(nèi)存保護和內(nèi)存擴充。 作業(yè)管理:包括作業(yè)的創(chuàng)建,撤消,用戶界面的設計 進程管理: 進程控制和進程通信。 設備管理:包括緩沖管理、設備分配、和設備無關(guān)性。 文件管理:包括文件存空間的管理、文件操作的一般管理、目錄管理、文件的 讀寫管理和存取控制。 7.教材 P10 8.操作系統(tǒng)一般為用戶提供的三種界面是:命令界面、圖形界面和系統(tǒng)調(diào)用界 面 命令界面-在提示符

14、之后用戶從鍵盤上輸入命令,系統(tǒng)提供相應服務。 圖形界面-用戶利用鼠標、窗口、菜單、圖標等圖形用戶界面工具,可以直觀、 方便、有效地 使用系統(tǒng)服務和各種應用程序及實用工具。 系統(tǒng)調(diào)用界面-用戶在自己的程序中使用系統(tǒng)調(diào)用,從而獲取系統(tǒng)更基層的 服務。 9.教材 P6 10.并發(fā):是指兩個或多個活動在同一給定的時間間隔中進行。是宏觀上的概念。 吞吐量:在一段給定的時間內(nèi),計算機所能完成的總工作量。 分時:主要是指若干并發(fā)程序?qū)?CPU 時間的共享。 實時:表示及時或既時。 第第 2 章章 進程管理進程管理 1、程序順序執(zhí)行與并發(fā)執(zhí)行比較、程序順序執(zhí)行與并發(fā)執(zhí)行比較 順序執(zhí)行順序執(zhí)行并發(fā)執(zhí)行并發(fā)執(zhí)行

15、程序順序執(zhí)行間斷執(zhí)行,多個程序各自在“走走停?!狈N進行 程序具有封閉性程序失去封閉性 獨享資源 共享資源 具有可在現(xiàn)性失去可再現(xiàn)性 有直接和簡接的相互制約 2、多道程序設計概念及其優(yōu)點、多道程序設計概念及其優(yōu)點 1) 多道程序設計:是在一臺計算機上同時運行兩個或更多個程序。 2) 多道程序設計的特點:多個程序共享系統(tǒng)資源、多個程序并發(fā)執(zhí)行 3) 多道程序設計的優(yōu)點:提高資源利用率、增加系統(tǒng)吞吐量 3、什么是進程,進程與程序的區(qū)別和關(guān)系、什么是進程,進程與程序的區(qū)別和關(guān)系 1) 進程的引入 由于多道程序的特點,程序具有了并行、制約和動態(tài)的特征,就使得原來程序 的概念已難以刻劃和反映系統(tǒng)中的情況了

16、。 2) 進程:程序在并發(fā)環(huán)境下的執(zhí)行過程。 3) 進程與程序的主要區(qū)別: (1) 程序是永存的,進程是暫時的 (2) 程序是靜態(tài)的觀念,進程是動態(tài)的觀念 (3) 進程由三部分組成:程序+數(shù)據(jù)+進程控制塊(描述進程活動情況的數(shù)據(jù) 結(jié)構(gòu)) (4) 進程和程序不是一一對應的 一個程序可對應多個進程即多個進程可執(zhí)行同一程序 一個進程可以執(zhí)行一個或幾個程序 4) 進程特征:動態(tài)性、并發(fā)性、調(diào)度性、異步性、結(jié)構(gòu)性 4、進程的基本狀態(tài)及其轉(zhuǎn)換、進程的基本狀態(tài)及其轉(zhuǎn)換 1) 進程基本狀態(tài) (1) 運行態(tài)(Running):進程正在占用 CPU; (2) 就緒態(tài)(Ready):進程具備運行條件,但尚未占用 C

17、PU; (3) 阻塞態(tài)(Blocked):進程由于等待某一事件不能享用 CPU。 2) 進程狀態(tài)的轉(zhuǎn)換 (1) 就緒態(tài)-運行態(tài) (2) 運行態(tài)-就緒態(tài) (3) 運行態(tài)-阻塞態(tài) (4) 阻塞態(tài)-就緒態(tài) 5、進程是由哪些部分組成、進程是由哪些部分組成, 進程控制塊的作用進程控制塊的作用 1) 進程的組成:由程序、數(shù)據(jù)集合和 PCB 三部分組成。 2) 進程控制塊的作用:進程控制塊是進程組成中最關(guān)鍵的部分。 (1) 每個進程有唯一的 PCB。 (2) 操作系統(tǒng)根據(jù) PCB 對進程實施控制和管理。 (3) 進程的動態(tài)、并發(fā)等特征是利用 PCB 表現(xiàn)出來的。 (4) PCB 是進程存在的唯一標志。 6、

18、PCB 組織方式組織方式 線性隊列、鏈接表、索引表 7、進程的同步與互斥、進程的同步與互斥 1) 同步:是進程間共同完成一項任務時直接發(fā)生相互作用的關(guān)系。 2) 互斥:排它性訪問即競爭同一個物理資源而相互制約。 8、什么是臨界資源、臨界區(qū)?、什么是臨界資源、臨界區(qū)? 1) 臨界資源:一次僅允許一個進程使用的資源。 2) 臨界區(qū):在每個進程中訪問臨界資源的那段程序。 3) 互斥進入臨界區(qū)的準則: (1) 如果有若干進程要求進入空閑的臨界區(qū),一次僅允許一個進程進入。 (2) 任何時候,處于臨界區(qū)內(nèi)的進程不可多于一個。如已有進程進入自己的 臨界區(qū),則其它所有試圖進入臨界區(qū)的進程必須等待。 (3) 進

19、入臨界區(qū)的進程要在有限時間內(nèi)退出,以便其它進程能及時進入自己 的臨界區(qū)。 (4) 如果進程不能進入自己的臨界區(qū),則應讓出 CPU,避免進程出現(xiàn)“忙等” 現(xiàn)象。 9、信號量、信號量 1) 信號量定義:信號量(信號燈)=信號量的值,指向 PCB 的指針 2) 信號量的物理意義: (1) 信號量的值大于 0:表示當前資源可用數(shù)量 小于 0:其絕對值表示等待使用該資源的進程個數(shù) (2) 信號量初值為非負的整數(shù)變量,代表資源數(shù)。 (3) 信號量值可變,但僅能由、操作來改變。 10、P/V 操作原語操作原語 1) P 操作原語 P(S) (1) P 操作一次,S 值減,即 SS(請求分配一資源); (2)

20、 如果 S0,則該進程繼續(xù)執(zhí)行; 如果 S0 表示無資源,則該進程的狀態(tài) 置為阻塞態(tài),把相應的 PCB 連入該信號量隊列的末尾,并放棄處理機,進行等待 (直至另一個進程執(zhí)行 V(S)操作)。 2) V 操作原語(荷蘭語的等待)V(S) (1) V 操作一次,S 值加 1,即 SS+(釋放一單位量資源); (2) 如果 S0,表示有資源,則該進程繼續(xù)執(zhí)行; 如果 S0,則釋放信號 量隊列上的第一個 PCB 所對應的進程(阻塞態(tài)改為就緒態(tài)),執(zhí)行 V 操作的進 程繼續(xù)執(zhí)行。 11、進程間簡單同步與互斥的實現(xiàn)、進程間簡單同步與互斥的實現(xiàn) 1) 用 P,V 原語實現(xiàn)互斥的一般模型 設互斥信號量 mut

21、ex 初值為 1 2) 用 P、V 原語操作實現(xiàn)簡單同步的例子 S1 緩沖區(qū)是否空(0 表示不空,1 表示空),初值 S1=0; S2 緩沖區(qū)是否滿(0 表示不滿,1 表示滿),初值 S2=0; 3) 生產(chǎn)者消費者問題(OS 典型例子):mutex 互斥信號量,初值為 1;full 滿緩沖區(qū)數(shù),初值為 0;empty 空緩沖區(qū)數(shù),初值為 N; 第三章第三章 處理機調(diào)度與死鎖處理機調(diào)度與死鎖 處理機調(diào)度級別處理機調(diào)度級別 1. 調(diào)度:選出待分派的作業(yè)或進程 2. 處理機調(diào)度:分配處理機 3. 三級調(diào)度:高級調(diào)度(作業(yè)調(diào)度)、中級調(diào)度(內(nèi)存對換)、低級調(diào)度(進 程調(diào)度) 作業(yè)狀態(tài)作業(yè)狀態(tài) 1. 作

22、業(yè)狀態(tài)分為四種:提交、后備、執(zhí)行和完成。 2. 作業(yè)狀態(tài)變遷圖: 作業(yè)調(diào)度和調(diào)度的功能作業(yè)調(diào)度和調(diào)度的功能 1. 作業(yè)調(diào)度的任務 后備狀態(tài) 執(zhí)行狀態(tài) 執(zhí)行狀態(tài) 完成狀態(tài) 2. 作業(yè)調(diào)度的功能 1) 記錄系統(tǒng)中各個作業(yè)的情況 2) 按照某種調(diào)度算法從后備作業(yè)隊列中挑選作業(yè) 3) 為選中的作業(yè)分配內(nèi)存和外設等資源 4) 為選中的作業(yè)建立相應的進程 5) 作業(yè)結(jié)束后進行善后處理工作 進程調(diào)度和調(diào)度的功能進程調(diào)度和調(diào)度的功能 1. 進程調(diào)度:后備狀態(tài) 執(zhí)行狀態(tài) 2. 進程調(diào)度時機:任務完成后、等待資源時、運行到時了、發(fā)現(xiàn)重調(diào)標志 3. 進程調(diào)度的功能:保存現(xiàn)場、挑選進程、恢復現(xiàn)場 兩級調(diào)度模型兩級調(diào)度

23、模型作業(yè)調(diào)度和進程調(diào)度的區(qū)別作業(yè)調(diào)度和進程調(diào)度的區(qū)別 評價調(diào)度算法的指標評價調(diào)度算法的指標 調(diào)度性能評價準則:CPU 利用率、吞吐量、周轉(zhuǎn)時間、就緒等待時間和響應時 間 1. 吞吐量:單位時間內(nèi) CPU 完成作業(yè)的數(shù)量 2. 周轉(zhuǎn)時間: 1) 周轉(zhuǎn)時間=完成時刻提交時刻 2) 平均周轉(zhuǎn)時間=周轉(zhuǎn)時間n 3) 帶權(quán)周轉(zhuǎn)時間=周轉(zhuǎn)時間實際運行時間 4) 平均帶權(quán)周轉(zhuǎn)時間=帶權(quán)周轉(zhuǎn)時間n 簡單的調(diào)度算法簡單的調(diào)度算法 1. 先來先服務先來先服務(FCFS) 調(diào)度算法的實現(xiàn)思想:按作業(yè)(進程)到來的先后次序進行調(diào)度,即先來的 先得到運行。 用于作業(yè)調(diào)度:從作業(yè)對列(按時間先后為序)中選擇隊頭的一個或

24、幾個作業(yè)運行。 用于進程調(diào)度:從就緒隊列中選擇一個最先進入該隊列的進程投入 運行。 例如 設有三個作業(yè),編號為 1,2,3。各作業(yè)分別對應一個進程。各作業(yè) 依次到達,相差一個時間單位。 圖示出采用 FCFS 方式調(diào)度時這三個作業(yè)的執(zhí) 行順序 作業(yè)調(diào)度(宏觀調(diào)度) 為進程活動做準備,即有獲得 處理機的資格 調(diào)度次數(shù) 有的系統(tǒng)不設作業(yè) 調(diào)度 進程調(diào)度(微觀調(diào)度) 使進程活動起來,即分配 得到了處理機 調(diào)度頻率高進程調(diào)度必不可少 算出各作業(yè)的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間 作 業(yè) 到 達時間 運 行時間 開 始時間 完 成時間 周 轉(zhuǎn)時間 帶權(quán) 周轉(zhuǎn)時間 1024024241 2132427268.67 3

25、232730289.33 平均周轉(zhuǎn)時間 T=26 平均帶權(quán)周轉(zhuǎn)時間 W=6.33 2. 時間片輪轉(zhuǎn)(時間片輪轉(zhuǎn)(RR) 調(diào)度算法的實現(xiàn)思想:系統(tǒng)把所有就緒進程按先進先出的原則排成一個隊 列。新來的進程加到就緒隊列末尾。 每當執(zhí)行進程調(diào)度時,進程調(diào)度程序總是選出就緒隊列的隊首進程,讓它在 CPU 上運行一個時間片的時間。當時間片到,產(chǎn)生時鐘中斷 ,調(diào)度程序便停止該進程的運行,并把它放入就緒隊列末尾,然后,把 CPU 分 給就緒隊列的隊首進程。 時間片:是一個小的時間單位,通常 10100ms 數(shù)量級。 例如 設四個進程 A、B、C 和 D 依次進入就緒隊列(同時到達),四個進程分 別需要運行 1

26、2、5、3 和 6 個時間單位。 圖示 RR 法時間片 q=1 和 q=4 示進程運行情況 算出各進程的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間 3. 優(yōu)先級調(diào)度算法的實現(xiàn)思想優(yōu)先級調(diào)度算法的實現(xiàn)思想: 從就緒隊列中選出優(yōu)先級最高的進程到 CPU 上運行。 1) 兩種不同的處理方式:非搶占式優(yōu)先級法、搶占式優(yōu)先級法 2) 兩種確定優(yōu)先級的方式:靜態(tài)優(yōu)先級、動態(tài)優(yōu)先級 例如 假定在單 CPU 條件下有下列要執(zhí)行的作業(yè): 作業(yè)運行時間優(yōu)先級 1103 211 323 414 552 用執(zhí)行時間圖描述非強占優(yōu)先級調(diào)度算法執(zhí)行這些作業(yè)的情況 算出各作業(yè)的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間 作 業(yè) 到 達時間 運 行時間 開 始時間

27、 完 成時間 周 轉(zhuǎn)時間 帶權(quán) 周轉(zhuǎn)時間 10100101010 21128191818.0 3221113115.5 435101188.0 54513181428 平均周轉(zhuǎn)時間 T=122 平均帶權(quán)周轉(zhuǎn)時間 W=706 Shell 命令執(zhí)行過程命令執(zhí)行過程 1. 讀命令:shell 命令解釋程序?qū)⒚钚凶x到自己的工作區(qū)中。 2. 判對錯:判斷命令是否正確,若有錯則發(fā)出相應的錯誤信息。 3. 建子進程:終端進程調(diào)用系統(tǒng)調(diào)用 fork,創(chuàng)建一個子進程。 4. 等待完成:終端進程將等待自己創(chuàng)建的子進程完成工作,變成睡眠態(tài)。 如果用戶鍵入的命令行末尾有“ for(i=4;i=0;i-) print

28、(buffi); 高級語言例子: 讀硬盤文件 f1 的第 10 到 20 個字節(jié) seek(fd,10,0); read(fd,buff,11); 凡是與硬件相關(guān)、與應用無關(guān)的工作,都通過操作系統(tǒng)程序來完成 用戶程序 函數(shù) 操作系統(tǒng) 系統(tǒng)調(diào)用與一般過程調(diào)用的對比 相同點: 改變指令流程、重復執(zhí)行和公用、要返回原處。 不同點: 一般過程調(diào)用:調(diào)用程序和被調(diào)用程序都運行在相同狀態(tài)(系統(tǒng)態(tài)或用戶態(tài)), 調(diào) 用時不涉及系統(tǒng)狀態(tài)轉(zhuǎn)換。 系統(tǒng)調(diào)用: 調(diào)用程序在用戶態(tài),被調(diào)用程序在系統(tǒng)態(tài),調(diào)用時涉及系統(tǒng)狀態(tài)的轉(zhuǎn) 換, 不允許由調(diào)用過程直接轉(zhuǎn)向被調(diào)用過程, 先通過軟中斷機制由用戶態(tài)轉(zhuǎn)換為系統(tǒng) 態(tài), 在 OS

29、核心分析后, 再轉(zhuǎn)向相應的系統(tǒng)調(diào)用處理子程序。 系統(tǒng)調(diào)用的分類 將系統(tǒng)的功能分為兩部分: 系統(tǒng)自身所需要的 作為服務提供給用戶的 OS 的系統(tǒng)調(diào)用: 進程控制類系統(tǒng)調(diào)用 文件操作類系統(tǒng)調(diào)用 進程通信類系統(tǒng)調(diào)用 設備管理類系統(tǒng)調(diào)用 信息維護類系統(tǒng)調(diào)用 系統(tǒng)調(diào)用的實現(xiàn) DOS: 21h 號中斷的系統(tǒng)服務功能以及參數(shù)列表 Linux: 0 x80 (或 128)中斷向量用來實現(xiàn)系統(tǒng)調(diào)用 現(xiàn)代操作系統(tǒng)一般不直接提供系統(tǒng)調(diào)用指令接口, 通常做法: 提供一套方便、實 用的應用程序函數(shù)庫 (應用程序設計接口 API ) 從應用層面重新封裝系統(tǒng)調(diào)用、屏蔽復雜的系統(tǒng)調(diào)用傳參問題、提供高級語言 接口, 有助于快速

30、開發(fā) 在更高層面提供系統(tǒng)程序設計模板庫和類庫, 如: Windows 2000/XP 提供封裝系統(tǒng)用 Win32 API 和高層編程設施 MFC 以及 ATL Linux 提供封裝系統(tǒng)調(diào)用、符合 POSIX 標準 API 和 C 運行庫 2. 系統(tǒng)調(diào)用的處理過程系統(tǒng)調(diào)用的處理過程 為了保證 OS 不被用戶程序破壞, 不允許用戶程序直接訪問 OS 的系統(tǒng)程序和數(shù) 據(jù)。 用戶怎樣得到系統(tǒng)服務的呢? 需要有一個類似于硬件中斷處理的處理機構(gòu)。當用戶使用操作系統(tǒng)調(diào)用時, 產(chǎn) 生一條相應的指令, 處理機在執(zhí)行到該指令時發(fā)生 相應的中斷, 并發(fā)出有關(guān)的信號給該處理機構(gòu), 該處理機構(gòu)在收到了處理機發(fā)來 的信號

31、后, 啟動相關(guān)的處理程序去完成該系統(tǒng)調(diào) 用所要求的功能。 在系統(tǒng)中為控制系統(tǒng)調(diào)用服務的機構(gòu)被稱為陷入 ( TRAP ) 或異常處理機構(gòu) 相對應,把由于系統(tǒng)調(diào)用引起處理機中斷的指令稱為陷入或異常指令(或稱訪 管指令) 在操作系統(tǒng)中,每個系統(tǒng)調(diào)用都對應一個事先給定的功能號,如: 0、1、2、3 等 在陷入指令中必須包括對應系統(tǒng)調(diào)用的功能號 而且,在有些陷入指令中,還帶有傳給陷入處理機構(gòu)和內(nèi)部處理程序的有關(guān)參 數(shù) 必須為實現(xiàn)系統(tǒng)調(diào)用功能的子程序編造入口地址表 每個入口地址與相應的系統(tǒng)程序名對應 陷入處理程序把陷入指令包含功能號與入口地址表有關(guān)項對應, 系統(tǒng)調(diào)用功能 號驅(qū)動有關(guān)子程序執(zhí)行 在系統(tǒng)調(diào)用處

32、理結(jié)束之后,用戶程序需利用系統(tǒng)調(diào)用返回結(jié)果繼續(xù)執(zhí)行 保護和恢復現(xiàn)場: 在進入系統(tǒng)調(diào)用處理之前,陷入處理機構(gòu)還需保存處理機現(xiàn)場 在系統(tǒng)調(diào)用處理結(jié)束之后,要恢復處理機現(xiàn)場,現(xiàn)場被保護在特定的內(nèi)存區(qū)或 寄存器中 3. Win32 應用程序接口應用程序接口 在 Windows 中, 定義了種類非常多的數(shù)以千計的應用程序接口(Win32 API), 提 供 OS 服務 Windows 中分辨不出哪些是系統(tǒng)調(diào)用(被內(nèi)核執(zhí)行), 哪些是用戶空間的庫調(diào)用。 事實上, 一個 Windows 版本中的系統(tǒng)調(diào)用, 也許 在另一個 Windows 版本中會在用戶空間的庫調(diào)用 在某些 Windows 版本中, 圖形子系

33、統(tǒng)在內(nèi)核中運行, 它們也是系統(tǒng)調(diào)用, 否則是 用戶空間的庫調(diào)用 四、操作系統(tǒng)的安裝與啟動四、操作系統(tǒng)的安裝與啟動 操作系統(tǒng)怎樣開始運行(引導和裝入) 怎樣形成系統(tǒng)操作環(huán)境(配置和初始化) 怎樣從程序的順序執(zhí)行轉(zhuǎn)換到支持程序的并發(fā)執(zhí)行 1. 操作系統(tǒng)的引導和裝入操作系統(tǒng)的引導和裝入 操作系統(tǒng)的引導有兩種方式: 獨立引導(bootup) 輔助下裝(download) 大多數(shù)系統(tǒng)采用 OS 核心文件存儲在系統(tǒng)本身的存儲設備中 由系統(tǒng)自己將 OS 核心程序讀入內(nèi)存并運行 最后建立一個操作環(huán)境 獨立引導方式步驟: (1)系統(tǒng)加電, 執(zhí)行 BIOS 中的系統(tǒng)初啟程序 (2)對系統(tǒng)硬件和配置進行自檢, 保證

34、無硬件錯誤 (3)從硬盤中讀入操作系統(tǒng)啟動文件,并將控制權(quán)交給該程序模塊 (4)執(zhí)行操作系統(tǒng)啟動程序,完成系統(tǒng)環(huán)境配置和操作系統(tǒng)初始化工作 (5)繼續(xù)讀入其余的 OS 文件,逐個執(zhí)行相應的系統(tǒng)程序,完成 OS 各種功能 模塊的裝入,完善 OS 的操作環(huán)境,做好程序并發(fā)執(zhí)行的準備 (6)等待用戶請求和用戶作業(yè)的輸入,經(jīng)過操作系統(tǒng)調(diào)度后并發(fā)執(zhí)行 (2) 輔助下裝方式 OS 主要文件不放在系統(tǒng)本身的存儲設備中 而是在系統(tǒng)啟動后,執(zhí)行下裝操作 從另外的計算機系統(tǒng)中將操作系統(tǒng)常駐部分傳送到該計算機中,使它形成一個 操作環(huán)境 優(yōu)點:可以節(jié)省較大的存儲空間 下裝的 OS 并非是全部代碼,只是常駐部分或者專用

35、部分 當這部分 OS 出現(xiàn)問題和故障時,可以再請求下裝 2. 系統(tǒng)配置與初始化系統(tǒng)配置與初始化 操作系統(tǒng)引導是從程序的順序執(zhí)行到并發(fā)執(zhí)行的過程, 操作系統(tǒng)初始化完成后, 才能建立這樣的環(huán)境。 步驟: (1)關(guān)掉系統(tǒng)中斷,以保證系統(tǒng)順利引導 (2)對當前的系統(tǒng)運行環(huán)境進行檢查, 對系統(tǒng)的配置進行認定, 保存檢測的結(jié) 果作為系統(tǒng)的初始配置條件。 (3)進行操作系統(tǒng)的初始化 BIOS(基本輸入輸出系統(tǒng))概覽 1. 打開電源 2. 硬件將控制權(quán)交給 BIOS 3. BIOS 運行通電自測試程序 4. 確認所有外部設備: 硬盤或擴充卡 5. 確定主引導程序或初始程序加載設備的位置 6. BIOS 建立系

36、統(tǒng)資源表 7. 選擇并啟用初始輸入設備(鍵盤)和輸出設備(顯示器)。BIOS 在成功啟動時俘 獲這些設置, 并將他們存儲到存儲器中 8、搜索非 PnP 設備,如外部設備互連(PCI)總線,并將這些設備的 ROM 的 數(shù)據(jù)添加到資源表中 9、BIOS 解決設備沖突,并配置選擇的引導設備 10、通過用適當參數(shù)呼叫 PnP 設備的任選 ROM 來啟動這些設備 11、啟動引導裝入程序 12、初始程序加載設備將操作系統(tǒng)裝到存儲器中 13、BIOS 將控制權(quán)交給操作系統(tǒng),操作系統(tǒng)可以進行其他資源的分配 初始化工作要點 (1)根據(jù) OS 設計時定義的全局參數(shù),在內(nèi)存中建立 OS 工作時所必需的數(shù)據(jù) 結(jié)構(gòu)和各

37、種記錄表格, 并且根據(jù)當前系統(tǒng)的環(huán)境配置情況, 填寫相應的表格和結(jié)構(gòu), 設定它們的初始條件、參數(shù)和狀態(tài) (2)最重要的是建立有關(guān)進程的所有數(shù)據(jù)結(jié)構(gòu),如建立 PCB 表,建立相應的 進程隊列 (3)操作系統(tǒng)根據(jù)檢查得到的數(shù)據(jù)獲得自由存儲空間的容量,并以此作為存儲 分配的基數(shù)之一, 同時建立存儲管理的若干數(shù)據(jù)結(jié)構(gòu),如自由空間隊列、分配空間 隊列等,獲得待分配的自由空間的地址 (4)分別建立系統(tǒng)設備和文件系統(tǒng)的控制結(jié)構(gòu)及相應表格, 并填寫好設備的初 始條件、狀態(tài)和類型, 建立好訪問文件系統(tǒng)的各種索引表格 (5)對 PCB 表和幾個進程隊列進行初始化 此時, 可以建立一個空進程(NULL), 或者把執(zhí)

38、行的這個程序本身作為第一個進 程 如果系統(tǒng)有實時時鐘控制, 還需對時鐘控制邏輯進行初始化 操作系統(tǒng)期末考試是閉卷考試,實行百分制。試題將覆蓋全部所學的內(nèi)容, 但重點是前六章。在題目安排上,以需要掌握和理解的內(nèi)容為主,一般了解的 內(nèi)容為輔,但所占比例很小。教學大綱中沒有要求的內(nèi)容不考試。 試題類型包括: 選擇題(20 分),判斷題(10 分),填空題(30 分),解答題(25 分),應用題 (15 分)。 第一章第一章操作系統(tǒng)引論操作系統(tǒng)引論 1. 第二章第二章 進程管理進程管理 選擇題選擇題 (1)死鎖預防是保證系統(tǒng)不進入死鎖狀態(tài)的靜態(tài)策略,其解決辦法是 破壞產(chǎn)生死鎖的四個必要條件之一。下列方

39、法中哪一個是破壞了循 環(huán)等待條件? A)銀行家算法 B)一次性分配策略 C)剝奪資源法 D)資源有序分配策略 (2)下列關(guān)于進程的敘述中,哪一個是正確的? A)進程獲得處理機而運行是通過調(diào)度而得到的 B)優(yōu)先數(shù)是進行進程調(diào)度的重要依據(jù),一旦確定不能改變 C)在單 CPU 系統(tǒng)中,任一時刻有 1 個進程處于運行狀態(tài) D)進程申請 CPU 得不到滿足時,其狀態(tài)變?yōu)榈忍貭顟B(tài) (3)設系統(tǒng)中 A 類資源有 10 個實例,B 類資源有 5 個實例,又設系統(tǒng)中有 5 個進程 P1,P2,P3,P4,P5。在某一時刻 T0,系統(tǒng)狀態(tài)如下: 最大 減法需求量已分配資源數(shù)量 A B A B P1 7 5 0 1

40、 P2 3 2 2 0 P3 9 0 3 0 P4 2 2 2 1 P5 4 3 0 0 現(xiàn)在系統(tǒng)可用資源為 A:3 個,B:3 個 該狀態(tài)是安全狀態(tài),現(xiàn) 在進程 P2 發(fā)出新的資源申請 A:1 個,B:0 個.分配后系統(tǒng)仍處于安全狀態(tài), 其某一安全序列是 A)P2P3P5P4P1 B)P2P4P5P1P3 C)P4P3P1P5P2 D)P5P1P3P4P2 (4)用 P、V 操作可以解決進程間的各種同步和互斥問題,下列說法中哪一個 是正確的? 。兩個 P 操作的順序無關(guān)緊要 。用于互斥的 P 操作應在用于同步的 P 操作之前 。用于同步的 P 操作應用于互斥的 P 操作之前 A)只用B)只有

41、C)只有D)都不正確 (5)下列哪一條指令只能在管態(tài)下執(zhí)行? A)讀時鐘日期 B)訪管指令 C)屏蔽中斷指令 D)取數(shù)指令 (6)在進程狀態(tài)轉(zhuǎn)換時,下列哪一種狀態(tài)轉(zhuǎn)換是不可能發(fā)生的? A)就緒態(tài)運行態(tài) B)運行態(tài)就緒態(tài) C)運行態(tài)等待態(tài) D)等待態(tài)運行態(tài) (7)假設就緒隊列中有 10 個進程,系統(tǒng)將時間片設為 200ms, CPU 進行 進程切換要花費 10ms。則系統(tǒng)開銷所占的比率約為 A)l B)5 C)10 D)20 (8)通過破壞產(chǎn)生死鎖的四個必要條件之一,可以保證不讓死鎖發(fā)生, 其中采用資源有序分配法是破壞 A)互斥條件 B)不可剝奪條件C)部分分配條件 D)循環(huán)等待條件 (9)下列

42、進程狀態(tài)的轉(zhuǎn)換下,哪一個是不正確的? A)就緒運行 B)運行就緒 c)就緒等待 D)等待就緒 (10)下面各項工作步驟中,哪一個不是創(chuàng)建進程所必需的步驟? A)建立一個 PCB(進程控制塊)B)由 CPU 調(diào)度程序為進程調(diào)度 CPU C)為進程分配內(nèi)存等必要資源 D)將 PCB 鏈入進程就緒隊列 (11)操作系統(tǒng)中,死鎖的概念是指 A)程序死循環(huán) B)硬件發(fā)生故障 C)兩個或多個并發(fā)進程各自占有某種資源而又都等待別的進程釋放它們所占有的資源 D) 系統(tǒng)停止運行 (12)從供選擇的答案中,選出應填入下面敘述中_?_內(nèi)最確切的解答, 把相應編號寫在答卷的對應欄內(nèi)。 操作系統(tǒng)中, 可以并行工作的基本

43、單位是(進程 A_,_(進程)_ 也是核心 調(diào)度及資源分配的基本單位,它是由_(程序,數(shù)據(jù),PCB)組成的,它與程 序的重要區(qū)別之一是(它有狀態(tài),而程序沒有) _C_。當因資源競爭可能會引 起死鎖時, 可以有兩種策略對付:(死鎖的避免和預防_)_D_和_(死鎖 的檢測和修復)_E_,其中(重新啟動)_D_付出的代價較高。 供選擇的答案 A:作業(yè)函數(shù)進程過程 B:程序、數(shù)據(jù)和 P C B 程序、數(shù)據(jù)和標識符程序、標識符和 PCB 數(shù)據(jù)、標識符和 P C B C:程序有狀態(tài),而它沒有它有狀態(tài),而程序沒有 程序可占有資源,而它不可 它能占有資源,而程序不能 D、E:死鎖的避免和預防 修改控制字 死鎖

44、的檢測和修復撤消鎖 改寫 Config 文件 重新啟動 (13)用時間片輪轉(zhuǎn)法分配 CPU 時,當處于運行狀態(tài)的進程用完一個時間片后, 它的狀態(tài)是 A)等待 B)運行 C)就緒 D)消亡 (14) windows95 屬于下列哪種類型操作系統(tǒng)? A)單用戶、單用戶 B)多用戶、多任務 C)單用戶、多任務 D)實時 (15)在單 CPU 系統(tǒng)中,關(guān)于進程的敘述正確的是 A)最多只有一個進程處于運行狀態(tài) B)只能有一個進程處于就緒狀態(tài) C)一個進程可以同時處于就緒狀態(tài)和等待狀態(tài) D)一個處于等待狀態(tài)的進程一旦分配了 CPU,即進入運行狀態(tài) 是非題是非題 1 并行處理只與硬件性能有關(guān),與軟件無關(guān) 2

45、 單機系統(tǒng)最多允許二個進程處于運行狀態(tài) 3 程序的封閉性和再現(xiàn)性使得系統(tǒng)管理很簡單,程序編制調(diào)試很容易, 從而大大提高了資源的利用率 4 程序的封閉性是指該程序不允許某些進程調(diào)用 5 并發(fā)程序與順序程序的執(zhí)行有不同的特性,順序程序的封閉性和再現(xiàn) 性在并發(fā)程序中依然存在 6 進程由程序和數(shù)據(jù)二部分組成 7 進程處于就緒狀態(tài),已獲得所有運行所需系統(tǒng)資源,只要通過調(diào)度原語 調(diào)出,即可進入運行狀態(tài) 8 進程在運行過程中,進入阻塞狀態(tài)只因為等待 I/O 等資源 9 操作系統(tǒng)中的第一個進程是由系統(tǒng)初始化程序執(zhí)行完后,建立的一個空 進程或者一個系統(tǒng)的主進程 10 因為缺乏資源、時間片到或外部中斷,則可以引起

46、進程調(diào)度 11 臨界區(qū)是指進程中用于實現(xiàn)進程互斥的那段代碼 12 進程的同步與互斥是其兩種狀態(tài) 13 進程就緒隊列就是一個在一個時刻只能允許一個進程訪問的臨界資源 14 進程的互斥是指兩個進程不能同時進入訪問同一臨界資源的臨界區(qū), 只能交替執(zhí)行 15 信號量是一種控制進程互斥和同步的整型物理變量 16 管道通信是以管道消息為單位進行讀寫的,可進行大批量數(shù)據(jù)交換, 其工作是以先進先出為順序的 17 消息緩沖是一種直接通信方式,也是一種低級通信 18 產(chǎn)生死鎖的原因之一是進程推進的順序不合適 19 產(chǎn)生死鎖的原因之一是計算機病毒被激活 20 信號量機構(gòu),只能用于進程互斥,不能用于進程同步操作 填空

47、題填空題 1.進程是(并發(fā))活動,在其生存過程中,出現(xiàn)種種制約關(guān)系(互斥)(同步) 2.為保證進程間正確地實施通信,系統(tǒng)內(nèi)部設置了(通信原語) 3.通過(中斷機構(gòu))實現(xiàn)進程從用戶態(tài)到核心態(tài)的轉(zhuǎn)變, 4.進程的三種基本狀態(tài)(運行態(tài))(就緒態(tài))(封鎖態(tài)) 5.進程通常由(程序)(數(shù)據(jù))(PCB)組成 6 .PCB 表的物理組織形式有兩種常用的方式(線性表)(鏈接表) 7.進程通信是實現(xiàn)進程間同步與互斥的一種機制 8.按功能分中斷源分為(機器故障)(I/O 中斷)(外部中斷)(程序性中斷)(訪管中斷) 9.按產(chǎn)生中斷的方式劃分(強迫中斷)(自愿中斷) 10. 按中斷事件來源(中斷)(陷入) 11.

48、進程的最基本特性(并發(fā)性)(動態(tài)性) 12. 外界對進程的控制可利用(系統(tǒng)調(diào)用)實現(xiàn). 13. 進程間控制信息的交換稱為(低級通信),而把進程間大批量數(shù)據(jù)的交換稱為(高級通信) 14. 產(chǎn)生死鎖的必要條件(互斥條件)(不剝奪條件)(部分分配)(環(huán)路條件) 15. 解決死鎖的方法分為三種(預防)(避免)(檢測與恢復) 16. 比較常用的死鎖的解決方法是(檢測與恢復方法) 17. 進程的通信方式分為(主從式)(會話式)(消息與郵箱方式)(共享虛存方式) 應答題應答題 1 什么是進程?它與程序有什么不同? 進程是在并發(fā)環(huán)境下程序的一次運行。這種執(zhí)行是一種有生命的動態(tài)活動。 進程與程序的主要區(qū)別是:

49、進程是動態(tài)的;程序是靜態(tài)的。 進程有獨立性,能并發(fā)執(zhí)行;程序不能并發(fā)執(zhí)行。 二者無一一對應關(guān)系。 進程異步運行,會相互制約;程序不具備此特征。 但進程與程序又有密切的聯(lián)系:進程不能脫離具體程序而虛設,程序規(guī)定了相應進程所要的 完成的動作。 2 進程有幾種工作狀態(tài)?分別是那些狀態(tài) 運行態(tài)、阻塞態(tài)、就緒態(tài) 3 為什么要引入進程的概念? 在操作系統(tǒng)中,由于多道程序并發(fā)執(zhí)行時共享系統(tǒng)資源,共同決定這些資源的狀態(tài),因此系統(tǒng) 中各程序在執(zhí)行過程中就出現(xiàn)了相互制約的新關(guān)系,程序的執(zhí)行出現(xiàn)“走走停?!钡男聽顟B(tài)。 這些都是在程序的動態(tài)過程中發(fā)生的。用程序這個靜態(tài)概念已不能如實反映程序并發(fā)執(zhí)行過程 中的這些特征。

50、為此,人們引入“進程”這一概念來描述程序動態(tài)執(zhí)行過程的性質(zhì)。 4 從資源使用的角度說明進程狀態(tài)相互裝換的原因? (1) 從運行態(tài)到阻塞態(tài)的轉(zhuǎn)換,缺少除 CPU 以外的其他資源,迫使進程放棄 CPU 和其他資源 (2) 從阻塞態(tài)到就緒態(tài)的轉(zhuǎn)換,其他進程放棄某些資源,本進程除 CPU 以外獲得所有的資源 (3) 從就緒態(tài)到運行態(tài)的轉(zhuǎn)換,由操作系統(tǒng) CPU 調(diào)度程序調(diào)度,分配給 CPU 給本進程,使它所獲得 的全 部資源處于運作推進狀態(tài). (4)由運行態(tài)到就緒態(tài)的轉(zhuǎn)換, 由操作系統(tǒng) CPU 調(diào)度程序調(diào)度,如時間片結(jié)束,放棄 CPU 返回就緒 等待 5 什么是“管態(tài)”,什么是用戶態(tài)?他們與進程狀態(tài)存在

51、什么關(guān)系? 執(zhí)行核心程序時稱為核心態(tài)或管態(tài).,能夠存取核心和用戶的指令和數(shù)據(jù),執(zhí)行特權(quán)指令 執(zhí)行用戶程序時稱為用戶態(tài),存取自己的指令和數(shù)據(jù)。沒有執(zhí)行特權(quán)指令的能力 系統(tǒng)的運行狀態(tài), 當進程狀態(tài)轉(zhuǎn)換的時候,有時系統(tǒng)的運行狀態(tài)會跟著變化.在系統(tǒng)狀態(tài)中,也存在著不同的進程狀態(tài). 6 什么是進程控制塊?它在進程控制中主要起什么作用?它是怎樣描述進程的動態(tài)性質(zhì)的? 控制進程的標志。 PCB 是進程組成中最關(guān)鍵的部分。每個進程有惟一的進程控制塊;操作系統(tǒng)根據(jù) PCB 對進程實施控 制和管理,進程的動態(tài)、并發(fā)等特征是利用 PCB 表現(xiàn)出來的;PCB 是進程存在的惟一標志。 PCB 中有表明進程狀態(tài)的信息:該

52、進程的狀態(tài)是運行態(tài)、就緒態(tài)還是阻塞態(tài),利用狀態(tài)信息來描述 進程的動態(tài)性質(zhì)。 7什么叫臨界資源和臨界區(qū)?進程進入臨界區(qū)的調(diào)度原則是什么? 臨界資源:同一時間只準一個進程使用的資源。硬件、軟件 臨界區(qū):進程訪問臨界資源期間所執(zhí)行的那段程序。 進程進入臨界區(qū)的調(diào)度原則是: 如果有若干進程要求進入空閑的臨界區(qū),一次僅允許一個進程進入。 任何時候,處于臨界區(qū)內(nèi)的進程不可多于一個。如已有進程進入自己的臨界區(qū),則其它所有試圖 進入臨界區(qū)的進程必須等待。 進入臨界區(qū)的進程要在有限時間內(nèi)退出,以便其它進程能及時進入自己的臨界區(qū)。 如果進程不能進入自己的臨界區(qū),則應讓出 CPU,避免進程出現(xiàn)“忙等”現(xiàn)象。 8什么

53、叫進程同步和互斥?舉例說明 進程同步是在幾個進程合作完成一項任務時,體現(xiàn)各進程相互連續(xù)相互協(xié)調(diào)的關(guān)系。 例如:A、B 兩個進程合作通過緩存區(qū)輸出數(shù)據(jù)。 我們把兩個以上進程不能同時訪問臨界區(qū)的工作規(guī)則稱為進程互斥。 兩個進程同時使用打印機 9P、V 操作中信號量 S,他們的數(shù)值表示什么意義?在操作前及操作后出現(xiàn) S=0,他們分別表示 什么意義?試分別說明之 S 的數(shù)值是判斷進程繼續(xù)運行或暫停等待的依據(jù)。 操作前 S=0,表示已有進程占用了臨界資源,進程不能使用,本進程需插入阻塞隊列等待操作后, 表明無進程 進入臨界區(qū),本進程可進入臨界區(qū)繼續(xù)運行。 10什么是死鎖?造成死鎖的根本原因是什么? 系統(tǒng)

54、中幾個進程無限期的等待永遠不會發(fā)生的條件,系統(tǒng)處于停滯狀態(tài) 系統(tǒng)資源不足;進程運行推進的順序不合適;資源分配不當之處 11出現(xiàn)死鎖的必要條件有哪些?分別扼要說明之 (1) 互斥條件 系統(tǒng)使用臨界資源 (2) 部分的分配條件 進程投入時不是一次性地申請所需全部資源,而是運行時按需要臨時動態(tài)的 申請 (3) 資源的循環(huán)等待條件 系統(tǒng)中的幾個進程形成循環(huán)地等待對方所占用的資源的關(guān)系 (4) 不可搶占條件 一個進程占用資源,未經(jīng)本進程釋放,其他進程不能強行剝奪。 12解決死鎖的途徑? 破壞形成死鎖的四個條件,打破循環(huán)等待資源的環(huán)路。 13死鎖預防的基本思想是什么? 破壞死鎖的四個必要條件的一個或多個

55、14死鎖避免的基本思想是什么? 資源動態(tài)分配過程中使用某種方法防止系統(tǒng)進入死鎖狀態(tài),銀行家算法 15簡述引起調(diào)度的原因? 缺乏資源, 外部中斷, 時間片到 16順序執(zhí)行和并發(fā)執(zhí)行的區(qū)別? 順序執(zhí)行是指在程序運行時將獨占系統(tǒng)資源,只有程序本身能改變系統(tǒng)資源狀態(tài)的程序執(zhí)行方式。 它有兩個 重要特點,程序的封閉性和再現(xiàn)性,系統(tǒng)資源的利用率非常低 并發(fā)執(zhí)行是指多道程序在執(zhí)行時間有重疊的程序運行方式。原來順序程序的兩個特點不再存在,它 能大大提 高處理器的利用率。 17設系統(tǒng)中只有一臺打印機,有三個用戶的程序在執(zhí)行過程中都要使用打印機輸出計算結(jié)果。設 每個用戶對應一個進程。問:這三個進程間有什么樣的制約

56、關(guān)系?試用 P,V 操作寫出這些進程使用打印 機的算法 18設有一臺計算機 ,有兩條 I/O 通道,分別接一臺卡片輸入機和一臺打印機??ㄆ瑱C把一疊卡片 逐一輸入到 緩沖區(qū) B1,加工處理后再搬到緩沖區(qū) B2 中,并在打印機上印出,問 (1) 系統(tǒng)要設幾個進程來完成這個任務?各自的工作是什么? (2) 這些進程間有什么樣的相互制約關(guān)系? (3) 用 P,V 寫出這些進程的同步算法 第三章第三章處理機調(diào)度與死鎖處理機調(diào)度與死鎖 選擇題選擇題 (1)假設有 5 個批處理作業(yè) J1,J5 幾乎同時到達系統(tǒng),它們的估計運行 時間為 10,6,2,4 和 8 分鐘它們的優(yōu)先級別為 3,5,2,1 和 4(

57、5 為最高優(yōu) 先級),若采用優(yōu)先級作業(yè)調(diào)度算法,假設忽略作業(yè)切換所用的時間,則平 均作業(yè)周轉(zhuǎn)時間為 A)6 分鐘 B)10 分鐘 C)20 分鐘 D)24 分鐘 (2)在 UNIX 文件系統(tǒng)中,若在根文件系統(tǒng)的某個子目錄上掛上其它的文件系 統(tǒng),可使用的命令是 A)mount B)more C)grep D)nice (3)在 UNIX 系統(tǒng)中,用于顯示當前目錄路徑名的命令是 A)cd B)pwd C)ps D)ls (4)在 UNIX 系統(tǒng)中,下列哪一個命令屬于目錄管理的常用命令? A)pwd B)pr C)ln D)find (5)若文件 A 的創(chuàng)建者希望對所有用戶(包括其自身)可讀寫文件但

58、不可執(zhí)行, 可用下列哪一個命令完成? A)chown 777 A B)chown 66 A C)chmod 777 A D)chmod 666 A (6)在采用 SPOOLing 技術(shù)的系統(tǒng)中,用戶作業(yè)的打印輸出結(jié)果首先被送到 A)磁盤固定區(qū)域 B)內(nèi)存固定區(qū)域 C)終端 D)打印機 (7)在批處理系統(tǒng)中,用戶的作業(yè)是由哪幾部分組成的? A)程序 B)程序+數(shù)據(jù)C)程序+作業(yè)說明書 D)程序+數(shù)據(jù)+作業(yè)說明書 (8)設有一組作業(yè),它們的提交時刻及運行時間如下表所示: 作業(yè)號提交時刻 運行時間(分鐘) 1 8:00 70 2 8:40 30 3 8:50 10 4 9:10 5 在單道方式下,采

59、用短作業(yè)優(yōu)先作業(yè)調(diào)度算法,作業(yè)的執(zhí)行順序為 A)1,4,3,2 B)1,3,4,2 C)4,3,2,1 D)4,1,2,3 (9)從供選擇的答案中,選出應填人下面敘述中?內(nèi)的最確切的解答,把相應編號 寫在答卷的對應欄內(nèi)。 在操作系統(tǒng)中,批處理方式下的作業(yè)調(diào)度是一種(高級調(diào)度)。 設有三個批處理作業(yè), 若對這三個批處理作業(yè)采用調(diào)試算法 S1,其執(zhí)行情況如下: 作業(yè)號 到達時間 開始執(zhí)行時間 執(zhí)行結(jié)束時間 1 6:00 6:00 8:00 2 6:10 8:00 9:00 3 6:25 9:00 9:25 若對這三個批處理作業(yè)采用調(diào)試算法 S2,其執(zhí)行情況如下: 作業(yè)號 到達時間 開始執(zhí)行時間 執(zhí)行結(jié)束時間 1 6:00 7:50 9:50 2 6:10 6:50 7:50 3 6:25 6:25 6:50 則調(diào)試算法 S1 屬于(先來先服務),調(diào)試算法 S2 屬于(最短作業(yè)優(yōu)先數(shù))。 通常把作業(yè)進入系統(tǒng)至最后完成的時間稱為該作業(yè)的周轉(zhuǎn)時間。在調(diào)試算法 S1 下, 作業(yè)平均周轉(zhuǎn)時間為(2.61)小時,在調(diào)度算法 S2 下,作業(yè)平均周轉(zhuǎn)時間(1.97)小時。 供選擇的答案 A: 低級調(diào)度 中級調(diào)度 高級調(diào)度 人工調(diào)度 B、C: 優(yōu)先數(shù)法 先來先服務算法 最短作業(yè)優(yōu)先法 資源搭配算法 最高響應比優(yōu)先算法 多隊列循環(huán)算法 D、E: 2.61 2.5 2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論