《計(jì)算機(jī)軟件基礎(chǔ)》操作系統(tǒng)修改_第1頁
《計(jì)算機(jī)軟件基礎(chǔ)》操作系統(tǒng)修改_第2頁
《計(jì)算機(jī)軟件基礎(chǔ)》操作系統(tǒng)修改_第3頁
《計(jì)算機(jī)軟件基礎(chǔ)》操作系統(tǒng)修改_第4頁
《計(jì)算機(jī)軟件基礎(chǔ)》操作系統(tǒng)修改_第5頁
已閱讀5頁,還剩90頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第4章 操作系統(tǒng)4.1 4.1 操作系統(tǒng)的概念操作系統(tǒng)的概念4.2 4.2 多道程序設(shè)計(jì)多道程序設(shè)計(jì)4.3 4.3 存儲(chǔ)空間的組織存儲(chǔ)空間的組織4.1 4.1 操作系統(tǒng)的概念操作系統(tǒng)的概念4.1.1 4.1.1 操作系統(tǒng)的功能與任務(wù)操作系統(tǒng)的功能與任務(wù)4.1.2 4.1.2 操作系統(tǒng)的發(fā)展過程操作系統(tǒng)的發(fā)展過程4.1.3 4.1.3 操作系統(tǒng)的分類操作系統(tǒng)的分類(1) (1) 管理系統(tǒng)資源。包括對(duì)管理系統(tǒng)資源。包括對(duì)CPUCPU、內(nèi)存儲(chǔ)器、輸、內(nèi)存儲(chǔ)器、輸入輸出設(shè)備、數(shù)據(jù)文件和其他軟件資源的管理。入輸出設(shè)備、數(shù)據(jù)文件和其他軟件資源的管理。(2) (2) 為用戶提供資源共享的條件和環(huán)境,并對(duì)資為

2、用戶提供資源共享的條件和環(huán)境,并對(duì)資源的使用進(jìn)行合理調(diào)度。源的使用進(jìn)行合理調(diào)度。(3) (3) 提供輸入提供輸入/ /輸出的方便環(huán)境,簡化用戶的輸輸出的方便環(huán)境,簡化用戶的輸入輸出工作,提供良好的用戶界面。入輸出工作,提供良好的用戶界面。(4) (4) 規(guī)定用戶的接口,發(fā)現(xiàn)、處理或報(bào)告計(jì)算機(jī)規(guī)定用戶的接口,發(fā)現(xiàn)、處理或報(bào)告計(jì)算機(jī)操作過程中所發(fā)生的各種錯(cuò)誤。操作過程中所發(fā)生的各種錯(cuò)誤。4.1.1 操作系統(tǒng)的功能與任務(wù)操作系統(tǒng)的功能與任務(wù)第4章 資源管理技術(shù)41 什么是操作系統(tǒng)?計(jì)算機(jī)系統(tǒng)中硬件和各種軟件構(gòu)成計(jì)算機(jī)系統(tǒng)中硬件和各種軟件構(gòu)成層次關(guān)系層次關(guān)系,硬,硬件是核心件是核心(裸機(jī)裸機(jī))。計(jì)算機(jī)

3、硬件計(jì)算機(jī)硬件操作系統(tǒng)操作系統(tǒng)系統(tǒng)系統(tǒng)實(shí)用程序?qū)嵱贸绦驊?yīng)用軟件應(yīng)用軟件操作系統(tǒng)設(shè)操作系統(tǒng)設(shè)計(jì)人員計(jì)人員程序員程序員最終用戶最終用戶裸機(jī)裸機(jī)計(jì)算機(jī)計(jì)算機(jī)系統(tǒng)系統(tǒng)硬件硬件軟件軟件系統(tǒng)系統(tǒng)軟件軟件應(yīng)用應(yīng)用軟件軟件OS, DOS, UNIX, WIN9X, OS, DOS, UNIX, WIN9X, WIN2000, XPWIN2000, XPDBMS, Foxpro, Oracle,DBMS, Foxpro, Oracle, 語言編譯軟件:語言編譯軟件:C, BasicC, Basic等等第4章 資源管理技術(shù)6操作系統(tǒng)的概念操作系統(tǒng)的概念操作系統(tǒng)是用以控制和管理系統(tǒng)資源、方便用戶操作系統(tǒng)是用以控制和

4、管理系統(tǒng)資源、方便用戶使用計(jì)算機(jī)的程序的集合。使用計(jì)算機(jī)的程序的集合。CPUCPU是是計(jì)算機(jī)硬件的核心和基礎(chǔ)計(jì)算機(jī)硬件的核心和基礎(chǔ)- -心臟。心臟。操作系統(tǒng)是操作系統(tǒng)是軟件的核心和基礎(chǔ)軟件的核心和基礎(chǔ) - -大腦。大腦。資源角度:資源角度:是計(jì)算機(jī)資源管理系統(tǒng),負(fù)責(zé)計(jì)算機(jī)系統(tǒng)的全部資源是計(jì)算機(jī)資源管理系統(tǒng),負(fù)責(zé)計(jì)算機(jī)系統(tǒng)的全部資源的分配、控制、調(diào)度和回收的分配、控制、調(diào)度和回收用戶角度用戶角度:操作系統(tǒng)是計(jì)算機(jī)與用戶之間的接口操作系統(tǒng)是計(jì)算機(jī)與用戶之間的接口進(jìn)程角度:進(jìn)程角度:是動(dòng)態(tài)、合理地組織計(jì)算機(jī)工作流程的軟件。是動(dòng)態(tài)、合理地組織計(jì)算機(jī)工作流程的軟件。評(píng)價(jià)(地位和作用):評(píng)價(jià)(地位和作用)

5、:操作系統(tǒng)是直接與硬件相鄰的第一層軟件,是其他軟件操作系統(tǒng)是直接與硬件相鄰的第一層軟件,是其他軟件運(yùn)行的基礎(chǔ),是系統(tǒng)軟件中最基本、最核心的部分。運(yùn)行的基礎(chǔ),是系統(tǒng)軟件中最基本、最核心的部分。第4章 資源管理技術(shù)72 2、操作系統(tǒng)的五大功能、操作系統(tǒng)的五大功能 操作系統(tǒng)功能操作系統(tǒng)功能 文件管理文件管理進(jìn)程管理進(jìn)程管理存儲(chǔ)器管理存儲(chǔ)器管理作業(yè)管理作業(yè)管理設(shè)備管理設(shè)備管理第4章 資源管理技術(shù)81. 1. 處理機(jī)管理處理機(jī)管理 處理器是計(jì)算機(jī)系統(tǒng)中最主要的資源,處理處理器是計(jì)算機(jī)系統(tǒng)中最主要的資源,處理器管理的主要功能是對(duì)處理器的分配、調(diào)度實(shí)器管理的主要功能是對(duì)處理器的分配、調(diào)度實(shí)施最有效的管理,最

6、大限度的提高它的處理能施最有效的管理,最大限度的提高它的處理能力。力。第4章 資源管理技術(shù)92. 2. 存儲(chǔ)器管理存儲(chǔ)器管理內(nèi)存是一種極為重要的資源,也是計(jì)算機(jī)系統(tǒng)中內(nèi)存是一種極為重要的資源,也是計(jì)算機(jī)系統(tǒng)中的緊缺資源,內(nèi)存管理在操作系統(tǒng)中占有極為的緊缺資源,內(nèi)存管理在操作系統(tǒng)中占有極為重要的地位。重要的地位。存儲(chǔ)器管理的主要任務(wù)是:對(duì)有限的內(nèi)存儲(chǔ)器進(jìn)存儲(chǔ)器管理的主要任務(wù)是:對(duì)有限的內(nèi)存儲(chǔ)器進(jìn)行合理的分配,以滿足多個(gè)用戶程序運(yùn)行的需行合理的分配,以滿足多個(gè)用戶程序運(yùn)行的需要。要。第4章 資源管理技術(shù)103. 3. 設(shè)備管理設(shè)備管理 計(jì)算機(jī)系統(tǒng)中的設(shè)備主要指鍵盤、鼠標(biāo)、顯示計(jì)算機(jī)系統(tǒng)中的設(shè)備主要

7、指鍵盤、鼠標(biāo)、顯示器、打印機(jī)、掃描儀、磁盤、光盤驅(qū)動(dòng)器等輸器、打印機(jī)、掃描儀、磁盤、光盤驅(qū)動(dòng)器等輸入、輸出設(shè)備。計(jì)算機(jī)的輸入、輸出設(shè)備千差入、輸出設(shè)備。計(jì)算機(jī)的輸入、輸出設(shè)備千差萬別、種類繁多,所以必須屏蔽各種設(shè)備的物萬別、種類繁多,所以必須屏蔽各種設(shè)備的物理特性,把設(shè)備抽象為交換數(shù)據(jù)的文件。設(shè)備理特性,把設(shè)備抽象為交換數(shù)據(jù)的文件。設(shè)備管理器除了對(duì)設(shè)備進(jìn)行分配、調(diào)度、提高整個(gè)管理器除了對(duì)設(shè)備進(jìn)行分配、調(diào)度、提高整個(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)行效率外,還要為用戶提供一計(jì)算機(jī)系統(tǒng)的運(yùn)行效率外,還要為用戶提供一個(gè)方便、易用、高效的操作界面。個(gè)方便、易用、高效的操作界面。第4章 資源管理技術(shù)114. 4. 文件管

8、理文件管理計(jì)算機(jī)中所有信息,比如程序、文檔、數(shù)據(jù)等都計(jì)算機(jī)中所有信息,比如程序、文檔、數(shù)據(jù)等都是以文件的形式保存在硬盤、光盤等外部存儲(chǔ)是以文件的形式保存在硬盤、光盤等外部存儲(chǔ)介質(zhì)上,供授權(quán)用戶使用。介質(zhì)上,供授權(quán)用戶使用。一個(gè)文件系統(tǒng)應(yīng)當(dāng)具有:數(shù)據(jù)存儲(chǔ)空間的分配、一個(gè)文件系統(tǒng)應(yīng)當(dāng)具有:數(shù)據(jù)存儲(chǔ)空間的分配、回收;文件的讀、寫、查找和安全機(jī)制。回收;文件的讀、寫、查找和安全機(jī)制。操作系統(tǒng)還應(yīng)當(dāng)屏蔽各種存儲(chǔ)設(shè)備的物理特性,操作系統(tǒng)還應(yīng)當(dāng)屏蔽各種存儲(chǔ)設(shè)備的物理特性,向用戶提供一套簡單、方便、易用的文件訪問向用戶提供一套簡單、方便、易用的文件訪問接口,如文件的打開、關(guān)閉、讀寫以及刪除等,接口,如文件的打

9、開、關(guān)閉、讀寫以及刪除等,供用戶編寫程序時(shí)使用。供用戶編寫程序時(shí)使用。第4章 資源管理技術(shù)125. 5. 作業(yè)管理作業(yè)管理作業(yè)就是用戶的一個(gè)完整的計(jì)算機(jī)任務(wù),即運(yùn)行作業(yè)就是用戶的一個(gè)完整的計(jì)算機(jī)任務(wù),即運(yùn)行應(yīng)用程序所需要的數(shù)據(jù)以及控制應(yīng)用程序之行應(yīng)用程序所需要的數(shù)據(jù)以及控制應(yīng)用程序之行的指令集合。的指令集合。用戶把應(yīng)用程序和所需的數(shù)據(jù)以作業(yè)的形式提交用戶把應(yīng)用程序和所需的數(shù)據(jù)以作業(yè)的形式提交給操作系統(tǒng),操作系統(tǒng)在執(zhí)行完應(yīng)用程序后,給操作系統(tǒng),操作系統(tǒng)在執(zhí)行完應(yīng)用程序后,把結(jié)果輸出給用戶。把結(jié)果輸出給用戶。作業(yè)管理具有:作業(yè)的調(diào)度功能。它是操作系統(tǒng)作業(yè)管理具有:作業(yè)的調(diào)度功能。它是操作系統(tǒng)和用戶

10、之間的接口。主要任務(wù):對(duì)所有的用戶和用戶之間的接口。主要任務(wù):對(duì)所有的用戶作業(yè)進(jìn)行分類、并且根據(jù)某種原則,不斷的把作業(yè)進(jìn)行分類、并且根據(jù)某種原則,不斷的把作業(yè)提交給計(jì)算機(jī)去處理。作業(yè)提交給計(jì)算機(jī)去處理。1. 手工操作階段手工操作階段 (1) (1) 由于單個(gè)用戶獨(dú)占計(jì)算機(jī)的所有資源,從而造成資由于單個(gè)用戶獨(dú)占計(jì)算機(jī)的所有資源,從而造成資 源得不到充分利用;源得不到充分利用;(2) (2) 由于用戶直接使用計(jì)算機(jī)硬件資源,因此,要求用由于用戶直接使用計(jì)算機(jī)硬件資源,因此,要求用 戶熟悉計(jì)算機(jī)各部分的細(xì)節(jié),這就導(dǎo)致使用很不方戶熟悉計(jì)算機(jī)各部分的細(xì)節(jié),這就導(dǎo)致使用很不方 便,也容易出錯(cuò);便,也容易出

11、錯(cuò);(3) (3) 由于進(jìn)行手工聯(lián)機(jī)操作,人工干預(yù)多,造成輔助時(shí)由于進(jìn)行手工聯(lián)機(jī)操作,人工干預(yù)多,造成輔助時(shí) 間長。間長。4.1.2 操作系統(tǒng)的發(fā)展過程操作系統(tǒng)的發(fā)展過程第4章 資源管理技術(shù)14 手工操作存在的根本問題是人工干預(yù)過多,手工操作存在的根本問題是人工干預(yù)過多,因此,要克服手工操作的方式的缺點(diǎn),就必須因此,要克服手工操作的方式的缺點(diǎn),就必須減少人工干預(yù),實(shí)現(xiàn)作業(yè)之間轉(zhuǎn)接的自動(dòng)化,減少人工干預(yù),實(shí)現(xiàn)作業(yè)之間轉(zhuǎn)接的自動(dòng)化,以縮短作業(yè)轉(zhuǎn)接時(shí)處理機(jī)的等待時(shí)間,從而比以縮短作業(yè)轉(zhuǎn)接時(shí)處理機(jī)的等待時(shí)間,從而比較好地發(fā)揮計(jì)算機(jī)的效率。為此就出現(xiàn)了成批較好地發(fā)揮計(jì)算機(jī)的效率。為此就出現(xiàn)了成批處理系統(tǒng)

12、。處理系統(tǒng)。2. 2. 成批處理系統(tǒng)成批處理系統(tǒng)脫機(jī)批處理系統(tǒng)模型脫機(jī)批處理系統(tǒng)模型3. 執(zhí)行程序系統(tǒng)執(zhí)行程序系統(tǒng)通道通道是一種硬件機(jī)構(gòu),它獨(dú)立于處理機(jī)而直接控是一種硬件機(jī)構(gòu),它獨(dú)立于處理機(jī)而直接控制輸入、輸出設(shè)備與內(nèi)存之間的數(shù)鍵傳送。制輸入、輸出設(shè)備與內(nèi)存之間的數(shù)鍵傳送。中斷中斷是外界(如輸入、輸出設(shè)備,通道等)向主是外界(如輸入、輸出設(shè)備,通道等)向主機(jī)報(bào)告信息的一種通信方式。機(jī)報(bào)告信息的一種通信方式。第4章 資源管理技術(shù)18單道批處理系統(tǒng)缺點(diǎn)單道批處理系統(tǒng)缺點(diǎn) 由于這種系統(tǒng)一次只能處理一個(gè)作業(yè),所以由于這種系統(tǒng)一次只能處理一個(gè)作業(yè),所以對(duì)計(jì)算機(jī)系統(tǒng)資源的利用率并不高。譬如:當(dāng)對(duì)計(jì)算機(jī)系統(tǒng)

13、資源的利用率并不高。譬如:當(dāng)運(yùn)行中的作業(yè)進(jìn)行輸入輸出操作時(shí),處理器將運(yùn)行中的作業(yè)進(jìn)行輸入輸出操作時(shí),處理器將處于空閑等待狀態(tài),而輸入輸出操作的速度是處于空閑等待狀態(tài),而輸入輸出操作的速度是很慢的,這將浪費(fèi)寶貴的處理器資源。很慢的,這將浪費(fèi)寶貴的處理器資源。 于是人們在這一系統(tǒng)上進(jìn)行了改進(jìn),引入于是人們在這一系統(tǒng)上進(jìn)行了改進(jìn),引入了了“多道批處理系統(tǒng)多道批處理系統(tǒng)”4. 多道程序系統(tǒng)的引入多道程序系統(tǒng)的引入 所謂多道程序技術(shù),是指在計(jì)算機(jī)內(nèi)存中所謂多道程序技術(shù),是指在計(jì)算機(jī)內(nèi)存中同時(shí)存放多道相互獨(dú)立的程序,它們在操作系同時(shí)存放多道相互獨(dú)立的程序,它們在操作系統(tǒng)的控制下,共享系統(tǒng)的硬件和軟件資源。

14、統(tǒng)的控制下,共享系統(tǒng)的硬件和軟件資源。1. 多道批處理操作系統(tǒng)多道批處理操作系統(tǒng)“多道多道”是指在計(jì)算機(jī)內(nèi)存中存入多個(gè)用戶作業(yè)。是指在計(jì)算機(jī)內(nèi)存中存入多個(gè)用戶作業(yè)?!芭幚砼幚怼笔侵高@樣一種操作方式,在外存中存入大量是指這樣一種操作方式,在外存中存入大量的后備作業(yè),作業(yè)的運(yùn)行完全由系統(tǒng)控制,用戶與其的后備作業(yè),作業(yè)的運(yùn)行完全由系統(tǒng)控制,用戶與其作業(yè)之間沒有交互作用,用戶不能直接控制其作業(yè)的作業(yè)之間沒有交互作用,用戶不能直接控制其作業(yè)的運(yùn)行,通常稱這種方式為批操作或脫機(jī)操作。運(yùn)行,通常稱這種方式為批操作或脫機(jī)操作。4.1.3 操作系統(tǒng)的分類操作系統(tǒng)的分類2. 分時(shí)操作系統(tǒng)分時(shí)操作系統(tǒng)在分時(shí)系統(tǒng)

15、中,多個(gè)用戶分享使用同一臺(tái)計(jì)算機(jī),即在在分時(shí)系統(tǒng)中,多個(gè)用戶分享使用同一臺(tái)計(jì)算機(jī),即在一臺(tái)計(jì)算機(jī)上聯(lián)接若干臺(tái)終端,每個(gè)用戶可以獨(dú)占一臺(tái)一臺(tái)計(jì)算機(jī)上聯(lián)接若干臺(tái)終端,每個(gè)用戶可以獨(dú)占一臺(tái)終端。終端。所謂分時(shí),是指若干個(gè)并發(fā)程序?qū)λ^分時(shí),是指若干個(gè)并發(fā)程序?qū)PUCPU的分時(shí),其中每個(gè)的分時(shí),其中每個(gè)程序?qū)Τ绦驅(qū)PUCPU的時(shí)間分享單位稱為時(shí)間片。的時(shí)間分享單位稱為時(shí)間片。例如,設(shè)時(shí)間片長度為例如,設(shè)時(shí)間片長度為100100毫秒,現(xiàn)有毫秒,現(xiàn)有1010個(gè)用戶,則操作個(gè)用戶,則操作系統(tǒng)對(duì)每個(gè)用戶的平均響應(yīng)時(shí)間為系統(tǒng)對(duì)每個(gè)用戶的平均響應(yīng)時(shí)間為1010100100毫秒毫秒1 1秒。秒。也就是說,每個(gè)用

16、戶依次輪流使用也就是說,每個(gè)用戶依次輪流使用100100毫秒的時(shí)間片。毫秒的時(shí)間片。(1) (1) 同時(shí)性。即若干遠(yuǎn)、近程終端上的用戶,在各自的同時(shí)性。即若干遠(yuǎn)、近程終端上的用戶,在各自的 終端上同時(shí)使用一臺(tái)計(jì)算機(jī)。終端上同時(shí)使用一臺(tái)計(jì)算機(jī)。(2) (2) 獨(dú)立性。即同一臺(tái)計(jì)算機(jī)上的用戶在各自的終端上獨(dú)立性。即同一臺(tái)計(jì)算機(jī)上的用戶在各自的終端上 獨(dú)立工作,互不干擾。獨(dú)立工作,互不干擾。(3) (3) 及時(shí)性。即用戶可以在很短的時(shí)間內(nèi)得到計(jì)算機(jī)的及時(shí)性。即用戶可以在很短的時(shí)間內(nèi)得到計(jì)算機(jī)的 響應(yīng)。響應(yīng)。(4) (4) 交互性。即分時(shí)系統(tǒng)提供了人機(jī)對(duì)話的條件,用戶交互性。即分時(shí)系統(tǒng)提供了人機(jī)對(duì)話的

17、條件,用戶 可以根據(jù)系統(tǒng)對(duì)自己請求的響應(yīng)情況,繼續(xù)向系統(tǒng)可以根據(jù)系統(tǒng)對(duì)自己請求的響應(yīng)情況,繼續(xù)向系統(tǒng) 提出新的要求,便于程序的檢查和調(diào)試。提出新的要求,便于程序的檢查和調(diào)試。第一個(gè)分時(shí)操作系統(tǒng)就是第一個(gè)分時(shí)操作系統(tǒng)就是UNIXUNIX操作系統(tǒng)。操作系統(tǒng)。3. 實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)所謂實(shí)時(shí),是指對(duì)隨機(jī)發(fā)生的外部事件作出及時(shí)所謂實(shí)時(shí),是指對(duì)隨機(jī)發(fā)生的外部事件作出及時(shí)的響應(yīng)并對(duì)其進(jìn)行處理。的響應(yīng)并對(duì)其進(jìn)行處理。實(shí)時(shí)系統(tǒng)分為實(shí)時(shí)過程控制系統(tǒng)和實(shí)時(shí)信息處理實(shí)時(shí)系統(tǒng)分為實(shí)時(shí)過程控制系統(tǒng)和實(shí)時(shí)信息處理系統(tǒng)兩類。系統(tǒng)兩類。實(shí)時(shí)過程控制系統(tǒng)主要用于工業(yè)生產(chǎn)的自動(dòng)控實(shí)時(shí)過程控制系統(tǒng)主要用于工業(yè)生產(chǎn)的自動(dòng)控制、

18、導(dǎo)彈發(fā)射和飛機(jī)飛行等控制實(shí)驗(yàn)過程控制。實(shí)時(shí)信息處制、導(dǎo)彈發(fā)射和飛機(jī)飛行等控制實(shí)驗(yàn)過程控制。實(shí)時(shí)信息處理系統(tǒng)對(duì)信息作及時(shí)處理,用于機(jī)票預(yù)訂、銀行或商店的數(shù)理系統(tǒng)對(duì)信息作及時(shí)處理,用于機(jī)票預(yù)訂、銀行或商店的數(shù)據(jù)處理等據(jù)處理等4. 通用操作系統(tǒng)通用操作系統(tǒng)三種操作系統(tǒng)經(jīng)常組合起來使用,形成通用操作系統(tǒng)。三種操作系統(tǒng)經(jīng)常組合起來使用,形成通用操作系統(tǒng)。5. 優(yōu)良的操作環(huán)境優(yōu)良的操作環(huán)境多窗口系統(tǒng)多窗口系統(tǒng)(1) (1) 從用戶或應(yīng)用的角度來看,多窗口系統(tǒng)是用戶可以從用戶或應(yīng)用的角度來看,多窗口系統(tǒng)是用戶可以 同時(shí)運(yùn)行多道程序的一個(gè)集成化環(huán)境。同時(shí)運(yùn)行多道程序的一個(gè)集成化環(huán)境。(2) (2) 從軟件開發(fā)

19、者的角度來看,多窗口系統(tǒng)作為集成化從軟件開發(fā)者的角度來看,多窗口系統(tǒng)作為集成化 的環(huán)境能夠在無關(guān)程序之間共享信息。的環(huán)境能夠在無關(guān)程序之間共享信息。(3) (3) 一般可以認(rèn)為,多窗口系統(tǒng)是提供友善的、菜單驅(qū)一般可以認(rèn)為,多窗口系統(tǒng)是提供友善的、菜單驅(qū) 動(dòng)的、常常有圖形能力的用戶界面的操作環(huán)境。動(dòng)的、常常有圖形能力的用戶界面的操作環(huán)境。(1) (1) 它們都要提供資源訪問能力,同時(shí)還要保證用戶對(duì)它們都要提供資源訪問能力,同時(shí)還要保證用戶對(duì) 資源的共享。操作系統(tǒng)提供存儲(chǔ)器、輸入資源的共享。操作系統(tǒng)提供存儲(chǔ)器、輸入/ /輸出設(shè)備輸出設(shè)備 等資源的共享,多窗口系統(tǒng)提供窗口、時(shí)件等資源等資源的共享,多

20、窗口系統(tǒng)提供窗口、時(shí)件等資源 的共享。的共享。(2) (2) 多窗口系統(tǒng)可以同時(shí)運(yùn)行多任務(wù),使其具有分時(shí)操作系統(tǒng)的多窗口系統(tǒng)可以同時(shí)運(yùn)行多任務(wù),使其具有分時(shí)操作系統(tǒng)的特征。特征。(3) (3) 由于多窗口系統(tǒng)按用戶產(chǎn)生的事件來調(diào)度各個(gè)任務(wù),由于多窗口系統(tǒng)按用戶產(chǎn)生的事件來調(diào)度各個(gè)任務(wù), 而用戶產(chǎn)生的事件實(shí)質(zhì)上是應(yīng)該立即處理的中斷請而用戶產(chǎn)生的事件實(shí)質(zhì)上是應(yīng)該立即處理的中斷請 求,因此,這種處理方式又使其與實(shí)時(shí)操作系統(tǒng)相求,因此,這種處理方式又使其與實(shí)時(shí)操作系統(tǒng)相 接近。接近。多窗口系統(tǒng)實(shí)際上是一種功能很強(qiáng)的操作系統(tǒng)。多窗口系統(tǒng)實(shí)際上是一種功能很強(qiáng)的操作系統(tǒng)。(1) (1) 靈活、方便的窗口操作

21、靈活、方便的窗口操作(2) (2) 彈出式菜單彈出式菜單(3) (3) 命令對(duì)話框命令對(duì)話框多窗口系統(tǒng)能提供將多個(gè)作業(yè)同時(shí)展現(xiàn)在用戶面前的操多窗口系統(tǒng)能提供將多個(gè)作業(yè)同時(shí)展現(xiàn)在用戶面前的操作環(huán)境,每個(gè)作業(yè)占據(jù)一個(gè)窗口,用戶可以交替地與各作環(huán)境,每個(gè)作業(yè)占據(jù)一個(gè)窗口,用戶可以交替地與各個(gè)窗口進(jìn)行對(duì)話,各窗口之間也可以互相通信、交換信個(gè)窗口進(jìn)行對(duì)話,各窗口之間也可以互相通信、交換信息。息。4.2 4.2 多道程序設(shè)計(jì)多道程序設(shè)計(jì)4.2.1 4.2.1 并發(fā)程序設(shè)計(jì)并發(fā)程序設(shè)計(jì)4.2.2 4.2.2 進(jìn)程進(jìn)程4.2.3 4.2.3 進(jìn)程之間的通信進(jìn)程之間的通信4.2.4 4.2.4 多道程序的組織多

22、道程序的組織順序程序的特點(diǎn):順序程序的特點(diǎn):(1) (1) 程序的順序性程序的順序性(2) (2) 順序程序的封閉性順序程序的封閉性(3) (3) 順序程序的可再現(xiàn)性順序程序的可再現(xiàn)性4.2.1 并發(fā)程序設(shè)計(jì)并發(fā)程序設(shè)計(jì)順序程序的順序程序的3中常見類型中常見類型(1) (1) 并發(fā)程序沒有封閉性并發(fā)程序沒有封閉性(2) (2) 程序與其執(zhí)行過程不是一一對(duì)應(yīng)的關(guān)系程序與其執(zhí)行過程不是一一對(duì)應(yīng)的關(guān)系(3) (3) 程序并發(fā)執(zhí)行可以互相制約程序并發(fā)執(zhí)行可以互相制約1. 進(jìn)程的基本概念進(jìn)程的基本概念進(jìn)程是指一個(gè)具有一定獨(dú)立功能的程序關(guān)于某個(gè)數(shù)據(jù)集進(jìn)程是指一個(gè)具有一定獨(dú)立功能的程序關(guān)于某個(gè)數(shù)據(jù)集合的一次

23、運(yùn)行活動(dòng)。合的一次運(yùn)行活動(dòng)。進(jìn)程是可以并發(fā)執(zhí)行的程序的執(zhí)行過程,它是控制程序進(jìn)程是可以并發(fā)執(zhí)行的程序的執(zhí)行過程,它是控制程序管理下的基本的多道程序單位。管理下的基本的多道程序單位。4.2.2 進(jìn)程進(jìn)程(1) (1) 進(jìn)程是程序在處理機(jī)上的一次執(zhí)行過程,它是動(dòng)態(tài)的概進(jìn)程是程序在處理機(jī)上的一次執(zhí)行過程,它是動(dòng)態(tài)的概念。而程序只是一組指令的有序集合,其本身沒有任何運(yùn)念。而程序只是一組指令的有序集合,其本身沒有任何運(yùn)行的含義,它是一個(gè)靜態(tài)的概念。行的含義,它是一個(gè)靜態(tài)的概念。(2) (2) 進(jìn)程是程序的執(zhí)行過程,是一次運(yùn)行活動(dòng)。因此進(jìn)程是程序的執(zhí)行過程,是一次運(yùn)行活動(dòng)。因此, ,進(jìn)程進(jìn)程具有一定的生命

24、期,它能夠動(dòng)態(tài)地產(chǎn)生和消亡。而程序是具有一定的生命期,它能夠動(dòng)態(tài)地產(chǎn)生和消亡。而程序是可以作為一種軟件資源長期保存的,它的存在是永久的??梢宰鳛橐环N軟件資源長期保存的,它的存在是永久的。(3) (3) 進(jìn)程是程序的執(zhí)行過程,因此,進(jìn)程的組成應(yīng)包括程序、進(jìn)程是程序的執(zhí)行過程,因此,進(jìn)程的組成應(yīng)包括程序、數(shù)據(jù)與記錄進(jìn)程狀態(tài)信息的數(shù)據(jù)與記錄進(jìn)程狀態(tài)信息的“進(jìn)程控制塊進(jìn)程控制塊”。(4) (4) 一個(gè)程序可能對(duì)應(yīng)多個(gè)進(jìn)程。一個(gè)程序可能對(duì)應(yīng)多個(gè)進(jìn)程。(5) (5) 一個(gè)進(jìn)程可以包含多個(gè)程序。一個(gè)進(jìn)程可以包含多個(gè)程序。第4章 資源管理技術(shù)36例例: :有三道程序在一個(gè)系統(tǒng)中運(yùn)行,該系統(tǒng)有輸入設(shè)備,輸出設(shè)有

25、三道程序在一個(gè)系統(tǒng)中運(yùn)行,該系統(tǒng)有輸入設(shè)備,輸出設(shè)備各一臺(tái)。三道程序構(gòu)成如下備各一臺(tái)。三道程序構(gòu)成如下: :A:A:輸入輸入3232秒,計(jì)算秒,計(jì)算8 8秒,輸出秒,輸出5 5秒。共計(jì)秒。共計(jì)4545秒。秒。B:B:輸入輸入2121秒,計(jì)算秒,計(jì)算1414秒,輸出秒,輸出3535秒。共計(jì)秒。共計(jì)7070秒。秒。C:C:輸入輸入1212秒,計(jì)算秒,計(jì)算3232秒,輸出秒,輸出1515秒。共計(jì)秒。共計(jì)5959秒。秒。若 程 序 按若 程 序 按 A - B - CA - B - C 的 次 序 順 序 執(zhí) 行 , 則 系 統(tǒng) 運(yùn) 行 時(shí) 間 為的 次 序 順 序 執(zhí) 行 , 則 系 統(tǒng) 運(yùn) 行 時(shí)

26、 間 為45+70+59=17445+70+59=174秒。秒。若使各設(shè)備并發(fā)執(zhí)行,也按若使各設(shè)備并發(fā)執(zhí)行,也按A-B-CA-B-C順序執(zhí)行,則執(zhí)行情況為:順序執(zhí)行,則執(zhí)行情況為:總計(jì)執(zhí)行時(shí)間總計(jì)執(zhí)行時(shí)間: 32+21+14+35+15=114: 32+21+14+35+15=114秒秒2. 進(jìn)程的狀態(tài)及其轉(zhuǎn)化進(jìn)程的狀態(tài)及其轉(zhuǎn)化(1) (1) 運(yùn)行狀態(tài)運(yùn)行狀態(tài)(2) (2) 就緒狀態(tài)就緒狀態(tài)(3) (3) 等待狀態(tài)等待狀態(tài)(1) (1) 處于就緒狀態(tài)的進(jìn)程,一旦分配到處于就緒狀態(tài)的進(jìn)程,一旦分配到CPUCPU,就轉(zhuǎn)為運(yùn)行,就轉(zhuǎn)為運(yùn)行 狀態(tài)。狀態(tài)。(2) (2) 處于運(yùn)行狀態(tài)的進(jìn)程,當(dāng)需要等待某

27、個(gè)事件發(fā)生才處于運(yùn)行狀態(tài)的進(jìn)程,當(dāng)需要等待某個(gè)事件發(fā)生才 能繼續(xù)運(yùn)行時(shí),則轉(zhuǎn)為等待狀態(tài);或者由于分配給能繼續(xù)運(yùn)行時(shí),則轉(zhuǎn)為等待狀態(tài);或者由于分配給 它的時(shí)間片用完,就讓出它的時(shí)間片用完,就讓出CPUCPU而轉(zhuǎn)為就緒狀態(tài)。而轉(zhuǎn)為就緒狀態(tài)。(3) (3) 處于等待狀態(tài)的進(jìn)程,如果它等待的事件已經(jīng)發(fā)生,處于等待狀態(tài)的進(jìn)程,如果它等待的事件已經(jīng)發(fā)生, 即條件得到滿足,就轉(zhuǎn)為就緒狀態(tài)。即條件得到滿足,就轉(zhuǎn)為就緒狀態(tài)。剛創(chuàng)建的進(jìn)程可以處于三種狀態(tài)中的任何一種,剛創(chuàng)建的進(jìn)程可以處于三種狀態(tài)中的任何一種,但進(jìn)程只能在運(yùn)行狀態(tài)下結(jié)束。但進(jìn)程只能在運(yùn)行狀態(tài)下結(jié)束。3. 進(jìn)程控制塊及其組織進(jìn)程控制塊及其組織(1)

28、(1) 進(jìn)程控制塊進(jìn)程控制塊PCBPCB進(jìn)程名進(jìn)程名 特征信息特征信息執(zhí)行狀態(tài)信息執(zhí)行狀態(tài)信息 通信信息通信信息調(diào)度優(yōu)先數(shù)調(diào)度優(yōu)先數(shù) 現(xiàn)場信息現(xiàn)場信息系統(tǒng)棧系統(tǒng)棧 進(jìn)程映象信息進(jìn)程映象信息資源占有信息資源占有信息 族關(guān)系族關(guān)系(2) (2) 進(jìn)程的組織進(jìn)程的組織進(jìn)程的物理組織方式:進(jìn)程的物理組織方式:線性表線性表鏈接表鏈接表4. 死鎖問題死鎖問題若干個(gè)進(jìn)程均因互相若干個(gè)進(jìn)程均因互相“無知地?zé)o知地”等待對(duì)方等待對(duì)方所占有的資源而無限地等待。所占有的資源而無限地等待。例:有兩個(gè)進(jìn)程例:有兩個(gè)進(jìn)程A,B,它們都根據(jù)自己的需要申請和釋放讀卡機(jī)和打印機(jī)。先假設(shè)系,它們都根據(jù)自己的需要申請和釋放讀卡機(jī)和打

29、印機(jī)。先假設(shè)系統(tǒng)中有讀卡機(jī)和打印機(jī)各一臺(tái),兩個(gè)進(jìn)程的執(zhí)行過程:統(tǒng)中有讀卡機(jī)和打印機(jī)各一臺(tái),兩個(gè)進(jìn)程的執(zhí)行過程:第4章 資源管理技術(shù)44由此可以看出:死鎖的發(fā)生是與進(jìn)程的相由此可以看出:死鎖的發(fā)生是與進(jìn)程的相對(duì)運(yùn)行速度有關(guān)的,而進(jìn)程的相對(duì)運(yùn)行對(duì)運(yùn)行速度有關(guān)的,而進(jìn)程的相對(duì)運(yùn)行速度又是不可預(yù)測的,因此,死鎖是一速度又是不可預(yù)測的,因此,死鎖是一種與時(shí)間有關(guān)的問題,并且是不可再現(xiàn)種與時(shí)間有關(guān)的問題,并且是不可再現(xiàn)的。的。例:假設(shè)系統(tǒng)中有例:假設(shè)系統(tǒng)中有1010臺(tái)磁帶機(jī),由臺(tái)磁帶機(jī),由A A,B B,C C三個(gè)進(jìn)程三個(gè)進(jìn)程所共享現(xiàn)假定所共享現(xiàn)假定A A,B B,C C已分別占用了已分別占用了2 2臺(tái),

30、臺(tái),3 3臺(tái)和臺(tái)和2 2臺(tái)臺(tái)磁帶機(jī),它們的最大需求量分別為磁帶機(jī),它們的最大需求量分別為4 4臺(tái),臺(tái),6 6臺(tái)和臺(tái)和8 8臺(tái)。臺(tái)。并且還假定每個(gè)進(jìn)程只有滿足了最大需求量后才可并且還假定每個(gè)進(jìn)程只有滿足了最大需求量后才可能釋放其所有的資源。能釋放其所有的資源。死鎖的四個(gè)必要條件:死鎖的四個(gè)必要條件:(1) (1) 資源的獨(dú)占使用。資源的獨(dú)占使用。(2) (2) 資源的非搶占分配。資源的非搶占分配。(3) (3) 資源的部分分配。資源的部分分配。(4) (4) 對(duì)資源的循環(huán)等待。對(duì)資源的循環(huán)等待。只要設(shè)法破壞其中的某一個(gè)必要條件,也就避免了死鎖的發(fā)生只要設(shè)法破壞其中的某一個(gè)必要條件,也就避免了死鎖

31、的發(fā)生。資源的靜態(tài)分配資源的靜態(tài)分配資源順序分配法資源順序分配法銀行家算法銀行家算法死鎖發(fā)生時(shí),及時(shí)地發(fā)現(xiàn)它,并讓系統(tǒng)從死鎖狀死鎖發(fā)生時(shí),及時(shí)地發(fā)現(xiàn)它,并讓系統(tǒng)從死鎖狀態(tài)中解脫出來態(tài)中解脫出來死鎖的預(yù)防:死鎖的預(yù)防:1. 進(jìn)程的互斥與同步進(jìn)程的互斥與同步(1) (1) 進(jìn)程的互斥進(jìn)程的互斥當(dāng)多個(gè)進(jìn)程共享數(shù)據(jù)塊或其他排他性使用的資源時(shí),不當(dāng)多個(gè)進(jìn)程共享數(shù)據(jù)塊或其他排他性使用的資源時(shí),不能同時(shí)進(jìn)入存取或使用,但進(jìn)入的次序可以任意。能同時(shí)進(jìn)入存取或使用,但進(jìn)入的次序可以任意。這種排他性使用的資源,即一次只允許一個(gè)進(jìn)程使用的這種排他性使用的資源,即一次只允許一個(gè)進(jìn)程使用的資源稱為臨界資源。資源稱為臨界

32、資源。4.2.3 進(jìn)程之間的通信進(jìn)程之間的通信有兩個(gè)進(jìn)程有兩個(gè)進(jìn)程A A和和B B,進(jìn)程,進(jìn)程A A負(fù)責(zé)為用戶作業(yè)分配打印機(jī),負(fù)責(zé)為用戶作業(yè)分配打印機(jī),進(jìn)程進(jìn)程B B負(fù)責(zé)釋放打印機(jī),它們共用一張打印機(jī)分配表。負(fù)責(zé)釋放打印機(jī),它們共用一張打印機(jī)分配表。進(jìn)程進(jìn)程A A分配打印機(jī)的過程為:分配打印機(jī)的過程為: 逐項(xiàng)檢查分配標(biāo)志,找出分配標(biāo)志為逐項(xiàng)檢查分配標(biāo)志,找出分配標(biāo)志為0 0的臺(tái)號(hào);的臺(tái)號(hào); 把該臺(tái)分配標(biāo)志置把該臺(tái)分配標(biāo)志置1 1; 把用戶名和設(shè)備號(hào)填入分配表中相應(yīng)的位置。把用戶名和設(shè)備號(hào)填入分配表中相應(yīng)的位置。 進(jìn)程進(jìn)程B B釋放打印機(jī)的過程為:釋放打印機(jī)的過程為: 逐項(xiàng)檢查分配表的各項(xiàng)信息,

33、找出分配標(biāo)志為逐項(xiàng)檢查分配表的各項(xiàng)信息,找出分配標(biāo)志為1 1, 并且用戶名和設(shè)備號(hào)與被釋放的用戶名和設(shè)備號(hào)并且用戶名和設(shè)備號(hào)與被釋放的用戶名和設(shè)備號(hào) 相同的打印機(jī)臺(tái)號(hào);相同的打印機(jī)臺(tái)號(hào); 該臺(tái)分配標(biāo)志置該臺(tái)分配標(biāo)志置0 0; 清除該臺(tái)打印機(jī)的用戶名和設(shè)備號(hào)。清除該臺(tái)打印機(jī)的用戶名和設(shè)備號(hào)。(2) (2) 進(jìn)程的同步進(jìn)程的同步進(jìn)程之間為了合作完成一個(gè)任務(wù),而需要互相等進(jìn)程之間為了合作完成一個(gè)任務(wù),而需要互相等待和互相交換信息的相互制約關(guān)系稱為同步。待和互相交換信息的相互制約關(guān)系稱為同步。第4章 資源管理技術(shù)53在這個(gè)例子當(dāng)中,進(jìn)程在這個(gè)例子當(dāng)中,進(jìn)程A和進(jìn)程和進(jìn)程B共享打印機(jī)分配表這一臨界資共享

34、打印機(jī)分配表這一臨界資源,他們不能同時(shí)對(duì)打印機(jī)分配表進(jìn)行讀寫。進(jìn)程源,他們不能同時(shí)對(duì)打印機(jī)分配表進(jìn)行讀寫。進(jìn)程A和進(jìn)程和進(jìn)程B是互斥的。是互斥的。在具有互斥關(guān)系的各進(jìn)程中,訪問臨界資源的程序段稱為臨界區(qū)在具有互斥關(guān)系的各進(jìn)程中,訪問臨界資源的程序段稱為臨界區(qū)或臨界段?;蚺R界段。臨界區(qū)是相對(duì)于某一資源而言的,對(duì)于同一公共變量的若干臨界臨界區(qū)是相對(duì)于某一資源而言的,對(duì)于同一公共變量的若干臨界區(qū),必須互斥進(jìn)入。即對(duì)公共變量的操作實(shí)現(xiàn)互斥執(zhí)行,而區(qū),必須互斥進(jìn)入。即對(duì)公共變量的操作實(shí)現(xiàn)互斥執(zhí)行,而對(duì)與不同資源的臨界區(qū)不必互斥地執(zhí)行。對(duì)與不同資源的臨界區(qū)不必互斥地執(zhí)行。互斥主要是解決并發(fā)進(jìn)程對(duì)臨界區(qū)的使

35、用問題?;コ庵饕墙鉀Q并發(fā)進(jìn)程對(duì)臨界區(qū)的使用問題。進(jìn)程的同步進(jìn)程的同步在多道程序系統(tǒng)中,多個(gè)并發(fā)執(zhí)行的進(jìn)程之間還可能存在協(xié)同工在多道程序系統(tǒng)中,多個(gè)并發(fā)執(zhí)行的進(jìn)程之間還可能存在協(xié)同工作的關(guān)系。在這種情況下,相互合作的一組并發(fā)進(jìn)程,其中作的關(guān)系。在這種情況下,相互合作的一組并發(fā)進(jìn)程,其中每一個(gè)進(jìn)程都以各自獨(dú)立的、不可預(yù)測的速度向前推進(jìn),但每一個(gè)進(jìn)程都以各自獨(dú)立的、不可預(yù)測的速度向前推進(jìn),但它們又需要密切合作,以共同完成一個(gè)任務(wù)。為此,這些進(jìn)它們又需要密切合作,以共同完成一個(gè)任務(wù)。為此,這些進(jìn)程之間必須協(xié)同動(dòng)作,相互配合,還要互相交換信息。程之間必須協(xié)同動(dòng)作,相互配合,還要互相交換信息。進(jìn)程之間為

36、了合作完成一個(gè)任務(wù),而需要互相等待和互相交換信進(jìn)程之間為了合作完成一個(gè)任務(wù),而需要互相等待和互相交換信息的相互制約關(guān)系稱為同步。息的相互制約關(guān)系稱為同步。第4章 資源管理技術(shù)55第4章 資源管理技術(shù)56通信原語通信原語進(jìn)程之間為了實(shí)現(xiàn)互斥或同步,需要有信進(jìn)程之間為了實(shí)現(xiàn)互斥或同步,需要有信息傳遞,也就是說需要進(jìn)行通信。為此,息傳遞,也就是說需要進(jìn)行通信。為此,需要一種實(shí)現(xiàn)進(jìn)程之間通信的機(jī)構(gòu),這需要一種實(shí)現(xiàn)進(jìn)程之間通信的機(jī)構(gòu),這種機(jī)構(gòu)通常稱為通信原語。種機(jī)構(gòu)通常稱為通信原語。通信原語分為低級(jí)通信原語和高級(jí)通信原通信原語分為低級(jí)通信原語和高級(jí)通信原語兩種。語兩種。2. P/V操作操作P P操作操作

37、P(S)P(S)的定義如下:的定義如下:(1) S(1) SS S1 1(2) (2) 若若S0S0,則當(dāng)前進(jìn)程繼續(xù)運(yùn)行;否則置當(dāng)前進(jìn)程為,則當(dāng)前進(jìn)程繼續(xù)運(yùn)行;否則置當(dāng)前進(jìn)程為 等待狀態(tài),并將它加入到等待狀態(tài),并將它加入到S S的等待隊(duì)列中。的等待隊(duì)列中。V V操作操作V(S)V(S)的定義如下:的定義如下:(1) S(1) SS S1 1(2) (2) 若若S S0 0,則當(dāng)前進(jìn)程繼續(xù)運(yùn)行;否則將,則當(dāng)前進(jìn)程繼續(xù)運(yùn)行;否則將S S等待隊(duì)列中等待隊(duì)列中 的排頭進(jìn)程轉(zhuǎn)為就緒狀態(tài),且當(dāng)前進(jìn)程繼續(xù)運(yùn)行。的排頭進(jìn)程轉(zhuǎn)為就緒狀態(tài),且當(dāng)前進(jìn)程繼續(xù)運(yùn)行。初始狀態(tài)為初始狀態(tài)為S S1 1信號(hào)量信號(hào)量S S1

38、10 0表示緩沖區(qū)空,表示緩沖區(qū)空,S S1 11 1表示緩沖區(qū)滿;表示緩沖區(qū)滿;信號(hào)量信號(hào)量S S2 20 0表示緩沖區(qū)滿,表示緩沖區(qū)滿,S S2 21 1表示緩沖區(qū)空。表示緩沖區(qū)空。初始狀態(tài)為初始狀態(tài)為S S1 10 0和和S S2 21 1)3. 消息緩沖通信消息緩沖通信發(fā)送消息進(jìn)程發(fā)送消息進(jìn)程A A的操作如下:的操作如下:(1)(1)在本進(jìn)程空間內(nèi)開辟一個(gè)發(fā)送區(qū);在本進(jìn)程空間內(nèi)開辟一個(gè)發(fā)送區(qū);(2)(2)把要發(fā)送的消息正文以及接收進(jìn)程的名字把要發(fā)送的消息正文以及接收進(jìn)程的名字B B和消息長度填入發(fā)送區(qū);和消息長度填入發(fā)送區(qū);(3)(3)用發(fā)送原語把消息發(fā)送出去。用發(fā)送原語把消息發(fā)送出去

39、。 發(fā)送原語的形式為發(fā)送原語的形式為 SENDSEND(發(fā)送區(qū)起始地址)(發(fā)送區(qū)起始地址)發(fā)送原語的功能是:發(fā)送原語的功能是: 申請一個(gè)消息緩沖區(qū);申請一個(gè)消息緩沖區(qū); 把消息正文和消息長度復(fù)制到緩沖區(qū);把消息正文和消息長度復(fù)制到緩沖區(qū); 查得發(fā)送消息進(jìn)程名查得發(fā)送消息進(jìn)程名A A,并填入緩沖區(qū);,并填入緩沖區(qū); 將消息緩沖區(qū)掛到接收進(jìn)程將消息緩沖區(qū)掛到接收進(jìn)程B B的消息隊(duì)列末尾(即鏈尾);此時(shí)若的消息隊(duì)列末尾(即鏈尾);此時(shí)若 進(jìn)程進(jìn)程B B正因等待消息而處于等待狀態(tài),則被喚醒。正因等待消息而處于等待狀態(tài),則被喚醒。接收消息進(jìn)程接收消息進(jìn)程B B的操作如下:的操作如下:(1) (1) 在本

40、進(jìn)程空間內(nèi)指定一個(gè)接收區(qū);在本進(jìn)程空間內(nèi)指定一個(gè)接收區(qū);(2) (2) 用接收原語把消息緩沖區(qū)中的消息取到接收區(qū)。用接收原語把消息緩沖區(qū)中的消息取到接收區(qū)。 接收原語的形式是:接收原語的形式是: RECEIVERECEIVE(接收區(qū)起始地址)(接收區(qū)起始地址)接收原語的功能是:接收原語的功能是: 將本進(jìn)程消息隊(duì)列隊(duì)頭的緩沖區(qū)中的消息發(fā)送者、消息長將本進(jìn)程消息隊(duì)列隊(duì)頭的緩沖區(qū)中的消息發(fā)送者、消息長度和度和 消息正文取到接收區(qū);消息正文取到接收區(qū); 釋放該消息緩沖區(qū)。釋放該消息緩沖區(qū)。處理機(jī)的調(diào)度處理機(jī)的調(diào)度如何從大量的后備作業(yè)中挑選一些作業(yè)進(jìn)入如何從大量的后備作業(yè)中挑選一些作業(yè)進(jìn)入內(nèi)存,內(nèi)存,如

41、何分配如何分配CPUCPU等問題,是操作系統(tǒng)中資源管理等問題,是操作系統(tǒng)中資源管理的一個(gè)重要問題。的一個(gè)重要問題。4.2.4 4.2.4 多道程序的組織多道程序的組織作業(yè)調(diào)度又成為高級(jí)調(diào)度或宏調(diào)度。作業(yè)調(diào)度又成為高級(jí)調(diào)度或宏調(diào)度。它的主要任務(wù)是,按照一定的原則,從大量的后它的主要任務(wù)是,按照一定的原則,從大量的后備作業(yè)中選取一些作業(yè),為它們分配內(nèi)存等必要備作業(yè)中選取一些作業(yè),為它們分配內(nèi)存等必要的資源,建立相應(yīng)的進(jìn)程,并為運(yùn)行完成的作業(yè)的資源,建立相應(yīng)的進(jìn)程,并為運(yùn)行完成的作業(yè)做好善后處理工作。做好善后處理工作。進(jìn)程調(diào)度又稱為低級(jí)調(diào)度或微調(diào)度。進(jìn)程調(diào)度又稱為低級(jí)調(diào)度或微調(diào)度。它的主要任務(wù)是,按

42、照某種原則將它的主要任務(wù)是,按照某種原則將CPUCPU分配給處分配給處于就緒狀態(tài)的進(jìn)程,實(shí)現(xiàn)于就緒狀態(tài)的進(jìn)程,實(shí)現(xiàn)CPUCPU在進(jìn)程之間的轉(zhuǎn)換。在進(jìn)程之間的轉(zhuǎn)換。進(jìn)程調(diào)度策略的優(yōu)劣和進(jìn)程調(diào)度策略的優(yōu)劣和CPUCPU在進(jìn)程之間轉(zhuǎn)換的速在進(jìn)程之間轉(zhuǎn)換的速度對(duì)整個(gè)系統(tǒng)性能有很大影響。度對(duì)整個(gè)系統(tǒng)性能有很大影響。常用的作業(yè)調(diào)度算法有:常用的作業(yè)調(diào)度算法有:(1) (1) 先來先服務(wù)調(diào)度算法。先來先服務(wù)調(diào)度算法。(2) (2) 短作業(yè)優(yōu)先調(diào)度算法。短作業(yè)優(yōu)先調(diào)度算法。(3) (3) 最高響應(yīng)比優(yōu)先調(diào)度算法。最高響應(yīng)比優(yōu)先調(diào)度算法。 相應(yīng)比是指作業(yè)的相應(yīng)時(shí)間與實(shí)際運(yùn)行時(shí)間的比值相應(yīng)比是指作業(yè)的相應(yīng)時(shí)間與實(shí)

43、際運(yùn)行時(shí)間的比值 相應(yīng)比(作業(yè)等待時(shí)間作業(yè)實(shí)際運(yùn)行時(shí)間)相應(yīng)比(作業(yè)等待時(shí)間作業(yè)實(shí)際運(yùn)行時(shí)間)/ /作業(yè)實(shí)際運(yùn)行時(shí)間作業(yè)實(shí)際運(yùn)行時(shí)間(4) (4) 基于優(yōu)先級(jí)的調(diào)度算法?;趦?yōu)先級(jí)的調(diào)度算法。(5) (5) 均衡調(diào)度算法。均衡調(diào)度算法。 常用的進(jìn)程調(diào)度算法有:常用的進(jìn)程調(diào)度算法有: (1) (1) 靜態(tài)優(yōu)先數(shù)法。靜態(tài)優(yōu)先數(shù)法。 (2) (2) 動(dòng)態(tài)優(yōu)先數(shù)法。動(dòng)態(tài)優(yōu)先數(shù)法。 (3) (3) 處理機(jī)搶占法。處理機(jī)搶占法。 (4) (4) 時(shí)間片輪轉(zhuǎn)法等。時(shí)間片輪轉(zhuǎn)法等。4.3 4.3 存儲(chǔ)空間的組織存儲(chǔ)空間的組織4.3.1 4.3.1 內(nèi)存儲(chǔ)器的管理技術(shù)內(nèi)存儲(chǔ)器的管理技術(shù)4.3.2 4.3.2 外

44、存儲(chǔ)器中文件的組織結(jié)構(gòu)外存儲(chǔ)器中文件的組織結(jié)構(gòu)存儲(chǔ)管理功能:存儲(chǔ)管理功能:(1) (1) 地址變換。地址變換。(2) (2) 內(nèi)存分配。內(nèi)存分配。(3) (3) 存儲(chǔ)共享與保護(hù)。存儲(chǔ)共享與保護(hù)。(4) (4) 存儲(chǔ)器擴(kuò)充。存儲(chǔ)器擴(kuò)充。4.3.1 4.3.1 內(nèi)存儲(chǔ)器的管理技術(shù)內(nèi)存儲(chǔ)器的管理技術(shù)1. 界地址存儲(chǔ)管理界地址存儲(chǔ)管理當(dāng)一個(gè)作業(yè)被調(diào)入內(nèi)存運(yùn)行時(shí),首先給這個(gè)作業(yè)分配一當(dāng)一個(gè)作業(yè)被調(diào)入內(nèi)存運(yùn)行時(shí),首先給這個(gè)作業(yè)分配一個(gè)內(nèi)存分區(qū),同時(shí)將該分區(qū)的首地址送到個(gè)內(nèi)存分區(qū),同時(shí)將該分區(qū)的首地址送到BRBR,該分區(qū),該分區(qū)的長度送到的長度送到LRLR。在該作業(yè)運(yùn)行過程中,將指令中的有。在該作業(yè)運(yùn)行過程

45、中,將指令中的有效地址轉(zhuǎn)換成實(shí)際的內(nèi)存地址,其轉(zhuǎn)換的關(guān)系為效地址轉(zhuǎn)換成實(shí)際的內(nèi)存地址,其轉(zhuǎn)換的關(guān)系為 實(shí)際內(nèi)存地址實(shí)際內(nèi)存地址D DBRBR指令中的有效地址指令中的有效地址如果如果BRDBRDBRBRLRLR,則按地址,則按地址D D進(jìn)行訪問;進(jìn)行訪問;如果如果D DBRBR或或DBRDBRLRLR,則說明地址越界錯(cuò)。,則說明地址越界錯(cuò)。2. 分頁存儲(chǔ)管理分頁存儲(chǔ)管理作業(yè)空間被劃分為頁,實(shí)際的內(nèi)存空間被劃分為塊,其中頁的大小與塊的大小作業(yè)空間被劃分為頁,實(shí)際的內(nèi)存空間被劃分為塊,其中頁的大小與塊的大小相等。相等。當(dāng)某個(gè)作業(yè)被調(diào)入內(nèi)存運(yùn)行時(shí),由重定位機(jī)構(gòu)將作業(yè)中的頁映射到內(nèi)存空間對(duì)當(dāng)某個(gè)作業(yè)被調(diào)

46、入內(nèi)存運(yùn)行時(shí),由重定位機(jī)構(gòu)將作業(yè)中的頁映射到內(nèi)存空間對(duì)應(yīng)的塊上。應(yīng)的塊上。(1) (1) 每一個(gè)作業(yè)要有一個(gè)頁表每一個(gè)作業(yè)要有一個(gè)頁表PMTPMT。在頁表中,用于記錄該作業(yè)。在頁表中,用于記錄該作業(yè)的每一頁的頁號(hào)(從第的每一頁的頁號(hào)(從第0 0頁開始)以及該頁是否在內(nèi)存的標(biāo)志,頁開始)以及該頁是否在內(nèi)存的標(biāo)志,如果某頁已進(jìn)入內(nèi)存,則還記錄該頁在內(nèi)存中的塊號(hào)。如果某頁已進(jìn)入內(nèi)存,則還記錄該頁在內(nèi)存中的塊號(hào)。(2) (2) 存儲(chǔ)分塊表存儲(chǔ)分塊表MBTMBT。在存儲(chǔ)分塊表中,記錄了內(nèi)存空間中每一。在存儲(chǔ)分塊表中,記錄了內(nèi)存空間中每一塊的使用情況,系統(tǒng)實(shí)際上就是按照這個(gè)表的內(nèi)容來具體分塊的使用情況,系

47、統(tǒng)實(shí)際上就是按照這個(gè)表的內(nèi)容來具體分配或釋放內(nèi)存塊。配或釋放內(nèi)存塊。(3) (3) 作業(yè)表作業(yè)表JTJT。在作業(yè)表中,記錄了每個(gè)作業(yè)的狀態(tài)與資源使用。在作業(yè)表中,記錄了每個(gè)作業(yè)的狀態(tài)與資源使用的信箱,主要包括作業(yè)號(hào),頁表大小,頁表地址等。的信箱,主要包括作業(yè)號(hào),頁表大小,頁表地址等。分頁存儲(chǔ)管理優(yōu)點(diǎn):分頁存儲(chǔ)管理優(yōu)點(diǎn):(1) (1) 由于提供了大容量的虛擬存儲(chǔ)器,用戶的地址空間不再受內(nèi)由于提供了大容量的虛擬存儲(chǔ)器,用戶的地址空間不再受內(nèi)存大小的限制,大大方便了用戶的程序設(shè)計(jì)。存大小的限制,大大方便了用戶的程序設(shè)計(jì)。(2) (2) 由于作業(yè)地址空間中的各頁面都是按照需要調(diào)入內(nèi)存的,不由于作業(yè)地址

48、空間中的各頁面都是按照需要調(diào)入內(nèi)存的,不用的信息不會(huì)調(diào)入內(nèi)存,很少用的信息也只是短時(shí)間駐留在用的信息不會(huì)調(diào)入內(nèi)存,很少用的信息也只是短時(shí)間駐留在內(nèi)存,因此更有效地利用了內(nèi)存。內(nèi)存,因此更有效地利用了內(nèi)存。(3) (3) 由于動(dòng)態(tài)分頁管理提供了虛擬存儲(chǔ)器,每個(gè)作業(yè)一般只有一由于動(dòng)態(tài)分頁管理提供了虛擬存儲(chǔ)器,每個(gè)作業(yè)一般只有一部分信息占用內(nèi)存,從而可以容納更多的作業(yè)進(jìn)入系統(tǒng),這部分信息占用內(nèi)存,從而可以容納更多的作業(yè)進(jìn)入系統(tǒng),這就更有利于多道程序的運(yùn)行。就更有利于多道程序的運(yùn)行。3. 分段存儲(chǔ)管理分段存儲(chǔ)管理在分段存儲(chǔ)管理方式下,分段地址空間是由一些大小不等的段組在分段存儲(chǔ)管理方式下,分段地址空間

49、是由一些大小不等的段組成的,每一個(gè)段是一個(gè)可動(dòng)態(tài)增長的線性空間,它對(duì)應(yīng)一個(gè)成的,每一個(gè)段是一個(gè)可動(dòng)態(tài)增長的線性空間,它對(duì)應(yīng)一個(gè)獨(dú)立的邏輯信息單位,如一個(gè)數(shù)組、一個(gè)子程序或分程序等。獨(dú)立的邏輯信息單位,如一個(gè)數(shù)組、一個(gè)子程序或分程序等。在分段地址空間中,指令的有效地址中既要指出段號(hào),又要指出在分段地址空間中,指令的有效地址中既要指出段號(hào),又要指出段內(nèi)的偏移量。段內(nèi)的偏移量。4. 段頁式存儲(chǔ)管理段頁式存儲(chǔ)管理分段系統(tǒng)為用戶提供了一個(gè)分段地址空間,段是信息的邏輯單分段系統(tǒng)為用戶提供了一個(gè)分段地址空間,段是信息的邏輯單位,反映了程序的邏輯結(jié)構(gòu),因而大大方便了用戶的程序設(shè)計(jì),位,反映了程序的邏輯結(jié)構(gòu),因

50、而大大方便了用戶的程序設(shè)計(jì),但它不利于內(nèi)存的有效利用。但它不利于內(nèi)存的有效利用。而在分頁系統(tǒng)中,頁是信息的物理單位,它有利于內(nèi)存的有效而在分頁系統(tǒng)中,頁是信息的物理單位,它有利于內(nèi)存的有效利用,但不利于用戶的程序設(shè)計(jì)利用,但不利于用戶的程序設(shè)計(jì)。1. 文件的邏輯結(jié)構(gòu)文件的邏輯結(jié)構(gòu)(1) (1) 記錄式文件記錄式文件(2) (2) 無結(jié)構(gòu)文件無結(jié)構(gòu)文件4.3.2 4.3.2 外存儲(chǔ)器中文件的組織結(jié)構(gòu)外存儲(chǔ)器中文件的組織結(jié)構(gòu)2. 文件的物理結(jié)構(gòu)文件的物理結(jié)構(gòu)(1) (1) 連續(xù)文件連續(xù)文件(2) (2) 鏈接文件鏈接文件(3) (3) 索引文件索引文件文文件件的的多多級(jí)級(jí)索索引引結(jié)結(jié)構(gòu)構(gòu)(1) (

51、1) 簡單文件目錄簡單文件目錄 簡單文件目錄是一種最簡單的目錄結(jié)構(gòu),它是一簡單文件目錄是一種最簡單的目錄結(jié)構(gòu),它是一個(gè)個(gè) 線性表,在這個(gè)線性表的每一個(gè)目錄項(xiàng)中包含以線性表,在這個(gè)線性表的每一個(gè)目錄項(xiàng)中包含以 下一些信息:下一些信息: 文件名;文件名; 有關(guān)文件結(jié)構(gòu)的信息,包括邏輯結(jié)構(gòu)和物理結(jié)有關(guān)文件結(jié)構(gòu)的信息,包括邏輯結(jié)構(gòu)和物理結(jié)構(gòu);構(gòu); 有關(guān)存取控制的信息;有關(guān)存取控制的信息; 有關(guān)管理的信息等。有關(guān)管理的信息等。3. 文件的目錄結(jié)構(gòu)文件的目錄結(jié)構(gòu)(2) (2) 二級(jí)目錄結(jié)構(gòu)二級(jí)目錄結(jié)構(gòu)(3) (3) 多級(jí)目錄結(jié)構(gòu)多級(jí)目錄結(jié)構(gòu)4. 文件空閑區(qū)的組織(1) (1) 空閑文件項(xiàng)和空閑區(qū)表空閑文件

52、項(xiàng)和空閑區(qū)表(2) (2) 空閑塊鏈空閑塊鏈(3) (3) 位示圖位示圖(4) (4) 空閑塊成組鏈接法空閑塊成組鏈接法塊塊0 0是作為系統(tǒng)引導(dǎo)用,不屬于文件系統(tǒng)管理。是作為系統(tǒng)引導(dǎo)用,不屬于文件系統(tǒng)管理。塊塊1 1是文件卷的專用塊。它用以記錄文件卷總的使用情況,包括文件卷的總塊是文件卷的專用塊。它用以記錄文件卷總的使用情況,包括文件卷的總塊數(shù)、索引節(jié)點(diǎn)區(qū)的大小、文件卷的保護(hù)特性等。在專用塊中還開辟了一個(gè)用于數(shù)、索引節(jié)點(diǎn)區(qū)的大小、文件卷的保護(hù)特性等。在專用塊中還開辟了一個(gè)用于登記空閑塊區(qū)域的空閑塊棧。登記空閑塊區(qū)域的空閑塊棧。塊塊2 2(k(k1)1)是索引節(jié)點(diǎn)區(qū)。這個(gè)區(qū)的大小是依據(jù)系統(tǒng)的使用環(huán)境和文件的是索引節(jié)點(diǎn)區(qū)。這個(gè)區(qū)的大小是依據(jù)系統(tǒng)的使用環(huán)境和文件的大小來決定的。例如,如果文件大而數(shù)量少,則索引節(jié)點(diǎn)區(qū)可以小些;反之,大小來決定的。例如,如果文件大而數(shù)量少,則索引節(jié)點(diǎn)區(qū)可以小些;反之,則可以大些。則可以大些。塊塊(k(k2)2)n n是文件存儲(chǔ)區(qū)(包括存儲(chǔ)目錄)。是文件存儲(chǔ)區(qū)(包括

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論