版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 計算機操作系統(tǒng)</b></p><p><b> 函授自學(xué)指導(dǎo)書</b></p><p><b> (專 科)</b></p><p><b> 賈 泂 </b></p><p><b> 2
2、005</b></p><p> 第一章 操作系統(tǒng)概述</p><p><b> 教學(xué)內(nèi)容</b></p><p><b> 1. 操作系統(tǒng)概況</b></p><p> 2. 操作系統(tǒng)的形成和發(fā)展</p><p> 3.操作系統(tǒng)的基本類型</p&
3、gt;<p> 4.操作系統(tǒng)的服務(wù)和功能</p><p><b> 5.操作系統(tǒng)的結(jié)構(gòu)</b></p><p><b> 教學(xué)要求</b></p><p> 了解操作系統(tǒng)的形成過程,建立起操作系統(tǒng)的整體概念;熟悉操作系統(tǒng)的基本類型和服務(wù)方式;掌握操作系統(tǒng)的定義、特征和功能。</p>&l
4、t;p><b> 自學(xué)要點</b></p><p> 操作系統(tǒng)在計算機系統(tǒng)中的作用;各類操作系統(tǒng)的特征,操作系統(tǒng)的功能及研究操作系統(tǒng)的幾種觀點。重點是操作系統(tǒng)的基本概念;操作系統(tǒng)的基本類型及特點。</p><p><b> 學(xué)時分配</b></p><p> 3學(xué)時(自學(xué)學(xué)時:6學(xué)時)</p>
5、<p> 1.1 操作系統(tǒng)概況</p><p> ??操作系統(tǒng)的虛擬機觀點</p><p> ?操作系統(tǒng)是添加在硬件上的第一層軟件,是對硬件功能的首次擴充和延伸。</p><p> ?軟件:系統(tǒng)軟件和應(yīng)用軟件。系統(tǒng)軟件用來管理計算機本身及應(yīng)用軟件;應(yīng)用軟件用來完成用戶所要求的實際任務(wù)。</p><p> ?硬件:指未配置任
6、何軟件的計算機。裸機又分為物理器件、微程序與機器語言三個層次。</p><p> ??操作系統(tǒng)的資源管理觀點</p><p> ?資源分硬件資源和軟件資源。</p><p> ?硬件資源是計算機硬件系統(tǒng)的總和,包括中央處理機、主/輔助存儲器、輸入/輸出設(shè)備等。</p><p> ?軟件資源是系統(tǒng)中各種程序和數(shù)據(jù)的總和,這些程序和數(shù)據(jù)均
7、以文件的形式保存在計算機系統(tǒng)中。</p><p> ??操作系統(tǒng)的用戶服務(wù)觀點</p><p> ?操作系統(tǒng)是用戶與計算機之間的一個接口。它為用戶提供了兩種使用操作系統(tǒng)的方式:命令方式、系統(tǒng)調(diào)用方式。</p><p> ?命令方式:是指操作系統(tǒng)提供了一組聯(lián)機,用戶通過鍵盤或鼠標(biāo)使用這些命令,并直接操縱計算機系統(tǒng)。</p><p> ?
8、系統(tǒng)調(diào)用方式:是指操作系統(tǒng)提供了一組系統(tǒng)調(diào)用,用戶可在自己的程序中通過調(diào)用來相應(yīng)的系統(tǒng)操縱計算機。</p><p><b> ??定義</b></p><p> ?操作系統(tǒng):是計算機系統(tǒng)中的一個系統(tǒng)軟件,用來管理和控制計算機系統(tǒng)中的軟硬件資源,合理地組織計算機工作流程,提供用戶和計算機之間的軟件接口,方便用戶使用計算機。</p><p>&
9、lt;b> ??操作系統(tǒng)目標(biāo)</b></p><p> ?目前存在著多種類型的操作系統(tǒng),不同類型的操作系統(tǒng)其目標(biāo)各有側(cè)重。但一般來說都包括:方便性、有效性、可擴充性和開放性。</p><p><b> ??操作系統(tǒng)的特征</b></p><p> ?并發(fā):指兩個或兩個以上事件在同一時間間隔內(nèi)發(fā)生。</p>
10、<p> ?共享:指系統(tǒng)中硬件和軟件資源可為多個用戶同時使用(互斥共享、同時訪問)</p><p> ?虛擬:指物理上的一個實體變成邏輯上的多個對應(yīng)物。</p><p> ?異步性:指內(nèi)存中的多個進程均按照各自獨立的、不可預(yù)知的速度向前推進。</p><p> 1.2 操作系統(tǒng)的形成和發(fā)展</p><p><b>
11、; ??操作系統(tǒng)的歷史</b></p><p> ?操作系統(tǒng)的發(fā)展經(jīng)歷了以下幾個階段:手工存在階段(無操作系統(tǒng))、脫機輸入輸出技術(shù)階段、批處理技術(shù)階段、多道程序設(shè)計技術(shù)階段。</p><p> 1.3 操作系統(tǒng)的基本類型</p><p><b> ??分類</b></p><p> ?最常用分類方法
12、(按照操作系統(tǒng)的用戶服務(wù)方式分)主要有:多道批處理系統(tǒng);分時系統(tǒng);實時系統(tǒng)。其它操作系統(tǒng)還包括:通用操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、并發(fā)操作系統(tǒng)、面向?qū)ο蟛僮飨到y(tǒng)。</p><p><b> ??多道批處理系統(tǒng)</b></p><p><b> ?運行方式(了解)</b></p><p> ?特征:多道性、無序性、調(diào)度性&l
13、t;/p><p> ?優(yōu)缺點:優(yōu)點:資源利用率高,系統(tǒng)吞吐量大。缺點:平均周轉(zhuǎn)時間長、無交互能力。</p><p> ?在設(shè)計批處理系統(tǒng)時,首先要考慮的是周轉(zhuǎn)時間和系統(tǒng)的吞吐量。</p><p><b> ??分時系統(tǒng)</b></p><p> ?實現(xiàn)基本方法;設(shè)立時間片</p><p>
14、?特性:多路性、獨立性、及時性、交互性。</p><p> ?響應(yīng)時間:指從終端用戶發(fā)出一條命令開始,到系統(tǒng)處理完這條命令并做出回答為止所需的最大時間間隔。</p><p> ?影響響應(yīng)時間的因素:系統(tǒng)開銷、用戶數(shù)目、時間片、信息對換量。</p><p> ?改善響應(yīng)時間的辦法:一種可行的辦法是減少信息對換量。而減少信息對換量可采用重入碼技術(shù)和虛擬存儲技術(shù)。&
15、lt;/p><p> ?設(shè)計分時操作系統(tǒng)時,首先要考慮的是交互性和響應(yīng)時間。</p><p><b> ??實時系統(tǒng)</b></p><p> ?定義:是指系統(tǒng)對特定輸入做出反應(yīng)速度足以控制發(fā)出實時信號的對象的一種操作系統(tǒng)。</p><p> ?實時系統(tǒng)的類型:1 實時控制系統(tǒng);2 實時信息處理系統(tǒng)</p>
16、;<p> ?特征:多路性、獨立性、及時性、交互性、高可靠性。</p><p> ?設(shè)計實時操作系統(tǒng)時,首先要考慮的是實時性和可靠性。</p><p><b> ??微機操作系統(tǒng)</b></p><p> ?單用戶單任務(wù)OS:只允許一個用戶上機、且只允許用戶程序作為一個任務(wù)運行。最具代表性的是CP/M和MS-DOS。<
17、;/p><p> ?單用戶多任務(wù)OS:只允許一個用戶上機、但允許將一個用戶程序分為若干個任務(wù),使它們并發(fā)執(zhí)行。最具代表性的是OS/2和MS-WINDOWS。</p><p> ?多用戶多任務(wù)OS:允許多個用戶通過各自的終端使用同一臺主機,共享主機的各類資源,同時用戶程序又可進一步分成幾個任務(wù),使它們并發(fā)執(zhí)行。最具代表性的是UNIX OS。</p><p> 1.4
18、 操作系統(tǒng)的服務(wù)與功能</p><p><b> ??操作系統(tǒng)的服務(wù)</b></p><p> ?操作系統(tǒng)公共服務(wù)類型:程序執(zhí)行、 I/O操作、文件系統(tǒng)管理、通信、資源分配、差錯處理</p><p> ?操作系統(tǒng)的服務(wù)方式:系統(tǒng)調(diào)用、系統(tǒng)程序。</p><p> ?系統(tǒng)調(diào)用的類型:進程管理、設(shè)備管理、文件管理、信
19、息維護和通訊五大類。</p><p><b> ??操作系統(tǒng)功能</b></p><p> ?從資源管理和用戶接口的觀點看,操作系統(tǒng)的基本功能為:①處理機管理;②存儲管理;③設(shè)備管理;④信息管理(文件系統(tǒng)管理);⑤用戶接口。其中硬件資源為處理機、存儲器和設(shè)備三類,軟件資源為信息或文件(程序和數(shù)據(jù)的通稱)。</p><p><b>
20、 ??用戶接口</b></p><p> ?命令接口:又分聯(lián)機命令接口:為聯(lián)機用戶提供的,由一組鍵盤命令和命令解釋程序組成;脫機命令接口:為批處理作業(yè)的用戶提供,由一組作業(yè)控制語言JCL(job control language)組成。</p><p> ?程序接口:是為用戶程序在運行過程中訪問系統(tǒng)資源而設(shè)定的,也是用戶取得操作系統(tǒng)服務(wù)的唯一途徑,由一組系統(tǒng)調(diào)用組成。&l
21、t;/p><p><b> ?圖形接口</b></p><p><b> ??處理機管理</b></p><p> ?處理機管理功能可歸結(jié)為進程管理,主要功能:進程控制;進程同步;進程通訊;進程調(diào)度。</p><p><b> ??存儲管理</b></p>&
22、lt;p> ?存儲管理應(yīng)具備的功能,為:內(nèi)存分配;內(nèi)存保護;地址映射;內(nèi)存擴充。</p><p><b> ??設(shè)備管理</b></p><p> ?設(shè)備管理應(yīng)具備的功能,為:緩沖管理;設(shè)備分配;設(shè)備處理;虛擬設(shè)備管理。</p><p><b> ??文件管理</b></p><p>
23、 ?文件管理的主要功能包括:文件存儲空間管理;目錄管理;文件讀寫管理;文件保護;文件系統(tǒng)的安全性;文件接口。</p><p> 1.5 操作系統(tǒng)結(jié)構(gòu)</p><p><b> ??分類</b></p><p> ?從操作系統(tǒng)的內(nèi)部結(jié)構(gòu)來看,操作系統(tǒng)可分為三種主要類型:整體式系統(tǒng)(無結(jié)構(gòu));層次式系統(tǒng);客戶/服務(wù)器系統(tǒng)。</p>
24、;<p><b> ??整體式結(jié)構(gòu)</b></p><p> ?整個系統(tǒng)是一堆過程的集合,每一過程都有一個定義好的接口,包括入口參數(shù)和返回值,過程間可以相互調(diào)用而不受約束,UNIX的系統(tǒng)核心層是典型的沒有層次的無結(jié)構(gòu)型。</p><p><b> ??層次式系統(tǒng)</b></p><p> ?按照操作系
25、統(tǒng)中模塊的功能和相互依存關(guān)系把它們劃分為若干個層次:</p><p> ?最底層:OS對象;</p><p> ?中間層:對對象進行管理和控制的軟件集合;</p><p> ?最高層:OS提供給用戶使用的用戶接口。</p><p> ??客戶/服務(wù)器系統(tǒng)</p><p> ?在客戶/服務(wù)器結(jié)構(gòu)中,需要把操作系
26、統(tǒng)的服務(wù)功能分為若干個服務(wù)器,而用戶進程則稱為客戶進程。操作系統(tǒng)由微內(nèi)核和核外服務(wù)器進程組成。微內(nèi)核提供最基本的、最必要的服務(wù),而OS的其他功能由運行在核外的服務(wù)器完成。</p><p> ?主要優(yōu)點:提高了系統(tǒng)的可靠性;適合于分布式系統(tǒng)中的應(yīng)用。</p><p><b> 練習(xí)題:</b></p><p> 1:下面8個系統(tǒng)中,必須是實
27、時操作系統(tǒng)的有——個。</p><p> 1 計算機輔助設(shè)計系統(tǒng);2 航空定票系統(tǒng);3 過程控制系統(tǒng);4 機器翻譯系統(tǒng);</p><p> 5 辦公自動化系統(tǒng);6 計算機激光照排系統(tǒng);7情報檢索系統(tǒng);8導(dǎo)彈的制導(dǎo)系統(tǒng)</p><p> 2:在分時系統(tǒng)中為使多個用戶能夠同時與系統(tǒng)交互,最關(guān)鍵的問題是__⑴__,當(dāng)用戶數(shù)目為100時,為保證響應(yīng)時間不超過2秒,此時
28、時間片最大應(yīng)為__⑵__。</p><p> ?、牛篈.計算機具有足夠高的運行速度 B.內(nèi)存容量應(yīng)足夠大 C.系統(tǒng)能及時地接收多個用戶輸入 D.能在一最短的時間內(nèi),使所有的用戶都能運行 E.能快速地進行內(nèi)外存交換 ⑵:A.10ms B.20ms C.50ms D.100ms E.200ms </p><p> 3:OS/2操作系統(tǒng)是由__⑴__開發(fā)的,它屬于__⑵__
29、類操作系統(tǒng);UNIX操作系統(tǒng)是由__⑶__推出的,它屬于__⑷__類操作系統(tǒng)。</p><p> ?、?、⑶:A.IBM公司 B.Microsoft公司 C.Microsoft和IBM聯(lián)合 D. Bell實驗室</p><p> ?、?、⑷:A.單用戶單任務(wù) B.單用戶多任務(wù) C.多處理機 D.多用戶多任務(wù) </p><p> 4:分時系統(tǒng)形成和發(fā)展的主要
30、動力是什么?</p><p> 5:操作系統(tǒng)中實現(xiàn)虛擬的關(guān)鍵技術(shù)是什么?并加以說明。</p><p> 6:設(shè)計實時環(huán)境的操作系統(tǒng)的主要困難是什么?</p><p> 7:一個分層結(jié)構(gòu)操作系統(tǒng)有:i裸機; 用戶; CPU調(diào)度和P、V操作; 文件管理; 作業(yè)管理; 內(nèi)存管理; 設(shè)備管理; 命令管理等組成,請按層次結(jié)構(gòu)的原則從內(nèi)到外將各部分重新排列。</p
31、><p> 8:操作系統(tǒng)是一種__⑴__。根據(jù)其服務(wù)對象,常用的單處理機操作系統(tǒng)可分為三種類型:允許多個用戶在其終端上同時交互方式使用計算機的操作系統(tǒng),稱為__⑵__;允許多用戶將若干個作業(yè)提交給計算機系統(tǒng)集中處理的操作系統(tǒng)稱為__⑶__;在__⑷__的控制下,計算機系統(tǒng)能及時處理由過程控制反饋的數(shù)據(jù),并做出響應(yīng);設(shè)計⑷時,首先應(yīng)考慮系統(tǒng)的__⑸__。</p><p> ?、? A.通用軟件
32、 B.應(yīng)用軟件 C.系統(tǒng)軟件 D.操作的軟件</p><p> ⑵-⑷: A.批處理操作系統(tǒng) B.分時操作系統(tǒng) C.實時操作系統(tǒng) D.微機操作系統(tǒng)</p><p> E.多處理機操作系統(tǒng) F.分布式操作系統(tǒng) G.網(wǎng)絡(luò)操作系統(tǒng)</p><p> ?、? A.可靠性和靈活性 B.實時性和可靠性 C.優(yōu)先權(quán)分配 D.時間片輪轉(zhuǎn) </p>
33、;<p> E.短作業(yè)優(yōu)先 F.時間片加分配</p><p> 9:操作系統(tǒng)的基本特征有哪些?</p><p> 10:什么是操作系統(tǒng)?</p><p> 11:操作系統(tǒng)有哪幾種基本類型?它們的主要特征有那些?</p><p> 12:分時系統(tǒng)的響應(yīng)時間是什么?它與哪些因素有關(guān)?</p><p&g
34、t; 13:實時系統(tǒng)可分哪幾類?</p><p> 14:多道程序和多重處理有何區(qū)別?</p><p><b> 參考答案:</b></p><p> 1解:1,2,3,7,8</p><p> 2解:1 D ;2 B</p><p> 3解:1 c ; 2 b; 3 d; 4 d&l
35、t;/p><p> 4答:主要動力是為了更好地滿足用戶的需要。主要表現(xiàn)在:1)縮短了作業(yè)的周轉(zhuǎn)時間;2)提供人機交互能力;3)多個用戶共享一臺計算機。</p><p> ?。ㄅ幚硐到y(tǒng)的主要推動力是不斷提高系統(tǒng)的資源利用率和提高系統(tǒng)的吞吐量。)</p><p> 5答:是分時技術(shù)。例如,將一臺物理處理機虛擬為多臺邏輯上的處理機,是靠多道程序分時地使用同一臺物理處理機
36、來實現(xiàn)的。微觀上,該處理機在每一時刻只運行一道程序,它們分時地運行;然而在宏觀上,系統(tǒng)中確有幾道程序在同時運行,從而給用戶的感覺是系統(tǒng)中同時同時有多臺處理機在為其中的每一道程序服務(wù),顯然用戶所感覺到的處理機并不實際存在。</p><p> 6答:是在實時環(huán)境規(guī)定的時間限額內(nèi)對用戶作出相應(yīng)的反應(yīng),否則就有可能導(dǎo)致系統(tǒng)的崩潰。因此,在設(shè)計時必須保證所采用的調(diào)度策略及相關(guān)技術(shù)不會使響應(yīng)時間超過實時環(huán)境所規(guī)定的時間限額
37、。</p><p> 7答:重新排列后順序為:裸機; CPU調(diào)度和P、V操作; 內(nèi)存管理; 作業(yè)管理; 設(shè)備管理; 文件管理; 命令管理。</p><p> 8 解:⑴C ⑵B ⑶A ⑷C ⑸B</p><p> 9 答:1 并發(fā):指兩個或兩個以上事件在同一時間間隔內(nèi)發(fā)生;2 共享:指系統(tǒng)中硬件和軟件資源可為多個用戶同時使用(互斥共享、同時訪問);3
38、 虛擬:指物理上的一個實體變成邏輯上的多個對應(yīng)物;4 異步性:指內(nèi)存中的多個進程均按照各自獨立的、不可預(yù)知的速度向前推進。10 答:操作系統(tǒng)是計算機系統(tǒng)中的一個系統(tǒng)軟件,用來管理和控制計算機系統(tǒng)中的軟硬件資源,合理地組織計算機工作流程,提供用戶和計算機之間的軟件接口,方便用戶使用計算機。</p><p> 11 答;操作系統(tǒng)的基本類型</p><p> 有:1 多道批處理系統(tǒng);2 分時
39、系統(tǒng);3 實時系統(tǒng)。其中多道批處理系統(tǒng)的特征:多道性、無序性、調(diào)度性;分時系統(tǒng)的特征:多路性、獨立性、及時性、交互性。實時系統(tǒng)的特征:多路性、獨立性、及時性、交互性、高可靠性。</p><p> 12 答:分時系統(tǒng)的響應(yīng)時間指從終端用戶發(fā)出一條命令開始,到系統(tǒng)處理完這條命令并做出回答為止所需的最大時間間隔。它與下列因素有:系統(tǒng)開銷、用戶數(shù)目、時間片、信息對換量。</p><p> 13
40、 答:實時系統(tǒng)的類型:1 實時控制系統(tǒng);2 實時信息處理系統(tǒng)</p><p> 14 答:多道程序multiprogramming是作業(yè)之間自動調(diào)度執(zhí)行、共享系統(tǒng)資源,并不是真正地同時執(zhí)行多個作業(yè);而多重處理multiprocessing系統(tǒng)配置多個CPU,能真正同時執(zhí)行多道程序。要有效使用多重處理,必須采用多道程序設(shè)計技術(shù),而多道程序設(shè)計原則上不一定要求多重處理系統(tǒng)的支持。</p><p&
41、gt;<b> 第二章 用戶接口</b></p><p><b> 教學(xué)內(nèi)容</b></p><p> 1. 作業(yè)的基本概念</p><p><b> 2. 用戶接口概述</b></p><p><b> 3.命令接口</b></p>
42、<p><b> 4.程序接口</b></p><p><b> 5.圖形接口</b></p><p><b> 教學(xué)要求</b></p><p> 了解作業(yè)的基本概念;了解操作系統(tǒng)提供給用戶的接口類型及各種接口的實現(xiàn)方法;熟悉命令接口在不同工作方式下的主要功能,作業(yè)和作業(yè)管理的
43、基本概念;掌握系統(tǒng)調(diào)用的定義及其執(zhí)行過程。</p><p><b> 自學(xué)要點</b></p><p> 重點是作業(yè)的基本概念和建立;用戶接口的概念和類型;系統(tǒng)調(diào)用的概念和過程</p><p><b> 學(xué)時分配</b></p><p> 3學(xué)時(自學(xué)學(xué)時:6學(xué)時)</p>&
44、lt;p> 2.1 作業(yè)的基本概念</p><p><b> ??作業(yè)</b></p><p> ?作業(yè)(Job)是用戶提交給計算機進行加工的一個任務(wù),由三部分組成,即程序、數(shù)據(jù)及作業(yè)說明書。通常一個作業(yè)又可分為若干個順序處理的作業(yè)步,其中每個作業(yè)步又可細分為若干個作業(yè)步任務(wù)。</p><p><b> ??作業(yè)的類型&
45、lt;/b></p><p> ?根據(jù)調(diào)度和控制的需要,可對作業(yè)進行分類。</p><p> ?從調(diào)度的角度,可把作業(yè)分成:①計算型作業(yè),指任務(wù)中包含大量的計算,而其I/O較少的作業(yè),如通常的科學(xué)計算;②I/O型作業(yè),要求少量的計算而需大量I/O的作業(yè),如通常的事務(wù)處理。</p><p> ?從控制的角度,可把作業(yè)分成:①脫機作業(yè),在整個作業(yè)的運行過程
46、中,只需根據(jù)作業(yè)說明書中的說明對作業(yè)進行控制,脫機作業(yè)通常是在批處理操作環(huán)境下運行,故也稱為批量型作業(yè);②聯(lián)機作業(yè),通常是用鍵盤命令直接控制作業(yè)的運行,聯(lián)機作業(yè)通常在分時操作環(huán)境下運行,故也稱為終端型作業(yè)。</p><p><b> ??作業(yè)的建立過程</b></p><p> ?一個作業(yè)的建立過程包括兩個子過程,即作業(yè)的輸入方式和JCB的建立。</p>
47、;<p> ?作業(yè)的輸入指將作業(yè)的程序、數(shù)據(jù)和作業(yè)說明書從輸入設(shè)備(如鍵盤)輸入到外存,并形成有關(guān)的初始信息。其輸入方式主要有:①聯(lián)機輸入方式②脫機輸入方式③直接耦合方式④SPOOLing系統(tǒng)⑤網(wǎng)絡(luò)輸入方式。</p><p><b> ??作業(yè)的組織</b></p><p> ?程序、數(shù)據(jù)和作業(yè)說明書。程序和數(shù)據(jù)完成用戶所要求的業(yè)務(wù)處理工作的具體內(nèi)
48、容,作業(yè)處理的說明是用戶要求計算機所作的步驟。</p><p> ??作業(yè)的狀態(tài)及其轉(zhuǎn)換</p><p> ?作業(yè)從提交給系統(tǒng)直到它完成后離開系統(tǒng)前的整個活動過程,可分為:提交狀態(tài);后備狀態(tài);運行狀態(tài);完成狀態(tài)。</p><p> 2.2 用戶接口概述</p><p> ?操作系統(tǒng)是用戶和計算機之間的接口,用戶通過操作系統(tǒng)的幫助可以快
49、速、有效和安全可靠地使用計算機各類資源。通常操作系統(tǒng)為用戶控制其作業(yè)提供命令接口、程序接口和圖形接口。</p><p><b> 2.3 命令接口</b></p><p><b> ??命令接口</b></p><p> ?命令接口是操作系統(tǒng)為用戶提供的各種操作命令,用戶利用它來組織作業(yè)的工作流程和控制作業(yè)的運行。類
50、型有:脫機命令接口;聯(lián)機命令接口。</p><p><b> ??脫機命令接口</b></p><p> ?脫機命令接口是操作系統(tǒng)為脫機工作方式下的用戶提供的一種接口。利用JCL語言將用戶對作業(yè)的控制要求寫成作業(yè)控制卡或作業(yè)說明書的形式。</p><p> ?JCL:作業(yè)控制語言,是一種用來表達申請作業(yè)控制意圖和步驟的語言。JCL的語句就
51、是作業(yè)控制命令。不同批處理提供不同的JCL。</p><p><b> ??聯(lián)機命令接口</b></p><p> ?聯(lián)機命令接口指用戶通過控制臺或終端,采用人—機會話的方式,直接控制作業(yè)的運行。又分為:1 鍵盤命令方式;2 命令文件方式。</p><p> ?鍵盤命令方式:是通過逐條輸入鍵盤命令語句,經(jīng)解釋后執(zhí)行,以控制作業(yè)運行的一種方
52、式,通常包括:1 系統(tǒng)管理;2 環(huán)境設(shè)置;3 編輯修改、編譯、連接和運行命令;4 文件管理命令;5 操作員專用命令(執(zhí)行權(quán)限管理);6 通信;7 資源要求。</p><p> ?命令文件方式:是用鍵盤命令語言編寫的一個鍵盤命令語言程序——命令文件。一旦建立命令文件后,系統(tǒng)可連續(xù)執(zhí)行若干條命令并且可以多次重復(fù)執(zhí)行。命令文件中可以進行參數(shù)傳遞,也可以嵌套的方式調(diào)用其他的命令文件。</p><p&
53、gt; 2.4 程序接口(系統(tǒng)調(diào)用)</p><p><b> ??程序接口</b></p><p> ?程序接口是OS專門為用戶程序設(shè)置的,也是用戶程序取得OS服務(wù)的唯一途徑,程序接口通常由各種各樣的系統(tǒng)調(diào)用所組成。</p><p><b> ??系統(tǒng)調(diào)用</b></p><p> ?系
54、統(tǒng)調(diào)用的基本概念:是OS提供給編程人員的唯一接口,是由操作系統(tǒng)中的一段程序來完成特定功能的,屬于一種特殊的過程調(diào)用。有的計算機系統(tǒng)中,把它稱為廣義指令。</p><p> ?調(diào)用的方式:采用訪管方式來實現(xiàn)。通過產(chǎn)生一個訪管中斷,使處理機由目態(tài)(用戶態(tài))轉(zhuǎn)為管態(tài)(系統(tǒng)態(tài))。(當(dāng)中央處理器處于目態(tài)時不允許執(zhí)行特權(quán)指令;而處于管態(tài)時可這些包括特權(quán)指令在內(nèi)的一切機器指令)</p><p> ?
55、常用的訪管指令的形式:SVC N</p><p> ??系統(tǒng)調(diào)用與一般過程調(diào)用的主要區(qū)別</p><p> ?系統(tǒng)調(diào)用本質(zhì)上一種過程調(diào)用,但它是一種特殊的過程調(diào)用,主要區(qū)別有:</p><p> ① 運行狀態(tài)不同:一般的過程調(diào)用,其調(diào)用和被調(diào)用過程或者都是子程序,或者都是系統(tǒng)程序,故運行在同一系統(tǒng)狀態(tài)下:系統(tǒng)態(tài)或用戶態(tài)。系統(tǒng)調(diào)用的調(diào)用過程是用戶程序,它運行在
56、用戶態(tài);其被調(diào)用過程是系統(tǒng)過程,運行在系統(tǒng)態(tài)下。</p><p> ?、?進入的方式不同:一般過程調(diào)用可以直接通過過程調(diào)用語句將控制轉(zhuǎn)移到被調(diào)用的過程;而執(zhí)行系統(tǒng)調(diào)用時,由于調(diào)用和被調(diào)用過程處于不同的系統(tǒng)狀態(tài),必須通過訪管中斷進入。</p><p> ?、?代碼層次不同:一般的過程調(diào)用中的被調(diào)用程序是用戶級程序,而系統(tǒng)調(diào)用是操作系統(tǒng)中的代碼程序,是系統(tǒng)級程序。</p><
57、;p> ??系統(tǒng)調(diào)用的實現(xiàn)過程</p><p> ?用戶在源程序中使用系統(tǒng)調(diào)用,給出系統(tǒng)調(diào)用名和函數(shù)后,即產(chǎn)生一條相應(yīng)的陷入指令,通過陷入處理機制調(diào)用服務(wù),引起處理機中斷,然后保護處理機現(xiàn)場,取系統(tǒng)調(diào)用功能號并尋找子程序入口,通過入口地址表來調(diào)用系統(tǒng)子程序。執(zhí)行完畢后,退出中斷,返回到用戶程序的斷點,恢復(fù)現(xiàn)場,繼續(xù)執(zhí)行用戶程序。</p><p><b> 2.5 圖形
58、接口</b></p><p><b> ??圖形用戶接口</b></p><p> ?圖形用戶接口的引入:主要是在使用命令接口時,要求用戶熟悉并記住系統(tǒng)所提供各種命令的名稱、功能和格式;此外還要求用戶按照規(guī)定的格式準(zhǔn)確的鍵入,這不僅不方便,而且需花費較多的時間;同時利用命令接口來進行文字處理、圖形的繪制和編輯也是極為不便的。</p>&l
59、t;p> ?圖形用戶接口元素:窗口;圖標(biāo);菜單;對話框</p><p> ?圖形用戶接口元素的基本操作:菜單操作;窗口操作;對話框操作。</p><p><b> 練習(xí)題:</b></p><p> 1:在分時系統(tǒng)中是否應(yīng)設(shè)置作業(yè)調(diào)度?為什么?實時系統(tǒng)呢?</p><p> 2:為什么說SPOOLING對
60、批處理(多道程序)是必需的?對分時系統(tǒng)也是需要的嗎? </p><p> 3:作業(yè)控制方式可分為兩種,它們是__⑴__、__⑵__。</p><p> ?、?⑵: A.命令方式 B.程序方式 C.聯(lián)機方式 D.脫機方式 E.后備方式 F.執(zhí)行方式 G.批量方式 H.調(diào)用方式</p><p> 4:用戶作業(yè)被SPOOLing系統(tǒng)輸入到外存時,稱此作
61、業(yè)處于__⑴__,在外存后備隊列上的作業(yè)處于__⑵__,作業(yè)在內(nèi)存處于__⑶__。</p><p> ?、?⑶: A.進入狀態(tài) B.運行狀態(tài) C.完成狀態(tài) D.后備狀態(tài) E.就緒狀態(tài) </p><p><b> 5:什么是作業(yè)?</b></p><p> 6:操作系統(tǒng)為用戶提供哪些接口?</p><p>
62、7:什么是系統(tǒng)調(diào)用?系統(tǒng)調(diào)用與一般過程的區(qū)別?</p><p> 8: 作業(yè)由哪幾部分組成?各有什么功能?</p><p> 9:簡述系統(tǒng)調(diào)用的實現(xiàn)過程?</p><p> 10:什么是作業(yè)?作業(yè)步?</p><p> 11:試述SPOOLING系統(tǒng)的工作原理?</p><p><b> 參考答案:
63、</b></p><p> 1答:分時系統(tǒng)最重要的目標(biāo)是實現(xiàn)人機交互,因此系統(tǒng)中所有的作業(yè)都是由用戶從鍵盤終端直接輸入到內(nèi)存,從而保證在一較短的時間內(nèi),各終端作業(yè)都能被處理。如果將終端作業(yè)先送到外存輸入井上再等待作業(yè)調(diào)度后,才將作業(yè)調(diào)入內(nèi)存,則既不能保證人機交互的及時性,又顯然是多此一舉,故在分時系統(tǒng)中沒有作業(yè)控制表,不需設(shè)置作業(yè)調(diào)度。</p><p> 在實時系統(tǒng)中,由于
64、實時任務(wù)往往是其實時性更高的任務(wù),它們一般常住內(nèi)存,因而也不需要作業(yè)調(diào)度。 </p><p> 2答:是。理由是它允許事先從輸入設(shè)備上讀入信息并將輸出文件暫存于輸出設(shè)備中,直到輸出設(shè)備準(zhǔn)備接收它們?yōu)橹?。由于許多作業(yè)可能同時到達,所以,CPU將一個作業(yè)的計算與其他作業(yè)的I/O操作并發(fā)執(zhí)行。分時系統(tǒng)則不需要。理由是每個事務(wù)通常較短,而且輸出信息一般直接輸出到打印設(shè)備上。</p><p>
65、3 解:⑴C ,⑵D</p><p> 4 解:⑴A ,⑵D ,⑶B</p><p> 5 答:作業(yè)(Job)是用戶提交給計算機進行加工的一個任務(wù),由三部分組成,即程序、數(shù)據(jù)及作業(yè)說明書。</p><p> 6 答:命令接口(又分脫機命令接口;聯(lián)機命令接口);程序接口(即系統(tǒng)調(diào)用)、圖形接口。</p><p> 7答:系統(tǒng)調(diào)用的基本概
66、念:是OS提供給編程人員的唯一接口,是由操作系統(tǒng)中的一段程序來完成特定功能的,屬于一種特殊的過程調(diào)用。主要區(qū)別:①運行狀態(tài)不同:一般的過程調(diào)用,其調(diào)用和被調(diào)用過程或者都是子程序,或者都是系統(tǒng)程序,故運行在同一系統(tǒng)狀態(tài)下:系統(tǒng)態(tài)或用戶態(tài)。系統(tǒng)調(diào)用的調(diào)用過程是用戶程序,它運行在用戶態(tài);其被調(diào)用過程是系統(tǒng)過程,運行在系統(tǒng)態(tài)下。②進入的方式不同:一般過程調(diào)用可以直接通過過程調(diào)用語句將控制轉(zhuǎn)移到被調(diào)用的過程;而執(zhí)行系統(tǒng)調(diào)用時,由于調(diào)用和被調(diào)用過程
67、處于不同的系統(tǒng)狀態(tài),必須通過訪管中斷進入。③代碼層次不同:一般的過程調(diào)用中的被調(diào)用程序是用戶級程序,而系統(tǒng)調(diào)用是操作系統(tǒng)中的代碼程序,是系統(tǒng)級程序。</p><p> 8 答:程序、數(shù)據(jù)和作業(yè)說明書。程序和數(shù)據(jù)完成用戶所要求的業(yè)務(wù)處理工作的具體內(nèi)容,作業(yè)處理的說明是用戶要求計算機所作的步驟。</p><p> 9 答:用戶在源程序中使用系統(tǒng)調(diào)用,給出系統(tǒng)調(diào)用名和函數(shù)后,即產(chǎn)生一條相應(yīng)的
68、陷入指令,通過陷入處理機制調(diào)用服務(wù),引起處理機中斷,然后保護處理機現(xiàn)場,取系統(tǒng)調(diào)用功能號并尋找子程序入口,通過入口地址表來調(diào)用系統(tǒng)子程序。執(zhí)行完畢后,退出中斷,返回到用戶程序的斷點,恢復(fù)現(xiàn)場,繼續(xù)執(zhí)行用戶程序。</p><p> 10答:作業(yè)是用戶提交給計算機進行加工的一個任務(wù),由三部分組成,即程序、數(shù)據(jù)及作業(yè)說明書。作業(yè)由不同順序相連的作業(yè)步組成。作業(yè)步是在一個作業(yè)的處理過程中,計算機所做的相對獨立的工作。&
69、lt;/p><p> 11答:當(dāng)用戶提交一批作業(yè)后,操作員鍵入“預(yù)輸入命令”啟動預(yù)輸入程序工作,預(yù)輸入程序啟動輸入機讀出作業(yè)信息,并把它們存放到輸入井中。當(dāng)主存儲器可以裝入作業(yè)時就從輸入井中選擇若干作業(yè)裝入主存儲器。被裝入主存儲器中的作業(yè)在執(zhí)行中可請求井管理程序從輸出井讀需處理的信息或把處理結(jié)果寫到輸出井中。緩輸出程序利用處理器空閑時間把作業(yè)執(zhí)行結(jié)果在打印機上輸出。</p><p><
70、b> 第三章 進程管理</b></p><p><b> 教學(xué)內(nèi)容</b></p><p> 1. 進程的基本概念</p><p><b> 2. 進程的實現(xiàn)</b></p><p><b> 3.進程控制</b></p><p&
71、gt; 4.進程的同步與互斥</p><p> 5.利用信號量機制解決經(jīng)典進程同步問題</p><p><b> 6.進程通信</b></p><p><b> 7.線程的概念</b></p><p><b> 教學(xué)要求</b></p><p>
72、; 了解引入進程的原因,進程控制的方法;熟悉進程的基本狀態(tài)及變遷,進程控制塊和組織,信號量和P、V原語,進程通信的類型和方法;掌握用信號量機制解決各種互斥同步問題的方法。</p><p><b> 自學(xué)要點</b></p><p> 進程的基本概念、描述、基本狀態(tài)及其轉(zhuǎn)換;原語及其執(zhí)行特點,進程控制原語的工作流程;臨界區(qū)、信號量并發(fā)進程間的制約方式及原因。重點為
73、信號量和P、V原語,并能解決一些各種同步互斥以及前趨圖等實際問題。</p><p><b> 學(xué)時分配</b></p><p> 9學(xué)時(自學(xué)學(xué)時:18學(xué)時)</p><p> 3.1 進程的基本概念</p><p><b> ??進程的引入</b></p><p>
74、<b> ?、?程序的順序執(zhí)行</b></p><p> ?程序的順序執(zhí)行指一個具有獨立功能的程序獨占處理機直到得到最終結(jié)果的過程。具有:順序性、封閉性和可再現(xiàn)性。</p><p><b> ?、?程序的并發(fā)執(zhí)行</b></p><p> ?程序的并發(fā)執(zhí)行指一組在邏輯上相互獨立的程序或程序段在執(zhí)行過程中其執(zhí)行時間在客觀
75、上互相重疊。程序的并發(fā)執(zhí)行增強了計算機系統(tǒng)的處理能力和提高了資源的利用率。具有:間斷性、失去了封閉性及不可再現(xiàn)性。</p><p><b> 例1:</b></p><p><b> Int n=0</b></p><p><b> 程序 A</b></p><p>&
76、lt;b> 條件為真</b></p><p><b> 1 n=n+1;</b></p><p><b> 程序A的其余部分</b></p><p><b> 程序B</b></p><p><b> 條件為真</b><
77、/p><p> 1 print(n);</p><p><b> 2 n=0;</b></p><p><b> 程序B的其余部分</b></p><p> 討論可能出現(xiàn)的結(jié)果(三種情況:A1,B1,B2; B1,A1,B2; B1,B2,A1)</p><p>
78、 ??程序并發(fā)執(zhí)行的Bernstein條件</p><p> ?定義有關(guān)程序的讀集和寫集</p><p> R(Pi)={a1,a2,…,am},用來表示程序Pi在執(zhí)行期間所需引用的變量集合,稱為Pi的讀集。</p><p> W(Pi)={a1,a2,…,am},用來表示程序Pi在執(zhí)行期間所需改變的變量集合,稱為Pi的寫集。</p><
79、p> ?Bernstein條件:若兩個程序P1和P2能滿足下述條件, R(P1)∩W(P2)UR(P2)∩W(P1)UW(P1)∩W(P2)={} 它們便能并發(fā)執(zhí)行,否則不能。</p><p><b> 例2:</b></p><p><b> 有四條語句:</b></p><p> S1: a=x+y&l
80、t;/p><p> S2: b=z+1</p><p> S3: c=a-b</p><p> S4: w=c+1</p><p> R(s1)={x,y},W(S1)={a}</p><p> R(s2)={z},W(S2)=</p><p> R(s3)={a,b},W(
81、S3)={c}</p><p> R(s4)={c},W(S4)={w}</p><p> S1和S2能滿足Bernstein條件,所以能并發(fā)執(zhí)行;而對于S1和S3不能滿足Bernstein條件,因為R(S3)∩W(S1)={a},所以不能并發(fā)執(zhí)行。同理,S2和S3,S3和S4也不能并發(fā)執(zhí)行。</p><p><b> 前趨圖為:</b>
82、</p><p><b> S1 </b></p><p><b> ↘ </b></p><p><b> S3 → S4</b></p><p><b> ↗</b></p><p><b> S2 &
83、lt;/b></p><p><b> ??前趨圖</b></p><p> ?前趨圖是一個有向無循環(huán)圖,圖中每個結(jié)點可表示一個語句、一個程序段或一個進程,結(jié)點間的有向邊表示結(jié)點之間的前趨關(guān)系。</p><p> ?幾個概念:1 直接前趨;2 直接后繼;3 初始結(jié)點;4 終止結(jié)點 </p><p> ??進
84、程的定義和特征</p><p><b> ??進程的定義</b></p><p> ?進程的概念是60年代初期,首先在MIT的Multics系統(tǒng)中引入的,進程的定義有很多種。其中一種為進程是可并發(fā)執(zhí)行的程序在一個數(shù)據(jù)集合上的運行過程。</p><p><b> ??進程的特征</b></p><p
85、> ?進程具有五個基本特征,而程序則沒有。具體為:</p><p> ① 動態(tài)性。進程的實質(zhì)是程序的一次執(zhí)行過程,因此動態(tài)性是進程的最基本特征。它還表現(xiàn)為有生命周期的,即由創(chuàng)建而產(chǎn)生,有調(diào)度而執(zhí)行,由撤消而消亡。而程序只是一組有序指令的集合,是靜態(tài)的。</p><p> ?、?并發(fā)性。指多個進程能在一段時間內(nèi)同時運行,并發(fā)性是進程的重要特性。引入進程的目的也正是為了使其程序能和
86、其它進程的程序并發(fā)執(zhí)行。</p><p> ③ 獨立性。指進程是一個能獨立運行、獨立分配資源和獨立調(diào)度的基本單位,凡未建立進程的程序,都不能作為一個獨立的單位參加運行。</p><p> ④ 異步性。指進程按各自獨立的、不可預(yù)知的速度向前推進,即按異步的方式運行。</p><p> 結(jié)構(gòu)特征。從結(jié)構(gòu)上看,進程是由程序段、數(shù)據(jù)段及進程控制塊(PCB)三部分組成
87、,這也是進程的靜態(tài)描述。PCB是操作系統(tǒng)中最重要的數(shù)據(jù)結(jié)構(gòu),它存放了操作系統(tǒng)所需的、用于描述進程情況和控制進程運行所需的全部信息,是進程存在的唯一標(biāo)志。</p><p> ??作業(yè)和進程的關(guān)系</p><p> ?、?作業(yè)是用戶向計算機提交任務(wù)的任務(wù)實體。在用戶向計算機提交作業(yè)之后,系統(tǒng)將它放入外存中的作業(yè)等待隊列中等待執(zhí)行;而進程則是完成用戶任務(wù)的執(zhí)行實體,是向系統(tǒng)申請分配資源的基本
88、單位。</p><p> ?、?一個作業(yè)可由多個進程組成,且必須至少由一個進程組成,反之不然。</p><p> ③ 作業(yè)的概念主要用在批處理系統(tǒng)中,而進程的概念則用在幾乎所有的多道系統(tǒng)中。</p><p> ??進程的基本狀態(tài)及其轉(zhuǎn)換</p><p> ?由進程運行的間斷性,決定了進程至少具有下述三種狀態(tài):</p>&l
89、t;p> ?、?就緒狀態(tài)。當(dāng)進程已分配到除CPU以外的所有必要資源后,只要能再獲得處理機,便能立即執(zhí)行所處的狀態(tài)。一個系統(tǒng)中,可以有多個進程同時處于就緒狀態(tài),通常將它們排成一個隊列,稱為就緒隊列。</p><p> ② 執(zhí)行狀態(tài)。指進程已獲得處理機,其程序正在執(zhí)行。在單處理機系統(tǒng)中,只能有一個進程處于執(zhí)行狀態(tài)。</p><p> ?、?等待(阻塞)狀態(tài)。進程因等待某事件而暫停執(zhí)行時
90、的所處的狀態(tài)。通常將處于等待狀態(tài)的進程排成一個隊列,稱為等待隊列。</p><p> ?進程狀態(tài)的轉(zhuǎn)換及原因</p><p> ?、?就緒→執(zhí)行:調(diào)度;</p><p> ?、?執(zhí)行→等待:等待某個事件發(fā)生而睡眠;</p><p> ?、?等待→就緒:因等待的時間發(fā)生而喚醒;</p><p> ?、?執(zhí)行→就緒:時間
91、片用完。</p><p> ??新狀態(tài)和終止?fàn)顟B(tài)</p><p> ?新(New)狀態(tài):是一個進程剛剛建立,但還未將它送入就緒隊列時的狀態(tài))。</p><p> ?終止(Terminated)狀態(tài):當(dāng)一個進程已經(jīng)正常結(jié)束或異常結(jié)束,OS已將它從就緒隊列中移出,但尚未將它撤消時的狀態(tài)。</p><p> ?新→就緒狀態(tài):當(dāng)就緒進程能夠接
92、納新進程時,OS就把處于新狀態(tài)的進程移入就緒隊列。</p><p> ?執(zhí)行→終止?fàn)顟B(tài):當(dāng)一個進程已經(jīng)完成或發(fā)生某事件(地址越界等)而異常終止時,進程將由執(zhí)行轉(zhuǎn)為終止?fàn)顟B(tài)。</p><p><b> 3.2 進程的實現(xiàn)</b></p><p><b> ??進程的結(jié)構(gòu)描述</b></p><p&g
93、t; ?進程由三部分組成,即PCB、有關(guān)程序段和該程序段對其進行操作的數(shù)據(jù)結(jié)構(gòu)集。各部分的作用:</p><p> ?、?進程控制塊:用于描述進程情況及控制進程運行所需的全部信息。 </p><p> ?、?程序段:是進程中能被進程調(diào)度程序在CPU上執(zhí)行的程序代碼段。</p>
94、<p> ③ 數(shù)據(jù)段:一個進程的數(shù)據(jù)段,可以是進程對應(yīng)的程序加工處理的原始數(shù)據(jù),也可以是程序執(zhí)行后產(chǎn)生的中間或最終數(shù)據(jù)。</p><p><b> ??進程控制塊</b></p><p> ?進程控制塊PCB:是OS中最重要的數(shù)據(jù)結(jié)構(gòu),用于描述進程情況及控制進程運行所需的全部信息。系統(tǒng)根據(jù)PCB感知進程的存在和通過PCB中包含的各項變量的變化,掌握
95、進程所處的狀態(tài)以達到控制進程活動的目的,是進程存在的唯一標(biāo)志。其基本內(nèi)容是:有關(guān)進程的描述信息;控制信息;資源管理信息;CPU現(xiàn)場保護結(jié)構(gòu)。</p><p> ?PCB是有一定的生命期的。在創(chuàng)建一個進程時,應(yīng)先創(chuàng)建PCB;然后才能根據(jù)PCB的信息對進程管理和控制;進程結(jié)束時,回收PCB,進程也隨之消亡。在一個系統(tǒng)中,系統(tǒng)進程加上用戶進程,進程數(shù)可達數(shù)十百個,為了有效的管理,應(yīng)將它們組織起來。常用的組織方式有:鏈
96、接方式;索引方式。</p><p><b> 3.3 進程控制</b></p><p><b> ??進程控制機構(gòu)</b></p><p> ?進程控制主要任務(wù):對進程生命期控制及實現(xiàn)進程狀態(tài)的轉(zhuǎn)換,是由操作系統(tǒng)內(nèi)核中相應(yīng)程序?qū)崿F(xiàn)的。</p><p> ?處理機的執(zhí)行狀態(tài):系統(tǒng)態(tài)、用戶態(tài)。系
97、統(tǒng)態(tài)(核心態(tài)或管態(tài)),具有較高的特權(quán),能執(zhí)行一切硬件指令,訪問所有寄存器和內(nèi)存儲器。用戶態(tài)(目態(tài)),具有較低特權(quán)的執(zhí)行狀態(tài),只能執(zhí)行規(guī)定的指令,訪問指定的寄存器和內(nèi)存儲器。</p><p> ?操作系統(tǒng)內(nèi)核:OS的內(nèi)核通常運行在系統(tǒng)態(tài),是計算機硬件擴充的第一層軟件,主要是一些與硬件密切相關(guān)的模塊,常駐內(nèi)存。內(nèi)核的功能:1支撐功能;中斷處理、時鐘管理、原語操作。2資源管理功能:進程管理、存儲器管理、設(shè)備管理。&l
98、t;/p><p> ?原語:是OS系統(tǒng)內(nèi)核中由若干條指令構(gòu)成,用于完成特定功能的一個過程。</p><p> ?與一般過程的區(qū)別:它們是“原子操作”。原子操作:一個操作中的所有動作,要么全做,要么全不做。即是一個不可分割的操作,是不可中斷的。</p><p><b> ??進程控制原語</b></p><p> 是對
99、進程生命期控制和進程狀態(tài)轉(zhuǎn)換的原語,目的是達到多進程高效率并發(fā)執(zhí)行和協(xié)調(diào)、實現(xiàn)資源共享。主要有:創(chuàng)建原語;撤消原語;阻塞原語;喚醒原語。</p><p><b> ??進程創(chuàng)建原語</b></p><p> ?創(chuàng)建方式:由系統(tǒng)程序模塊統(tǒng)一創(chuàng)建;由父進程創(chuàng)建。</p><p> ?進程圖:用于描述進程家族關(guān)系的有向樹。(了解父進程、子進程、
100、祖父進程、祖先等概念)</p><p> ?引起創(chuàng)建進程的典型事件:1用戶登錄;2作業(yè)調(diào)度;3提供服務(wù);4應(yīng)用請求;</p><p><b> ?進程創(chuàng)建的步驟:</b></p><p><b> 1申請空白PCB;</b></p><p> 2為新進程分配資源;</p>&l
101、t;p><b> 3初始化PCB;</b></p><p> 4將新進程插入就緒隊列;</p><p> 5將新進程插入進程家族或進程鏈。</p><p><b> ??進程撤消原語</b></p><p> ?引起進程撤消的事件:1正常結(jié)束;2異常結(jié)束;(指在進程運行期間,由于出現(xiàn)
102、某些錯誤和故障迫使進程終止,如越界錯誤、I/O故障等)3外界干預(yù);(指進程應(yīng)外界的請求而終止運行,這些干預(yù)有:操作員或OS干預(yù);父進程請求;父進程終止)</p><p><b> ?進程撤消過程:</b></p><p> 1根據(jù)被撤消進程的標(biāo)識符,從PCB集合中檢索出該進程的PCB,讀出其狀態(tài);</p><p> 2若為執(zhí)行狀態(tài),應(yīng)立即
103、終止其執(zhí)行,并在其撤消后應(yīng)重新調(diào)度,選擇一新進程,把處理機分配給它;</p><p> 3若該進程有子孫進程,還應(yīng)將其所有的子孫進程預(yù)以撤消,以防成為不可控;</p><p> 4將該進程全部資源,歸還父進程或系統(tǒng);</p><p> 5釋放撤消進程的PCB結(jié)構(gòu)本身。</p><p> ??進程阻塞和喚醒原語</p>&
104、lt;p> ?引起進程阻塞和喚醒的事件:1請求系統(tǒng)服務(wù);2啟動某種操作;3新數(shù)據(jù)尚未到達;4無新工作可做;</p><p> ?Block原語和Wakeup原語是一對作用剛好相反的原語。一般來說,如果某進程調(diào)用了阻塞原語,則必須在與之合作的另一進程或相關(guān)進程中,調(diào)用喚醒原語;否則被阻塞進程將會因不能被喚醒而長久處于阻塞狀態(tài),從而再無機會運行。</p><p> ?進程阻塞過程:
105、(這是進程自身的一種主動行為)</p><p> 1因進程處于執(zhí)行狀態(tài),故應(yīng)先中斷處理機和保存該進程的CPU現(xiàn)場;</p><p> 2將進程的狀態(tài)有“執(zhí)行”改為“阻塞”;</p><p> 3將阻塞進程插入到阻塞(等待)隊列;(若系統(tǒng)中設(shè)置了因不同事件而阻塞的多個阻塞隊列,則應(yīng)將進程插到具有相同事件的阻塞隊列)</p><p> 4
106、轉(zhuǎn)進程調(diào)度;(防止處理機空轉(zhuǎn),而出現(xiàn)資源浪費)</p><p><b> ?進程喚醒過程:</b></p><p> 1從阻塞(等待)隊列中摘下需被喚醒的進程;</p><p> 2將其PCB的現(xiàn)行狀態(tài),由阻塞改為就緒;</p><p> 3并將該進程插入到就緒隊列;</p><p>
107、4轉(zhuǎn)進程調(diào)度或返回;</p><p> 3.4 進程的同步與互斥</p><p><b> ??主要任務(wù)</b></p><p> ?進程的同步和互斥機制的主要任務(wù):控制并發(fā)執(zhí)行的諸進程之間能有效地共享和相互協(xié)作,同時使并發(fā)執(zhí)行的程序仍具有可再現(xiàn)性。</p><p><b> ??進程互斥</b&
108、gt;</p><p> ?并發(fā)系統(tǒng)中諸進程由于資源共享、進程合作,而產(chǎn)生進程之間的相互制約;又因共享資源的方式不同,而導(dǎo)致兩種不同的制約關(guān)系:</p><p> 間接相互制約。這種制約主要源于資源共享(進程互斥);</p><p> 直接相互制約。這種制約主要源于進程合作(進程同步)。</p><p> ?臨界資源:一次僅允許一個進
109、程訪問的資源。</p><p> ?臨界區(qū):每個進程中訪問臨界資源的那段代碼。(不允許多個并發(fā)進程交叉執(zhí)行的一段程序)</p><p> ?進程互斥:不允許兩個以上的共享該資源的并發(fā)進程同時進入臨界區(qū)。</p><p> ?同步機制的準(zhǔn)則:空閑讓進;忙則等待;讓權(quán)等待;有限等待;</p><p><b> 例3:</b
110、></p><p> ?。ㄅc時間有關(guān)的錯誤)二個進程P1,P2共享變量 count(R1,R2是處理機中的寄存器):</p><p> P1:①R1=count; </p><p> ?、赗1=R1+1; </p><p> ③count=R1;</p><p> P2::①R2=count
111、; </p><p> ?、赗2=R2+1; </p><p> ?、踓ount=R2; </p><p> 結(jié)果應(yīng)該count 增加了2,正確。</p><p> 但若執(zhí)行順序按P1①,P2①,P1②,P1③,P2②,P2③,雖然P1,P2各自對count進行了加1操作,但最后結(jié)果count僅增加了1。</p><
112、p><b> ??進程同步</b></p><p> ?定義:指多個合作進程為了完成同一個任務(wù),它們在執(zhí)行速度上必須相互協(xié)調(diào),即一個進程的執(zhí)行依賴于另一個進程的消息,當(dāng)沒有消息時要等待,直到消息到達被喚醒。</p><p> ?合作進程指具有同步關(guān)系的一組并發(fā)進程,合作進程間互相發(fā)送的信號稱為消息或事件。</p><p> ?進程
113、同步和互斥間的關(guān)系</p><p> ?同步互斥相似處:進程的互斥實際上是進程同步的一種特殊情況;進程的互斥和同步統(tǒng)稱為進程同步。</p><p> ?差別:進程互斥是進程間共享資源的使用權(quán),這種競爭沒有固定的必然聯(lián)系,哪個進程競爭到使用權(quán)就歸那個進程使用,直到不需要使用時在歸還;而進程同步則涉及共享資源的并發(fā)進程間有一種必然的聯(lián)系,當(dāng)進程必須同步時,即使無進程在使用共享資源時,那么尚
114、未得到同步消息的進程也不能去使用這個資源。</p><p> ??利用信號量機制解決問題</p><p> ?信號量機制:由Diskstra提出的一種解決進程的同步與互斥的工具。</p><p> ?建立一個信號量必須經(jīng)過說明所代表的意義,賦初值以及建立相應(yīng)的數(shù)據(jù)結(jié)構(gòu)以便指向那些等待使用該臨界區(qū)的進程。</p><p> ?信號量的值
115、只能通過P、V原語操作來改變。</p><p> ?記錄型的信號量機制:是一個記錄型的數(shù)據(jù)結(jié)構(gòu),包含兩個數(shù)據(jù)項,一是記數(shù)值域,另一是等待該信號量的進程隊列首指針域。描述如下:</p><p> typedef struct semaphore</p><p><b> {</b></p><p> int va
116、lue;</p><p><b> PCB *p;</b></p><p><b> } </b></p><p> ??P(s)和V(s)操作原語</p><p><b> void v(s)</b></p><p> struct sema
117、phore s;</p><p><b> {</b></p><p> s.value=s.value+1;</p><p> if (s.value<=0) wakeup(s.p);</p><p><b> }</b></p><p><b>
118、 void P(s)</b></p><p> struct semaphore s;</p><p><b> {</b></p><p> s.value=s.value-1;</p><p> if (s.value<0) block(s.p);</p><p>&
119、lt;b> }</b></p><p> ??s.value的物理含義</p><p> ?當(dāng)s.value>0數(shù)值時,表示某類可用資源的數(shù)量。而當(dāng)s.value<0數(shù)值時,表示該類資源已分配完。若有進程請求該類資源,則被阻塞,其絕對值等于等待該類資源的進程數(shù)。 </p><p> ?每次的P(s)操作,意味著進程請求分配該類
120、資源的一個單位資源。相反,執(zhí)行一次V(s) 操作意味著進程釋放相應(yīng)資源的一個單位資源。當(dāng)值小于等于0時,表明有進程被阻塞,需要喚醒。</p><p> ??用信號量解題的關(guān)鍵</p><p><b> ?1 信號量的設(shè)置</b></p><p> ?2 給信號量賦初值(常用的互斥和同步信號量值的大?。?lt;/p><p&g
121、t; ?3 P、V操作安排的位置(其中,P的順序不能顛倒,V的順序任意)</p><p> ??用信號量機制解決前趨圖問題</p><p> ?方法:若圖中存在結(jié)點S1指向結(jié)點S2的有向邊,表示進程P1中的程序段S1應(yīng)該先執(zhí)行,而進程P2中的程序段S2后執(zhí)行。設(shè)置一個信號量s,初值為0,將V(s)放在S1后面,而在S2前面先執(zhí)行P(s)。</p><p>
122、 ?進程P1的語句序列為:S1;V(s) </p><p> ?進程P2的語句序列為:P(s);S2 </p><p> 例4:(利用信號量機制解決前趨圖問題)</p><p> 具有8個結(jié)點的前趨圖。例子中的前趨圖中共有有向邊10條,可設(shè)10個信號量,初值均為0;有8個結(jié)點,可設(shè)計成8個并發(fā)進程,具體描述如下:</p><p> s
123、truct semaphore a,b,c,d,e,f,g,h,I,j=0,0,0,0,0,0,0,0,0,0</p><p><b> cobegin </b></p><p> {a1;V(a);V(b);V(c);}</p><p> {P(a);S2;V(d);}</p><p> {P(b);S3;V(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算機操作系統(tǒng)教案
- 計算機操作系統(tǒng)試題
- 計算機操作系統(tǒng)題庫
- 計算機操作系統(tǒng)作業(yè)2(《計算機操作系統(tǒng)》4-5章內(nèi)容)
- 計算機操作系統(tǒng)原理分析
- “計算機操作系統(tǒng)”課程輔導(dǎo)
- 《計算機操作系統(tǒng)》試卷(1)
- 計算機操作系統(tǒng)及答案
- 計算機操作系統(tǒng)試題6
- 計算機操作系統(tǒng)課后答案
- 計算機操作系統(tǒng)應(yīng)用教案
- 計算機操作系統(tǒng) 考試習(xí)題
- 《計算機操作系統(tǒng)》ppt課件
- 銀行計算機常用操作系統(tǒng)
- 計算機操作系統(tǒng) 考試習(xí)題
- 《計算機操作系統(tǒng)》試卷(9)
- 計算機專業(yè)操作系統(tǒng)試題
- 《計算機操作系統(tǒng)》試卷 (2)
- 計算機操作系統(tǒng)論文—微內(nèi)核操作系統(tǒng)
- 計算機操作系統(tǒng)試題庫
評論
0/150
提交評論