版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、操作系統(tǒng) Operating System,課 程 簡 介,課程名稱:操作系統(tǒng)( Operating System )教 材:《計(jì)算機(jī)操作系統(tǒng)》劉福巖等 《計(jì)算機(jī)操作系統(tǒng)》湯子贏等教學(xué)方式:授課( 48)+上機(jī)實(shí)習(xí)(16)考試類別:考試參考教材:1、現(xiàn)代操作系統(tǒng),陳向群等譯,機(jī)械工業(yè)出版社2、操作系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn),王鵬等譯,電子工業(yè)出版社3、計(jì)算機(jī)操作系統(tǒng)教程, 張
2、堯?qū)W、史美林,清華大學(xué)出版社,教學(xué)目的,通過對(duì)本章的講解使學(xué)生了解本課程的整體介紹 理解操作系統(tǒng)的概念,功能、作用、分類,特征,以及結(jié)構(gòu)設(shè)計(jì),本章重點(diǎn):,1、熟悉操作系統(tǒng)作用和定義,了解操作系統(tǒng)的歷史。 2、了解二類計(jì)算機(jī)硬件系統(tǒng)結(jié)構(gòu),熟悉現(xiàn)代操作系統(tǒng)的硬件基礎(chǔ)——通道和中斷。 3、熟練掌握多道程序設(shè)計(jì)技術(shù)的概念,掌握批處理系統(tǒng)、分時(shí)系統(tǒng)及實(shí)時(shí)系統(tǒng)三種操作系統(tǒng)基本類型,了解微機(jī)操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)。 4、掌握
3、操作系統(tǒng)并發(fā)性、共享性、虛擬性和異步性等特征,了解現(xiàn)代操作系統(tǒng)特征,熟悉操作系統(tǒng)功能。,本章難點(diǎn):,“多道程序系統(tǒng)”的功能實(shí)現(xiàn)“分時(shí)操作系統(tǒng)”的功能實(shí)現(xiàn)真正理解操作系統(tǒng)的主要特征,第1章 操作系統(tǒng)引論,1.1 操作系統(tǒng)的目標(biāo)和作用 1.2 操作系統(tǒng)的發(fā)展過程 1.3 操作系統(tǒng)的功能和主要特征1.4 操作系統(tǒng)的機(jī)制和策略1.5 操作系統(tǒng)的體系結(jié)構(gòu) 1.6 典型操作系統(tǒng)簡介,本章學(xué)習(xí)目標(biāo),掌握操作系統(tǒng)的概念及作用了解操作系統(tǒng)
4、的發(fā)展過程掌握操作系統(tǒng)的特征與功能牢記多道程序設(shè)計(jì)的概念理解操作系統(tǒng)的模型,1·1 操作系統(tǒng)的目標(biāo)和作用,1.存儲(chǔ)程序計(jì)算機(jī)的組成,1.1.1 馮.諾依曼結(jié)構(gòu)的計(jì)算機(jī),(1) 概念和模型過于復(fù)雜,用戶編程十分困難 在裸機(jī)基礎(chǔ)上通過軟件構(gòu)造一個(gè)概念和模型相對(duì)簡單,更容易理解和進(jìn)行程序設(shè)計(jì)的虛擬機(jī),可以認(rèn)為這個(gè)虛擬機(jī)就是操作系統(tǒng),如磁盤管理。和裸機(jī)提供的概念和模型相比,操作系統(tǒng)構(gòu)造和提供的概念和模型要簡單得多,用戶也
5、更容易編程和使用。(2)性能不高 裸機(jī)提供的概念和模型過于復(fù)雜,用戶直接對(duì)裸機(jī)編制的程序,程序運(yùn)行時(shí)效率往往非常低,其原因在于直接對(duì)裸機(jī)編程,用戶往往不能充分利用裸機(jī)提供的資源,特別是不能最大限度的開發(fā)系統(tǒng)的并行性。如多道程序技術(shù)。,2.直接使用裸機(jī)的困難,示例,1.現(xiàn)代計(jì)算機(jī)系統(tǒng)的組成,1.1.2 操作系統(tǒng)的作用,2.操作系統(tǒng)在計(jì)算機(jī)系統(tǒng)中的地位,緊貼系統(tǒng)硬件之上,所有其他軟件之下(是其他軟件的共同環(huán)境),(1)從資源管理的觀
6、點(diǎn)—OS作為資源管理器: OS的首要任務(wù)是管理計(jì)算機(jī)系統(tǒng)中硬件與軟件資源,使其得到充分而有效的利用:1)跟蹤資源狀態(tài):時(shí)刻掌握計(jì)算機(jī)系統(tǒng)中資源的使用情況。2)分配資源:處理對(duì)資源的使用請(qǐng)求,協(xié)調(diào)沖突,確定資源分配算法。3)回收資源:回收用戶釋放的資源,以便下次重新分配。 4)保護(hù)資源:負(fù)責(zé)對(duì)系統(tǒng)資源的保護(hù),避免受破壞。,3.操作系統(tǒng)的作用(體現(xiàn)在三個(gè)方面),操作系統(tǒng)作為資源管理器的觀點(diǎn)是目前人們對(duì)操作系統(tǒng)認(rèn)識(shí)的一個(gè)主要
7、觀點(diǎn),根據(jù)此觀點(diǎn),人們將計(jì)算機(jī)資源劃分為四大類: 1)處理機(jī) 2)存儲(chǔ)器 3)I/O設(shè)備 4)信息(程序與數(shù)據(jù)) 相應(yīng)可將操作系統(tǒng)分為四類管理器: 1)處理機(jī)管理 2)存儲(chǔ)管理 3)設(shè)備管理 4)信息管理(文件系統(tǒng)),(2)從軟件分層、擴(kuò)允機(jī)器的觀點(diǎn)—虛擬機(jī):提供硬件的高層界面(虛擬機(jī)),取消硬件限制1)操作系統(tǒng)提供無限的內(nèi)存、無限
8、的CPU2)擴(kuò)充機(jī)器,功能更強(qiáng)大,使用更方便【虛擬機(jī)】:使用戶和程序員在不必涉及和了解硬件工作細(xì)節(jié)的情況下能方便的使用計(jì)算機(jī),而為用戶所提供的一個(gè)等價(jià)的擴(kuò)展計(jì)算機(jī),稱為虛擬計(jì)算機(jī)。,(3)從服務(wù)用戶的觀點(diǎn)—OS用戶與裸機(jī)間接口:操作系統(tǒng)為方便用戶使用計(jì)算機(jī)提供了二級(jí)訪問接口:1)命令接口:命令行。 2)調(diào)用接口:形式上類似于過程調(diào)用,在應(yīng)用編程中使用。 3)圖形接口:圖形用戶界面GUI,方便用戶使用。編程更為容
9、易,軟件可移植性增強(qiáng);使用更為方便。,1.操作系統(tǒng)的目標(biāo)有效性(系統(tǒng)管理人員的觀點(diǎn)):管理和分配硬件、軟件資源,合理地組織計(jì)算機(jī)的工作流程方便性(用戶的觀點(diǎn))提供良好的、一致的用戶接口,彌補(bǔ)硬件系統(tǒng)的類型和數(shù)量差別可擴(kuò)充性與開放性(開放的觀點(diǎn)):硬件類型和規(guī)模、操作系統(tǒng)本身的功能和管理策略、多個(gè)系統(tǒng)間的資源共享和互操作。,1.1.3 操作系統(tǒng)的目標(biāo)與定義,2.操作系統(tǒng)的定義,操作系統(tǒng)是控制和管理計(jì)算機(jī)系統(tǒng)的硬件和
10、軟件資源,合理的組織計(jì)算機(jī)工作流程以及方便用戶使用的程序和數(shù)據(jù)的集合。 設(shè)置操作系統(tǒng)的目的就是提高計(jì)算機(jī)系統(tǒng)的效率,增強(qiáng)系統(tǒng)的處理能力,充分發(fā)揮系統(tǒng)的利用率,方便用戶使用。,1·2 操作系統(tǒng)的發(fā)展過程,操作系統(tǒng)發(fā)展的主要?jiǎng)恿κ怯脩舻男枨?,并隨著計(jì)算機(jī)硬件技術(shù)、軟件技術(shù)的發(fā)展而不斷發(fā)展完善。 1)提高資源的利用率和系統(tǒng)性能:計(jì)算機(jī)發(fā)展的初期,計(jì)算機(jī)系統(tǒng)昂貴,用作集中計(jì)算 2)方便用戶:用戶上機(jī)
11、、調(diào)試程序,分散計(jì)算時(shí)的事務(wù)處理和非專業(yè)用戶。 3)硬件的發(fā)展:CPU的位寬度(指令和數(shù)據(jù))、快速外存、新硬件、新技術(shù)的出現(xiàn)等。 4)計(jì)算機(jī)體系結(jié)構(gòu)的不斷發(fā)展。,1·2 OS的發(fā)展史—手工,1、手工操作 (1946 ~ 50年代,電子管時(shí)代)【特點(diǎn)】:計(jì)算機(jī)資源昂貴 ,沒有操作系統(tǒng)【工作方式】:用戶:用戶既是程序員、操作員,還是計(jì)算機(jī)專業(yè)人員;編程語言:為機(jī)器語言;輸入輸出:紙帶或卡片;【計(jì)算機(jī)的
12、工作特點(diǎn)】:用戶獨(dú)占全機(jī):用戶獨(dú)占計(jì)算機(jī)所有資源,資源利用率低;CPU等待用戶:計(jì)算前,手工裝入紙帶或卡片;計(jì)算完成后,手工卸取紙帶或卡片;CPU利用率低;【主要矛盾】:計(jì)算機(jī)處理能力的提高,手工操作的低效率用戶獨(dú)占全機(jī)的所有資源;,圖例,手工時(shí)期的操作,聯(lián)機(jī)批處理,1·2 OS的發(fā)展史—單道,2、單道批處理系統(tǒng)( 50年代末 ~ 60年代中,晶體管)【特點(diǎn)】: 利用磁帶把若干個(gè)作業(yè)分類編成作業(yè)執(zhí)行序列
13、,每個(gè)批作業(yè)由一個(gè)專門的監(jiān)督程序(Monitor)自動(dòng)依次處理。可使用匯編語言開發(fā)?!九幚碇械淖鳂I(yè)的組成】:用戶程序數(shù)據(jù)作業(yè)說明書(作業(yè)控制語言)【批處理】:供一次加載的磁帶或磁盤,通常由若干個(gè)作業(yè)組裝成,在處理中使用一組相同的系統(tǒng)軟件(系統(tǒng)帶),1·2 OS的發(fā)展史—單道,批處理方式可分為聯(lián)機(jī)批處理和脫機(jī)批處理。1)聯(lián)機(jī)批處理用戶提交作業(yè):以紙帶或卡片為介質(zhì);操作員合成批作業(yè):結(jié)果為磁帶介質(zhì);批作業(yè)處理
14、:對(duì)批作業(yè)中的每個(gè)作業(yè)進(jìn)行相同的處理:從磁帶讀入用戶作業(yè)和編譯鏈接程序,編譯鏈接用戶作業(yè),生成可執(zhí)行程序;啟動(dòng)執(zhí)行;執(zhí)行結(jié)果輸出。【存在的問題】: 慢速的輸入輸出處理仍直接由主機(jī)來完成。輸入輸出時(shí),CPU處于等待狀態(tài)。,1·2 OS的發(fā)展史—單道,2)脫機(jī)批處理,系統(tǒng)庫,1·2 OS的發(fā)展史—單道,2)脫機(jī)批處理 利用衛(wèi)星機(jī)完成輸入輸出功能。主機(jī)與衛(wèi)星機(jī)可并行工作。衛(wèi)星機(jī):完成面向用戶
15、的輸入輸出(紙帶或卡片),中間結(jié)果暫存在磁帶或磁盤上。作業(yè)控制命令由監(jiān)督程序(monitor)來執(zhí)行,完成如裝入程序、編譯、運(yùn)行等操作?!緝?yōu)點(diǎn)】:同一批內(nèi)各作業(yè)的自動(dòng)依次更替,改善了主機(jī)CPU和I/O設(shè)備的使用效率,提高了吞吐量?!救秉c(diǎn)】:磁帶或磁盤需要人工裝卸,作業(yè)需要人工分類,監(jiān)督程序易遭到用戶程序的破壞(由人工干預(yù)才可恢復(fù))。,1·2 OS的發(fā)展史—單道,【單道批處理的特征】:自動(dòng)性:磁帶上一批作業(yè)能自動(dòng)逐個(gè)依次
16、運(yùn)行對(duì)I/O為主的作業(yè),CPU空閑; 順序性:作業(yè)順序進(jìn)入內(nèi)存,執(zhí)行與完成的順序和調(diào)入的順序完全相同。單道性:內(nèi)存中僅有一道程序,只有該程序完成或發(fā)生異常時(shí),才調(diào)入后繼程序進(jìn)入內(nèi)存運(yùn)行【單道批處理的主要問題】: 一個(gè)用戶獨(dú)占全部資源CPU負(fù)責(zé)計(jì)算,也負(fù)責(zé)傳輸,CPU與外設(shè)速度不匹配。 CPU與I/O串行資源利用率仍然很低。,中斷技術(shù)和通道技術(shù),60年代硬件兩個(gè)重大進(jìn)展:中斷技術(shù)和通道技術(shù) 1)
17、中斷:指CPU在收到外部中斷信號(hào)后,停止原來工作,轉(zhuǎn)去處理該中斷事件,完畢后回到原來斷點(diǎn)繼續(xù)工作。 【中斷處理過程】:中斷請(qǐng)求,中斷響應(yīng),中斷點(diǎn)(暫停當(dāng)前任務(wù)并保存現(xiàn)場(chǎng)),中斷處理例程,中斷返回(恢復(fù)中斷點(diǎn)的現(xiàn)場(chǎng)并繼續(xù)原有任務(wù)。 【中斷分類】:硬件中斷(分為硬件故障中斷、I/O中斷和外部中斷)與軟件中斷(可分為程序中斷 和訪管中斷)。,中斷的處理過程,,中斷技術(shù)和通道技術(shù),2)通道(又稱為I/O處理機(jī)):實(shí)際上是一臺(tái)功能單一、
18、結(jié)構(gòu)簡單的I/O處理機(jī),它單獨(dú)與CPU,并直接控制外部設(shè)備,與內(nèi)存進(jìn)行數(shù)據(jù)傳輸。 通道有專用的I/O處理器,可與CPU并行工作。通道具有自己的指令(通道指令),可編程實(shí)現(xiàn)各種復(fù)雜的I/O處理??蓪?shí)現(xiàn) I/O聯(lián)機(jī)處理 【CPU與通道的通訊】:CPU與通道之間為主(CPU)從關(guān)系(通道),采用通道進(jìn)行數(shù)據(jù)傳輸?shù)倪^程如下:CPU向通道發(fā)出I/O指令;通道執(zhí)行通道程序進(jìn)行I/O操作;I/O完成或出錯(cuò)時(shí),以中斷方式請(qǐng)求CPU處理。,單通道
19、I/O系統(tǒng),,通道的四級(jí)連接,三級(jí)控制(CPU->通道->控制器->設(shè)備),【多道程序設(shè)計(jì)原理】:在計(jì)算機(jī)內(nèi)存中同時(shí)存放幾道相互獨(dú)立的程序,它們?cè)诠芾沓绦虻目刂葡孪嗷ゴ┎宓剡\(yùn)行,共享CPU和外設(shè)等資源。采用多道程序設(shè)計(jì)技術(shù)的批處理系統(tǒng)稱為多道批處理系統(tǒng)。 1)多道程序設(shè)計(jì)的實(shí)現(xiàn) 存儲(chǔ)保護(hù)與重定位。在多道程序設(shè)計(jì)環(huán)境中,幾道程序共享同一內(nèi)存,硬件必須提供必要的手段保證各道程序之間不互相侵犯。處理機(jī)管理和調(diào)度。多
20、道程序共享同一個(gè)處理機(jī),因此存在處理機(jī)的調(diào)度問題。資源的管理和調(diào)度。多道程序共享資源,同樣存在著資源的分配問題。,1·2 OS的發(fā)展史—多道,1·2 OS的發(fā)展史—多道,2)多道程序設(shè)計(jì)的特征多道。同時(shí)存在兩道或兩道以上的程序處于執(zhí)行的開始點(diǎn)和結(jié)束點(diǎn)中間。宏觀并行。都處于運(yùn)行狀態(tài),但都未運(yùn)行完;微觀串行。各作業(yè)交替使用CPU。 3)多道批處理系統(tǒng)的優(yōu)缺點(diǎn):資源利用率高:CPU和內(nèi)存利用率較高;作業(yè)吞吐
21、量大:單位時(shí)間內(nèi)完成工作總量大;用戶交互性差:整個(gè)作業(yè)完成后或中間出錯(cuò)時(shí),才與用戶交互,不利于調(diào)試和修改;作業(yè)平均周轉(zhuǎn)時(shí)間長:短作業(yè)的周轉(zhuǎn)時(shí)間(從作業(yè)提交到完成的這段時(shí)間)顯著增長;,單道和多道批處理的比較,多道程序系統(tǒng)和多處理系統(tǒng)(Multi-Processing System)的區(qū)別:前者指多個(gè)程序同時(shí)在內(nèi)存中交替運(yùn)行,后者指多個(gè)處理器。,多道批處理系統(tǒng)的資源利用,多道批處理系統(tǒng)的資源利用效率特征是基于各作業(yè)對(duì)系統(tǒng)資源的需求差異
22、得到的。 例如:有3個(gè)作業(yè)A、B、C,分別為計(jì)算、檢索和打印作業(yè),單道運(yùn)行時(shí)間分別為5分、15分和10分鐘。它們可并行在15分鐘內(nèi)完成3個(gè)作業(yè)。各資源在單道、多道環(huán)境下的利用效率是多少?,4)多道批處理系統(tǒng)的核心技術(shù):作業(yè)調(diào)度:作業(yè)的現(xiàn)場(chǎng)保存和恢復(fù)資源共享:資源的競(jìng)爭(zhēng)和同步——互斥機(jī)制內(nèi)存使用:提高內(nèi)存使用效率(為當(dāng)前由CPU執(zhí)行的程序提供足夠的內(nèi)存)——覆蓋(overlay),交換(swap)和虛擬存儲(chǔ)(virtual m
23、emory)內(nèi)存保護(hù):系統(tǒng)存儲(chǔ)區(qū)和各應(yīng)用程序存儲(chǔ)區(qū)不可沖突,即存儲(chǔ)保護(hù)文件非順序存放、隨機(jī)存取。,出現(xiàn)了:作業(yè)管理、處理機(jī)管理、存儲(chǔ)管理、設(shè)備管理、文件系統(tǒng)管理(file system),1·2 OS的發(fā)展史—多道,課堂練習(xí)1.1,操作系統(tǒng)是一種 A ,在操作系統(tǒng)中采用多道程序設(shè)計(jì)方式能提高CPU和外部設(shè)備的 B 。一般來說,為了實(shí)現(xiàn)多道程序設(shè)計(jì),計(jì)算機(jī)需要有 C 。A: (1)通用軟件; (2)系統(tǒng)軟件;
24、 (3)應(yīng)用軟件; (4)軟件包。B: (1)利用效率; (2)可靠性; (3)穩(wěn)定性; (4)兼容性。C:(1)更大的內(nèi)存; (2)更快的外部設(shè)備; (3)更快的CPU; (4)更先進(jìn)的終端;,答案:A(2),B(1),C(1),1·2 OS的發(fā)展史—分時(shí),4、分時(shí)操作系統(tǒng) (70年代中期至今,大規(guī)模集成電路)【分時(shí)】:兩個(gè)或兩個(gè)以上的事件按時(shí)間劃分輪流的使
25、用計(jì)算機(jī)系統(tǒng)的某一資源。 【分時(shí)系統(tǒng)】:多個(gè)用戶分時(shí)(分時(shí)的時(shí)間單位稱為時(shí)間片,通常為幾十毫秒)地使用同一計(jì)算機(jī)系統(tǒng)稱為分時(shí)系統(tǒng)。主要采用時(shí)鐘和中斷技術(shù)。 1)分時(shí)系統(tǒng)實(shí)現(xiàn)方法:系統(tǒng)配置多路卡及時(shí)接受各終端輸入命令和數(shù)據(jù)。及時(shí)處理,不允許某作業(yè)長期占用處理機(jī), 將響應(yīng)周期分為很短的時(shí)間片,在該周期內(nèi)每個(gè)作業(yè)輪流執(zhí)行一次(占一個(gè)時(shí)間片)。每個(gè)作業(yè)可以及時(shí)接收用戶的命令和數(shù)據(jù), 并能及時(shí)得到處理。,分時(shí)系統(tǒng)的結(jié)構(gòu)示意圖,,1
26、3;2 OS的發(fā)展史—分時(shí),2)分時(shí)系統(tǒng)的特點(diǎn):同時(shí)性或多路性:多用戶同時(shí)操作、使用計(jì)算機(jī)獨(dú)占性:各終端用戶感覺到自己獨(dú)占了計(jì)算機(jī);及時(shí)性:用戶的請(qǐng)求能在較短時(shí)間內(nèi)響應(yīng);交互性:用戶能與計(jì)算機(jī)進(jìn)行人—機(jī)對(duì)話。 3)調(diào)進(jìn)和調(diào)出(Roll-in / Roll-out)調(diào)進(jìn)/調(diào)出是實(shí)現(xiàn)分時(shí)系統(tǒng)的一種主要方式,包括:主存—后援存儲(chǔ)器方式:簡單分時(shí)系統(tǒng)所采用,特點(diǎn):內(nèi)存只存放一個(gè)當(dāng)前執(zhí)行作業(yè),其他放在外存上。多流調(diào)入調(diào)出方式:基于
27、多道程序技術(shù),特點(diǎn)主存中同時(shí)存放一個(gè)當(dāng)前執(zhí)行作業(yè)和多個(gè)后備作業(yè)。,1·2 OS的發(fā)展史—分時(shí),4)分時(shí)系統(tǒng)的響應(yīng)時(shí)間 響應(yīng)時(shí)間為用戶發(fā)出一條指令到系統(tǒng)處理完這條指令并做出回答所需要的時(shí)間。是衡量分時(shí)系統(tǒng)性能好壞的一條重要標(biāo)志,但具體的響應(yīng)時(shí)間與系統(tǒng)的用戶個(gè)數(shù)及時(shí)間片大小有關(guān)。響應(yīng)時(shí)間T與時(shí)間片q和用戶個(gè)數(shù)n之間的關(guān)系為T=n q 。 【注意】:分時(shí)系統(tǒng)在輪轉(zhuǎn)處理多個(gè)終端用戶的請(qǐng)
28、求時(shí),在調(diào)入/調(diào)出上增加了許多時(shí)間消耗,其中主要是主存與后援存儲(chǔ)器之間的信息交換時(shí)間。因此為改善響應(yīng)時(shí)間需要:加快主存與后援存儲(chǔ)器之間的對(duì)換速度;減少對(duì)換的信息量。 現(xiàn)在的許多操作系統(tǒng)都具有分時(shí)處理的功能,在分時(shí)系統(tǒng)的基礎(chǔ)上,操作系統(tǒng)的發(fā)展開始分化,如實(shí)時(shí)系統(tǒng)、通用系統(tǒng)、個(gè)人系統(tǒng)等。,課堂練習(xí)1.2,分時(shí)系統(tǒng)中,為使多個(gè)用戶能夠同時(shí)與系統(tǒng)交互,最關(guān)鍵的問題是 A ,當(dāng)用戶數(shù)目為100時(shí),為保證響應(yīng)不超過2秒;此時(shí)的時(shí)間片最大應(yīng)
29、為 B 。A: (1)計(jì)算機(jī)具有足夠的運(yùn)行速度; (2)內(nèi)存容量應(yīng)足夠大; (3)系統(tǒng)能及時(shí)地接收多個(gè)用戶輸入; (4)能在一短的時(shí)間內(nèi),使所有用戶程序都能運(yùn)行; (5)能快速進(jìn)行內(nèi)外存對(duì)換。B: (1)10ms; (2)20ms; (3)50ms; (4)100ms; (5)200ms。,答案:A(4),B(2),1·2 OS的發(fā)展史—實(shí)時(shí),5、實(shí)
30、時(shí)操作系統(tǒng) 實(shí)時(shí)操作系統(tǒng)主要用于過程控制、事務(wù)處理等有實(shí)時(shí)要求的領(lǐng)域,其主要特征是實(shí)時(shí)性和可靠性。 1)實(shí)時(shí)系統(tǒng)的分類:實(shí)時(shí)控制:要求與被控制的變化速度相比,其反應(yīng)速度足夠快;工作安全可靠;需要人工干預(yù)時(shí),操作簡便。如生產(chǎn)過程控制,宇航自動(dòng)控制等。實(shí)時(shí)信息處理系統(tǒng):要求計(jì)算機(jī)能夠在容許的延遲時(shí)間內(nèi),響應(yīng)外部的事件請(qǐng)求,完成對(duì)該事件的處理,并控制所有的實(shí)時(shí)設(shè)備和實(shí)時(shí)任務(wù)協(xié)調(diào)運(yùn)行。如飛機(jī)訂票系統(tǒng), 期貨、股票交
31、易系統(tǒng)等。,1·2 OS的發(fā)展史—實(shí)時(shí),2)實(shí)時(shí)系統(tǒng)的特征: 實(shí)時(shí)系統(tǒng)具有專用性、種類多、用途各異等特點(diǎn),其一個(gè)基本特征是事件驅(qū)動(dòng),即接收到某些外部信息后,由系統(tǒng)選擇某一程序去執(zhí)行,完成相應(yīng)的實(shí)時(shí)任務(wù)。實(shí)時(shí)時(shí)鐘管理。向系統(tǒng)提供日期、時(shí)刻以及定時(shí)任務(wù)(每間隔一固定時(shí)間循環(huán)執(zhí)行)和延遲任務(wù)(推遲一段時(shí)間后執(zhí)行)進(jìn)行控制的信號(hào)。中斷管理。實(shí)時(shí)系統(tǒng)必須有效和高速的完成各種中斷處理。系統(tǒng)容錯(cuò)管理。高可靠性一直是實(shí)時(shí)系統(tǒng)的
32、設(shè)計(jì)目標(biāo)。,1·2 OS的發(fā)展史—實(shí)時(shí),多重任務(wù)管理。實(shí)時(shí)系統(tǒng)的物理過程具有并發(fā)性的特點(diǎn),因此實(shí)時(shí)系統(tǒng)應(yīng)具備多重任務(wù)處理的能力,且強(qiáng)調(diào)任務(wù)調(diào)度與轉(zhuǎn)換的高效性。系統(tǒng)生成能力。實(shí)時(shí)系統(tǒng)大多是專用性的系統(tǒng),其種類與規(guī)模相差較大,因此,要求實(shí)時(shí)操作系統(tǒng)應(yīng)具有較強(qiáng)的生成能力,以便根據(jù)需要裁剪或補(bǔ)貼系統(tǒng)功能,使之與應(yīng)用系統(tǒng)相適應(yīng)。 目前的操作系統(tǒng),通常具有分時(shí)、實(shí)時(shí)和批處理功能,又稱作通用操作系統(tǒng)。可適用于計(jì)算、事務(wù)處理等
33、多種領(lǐng)域,能運(yùn)行在多種硬件平臺(tái)上,如 UNIX系統(tǒng)、Windows NT等?!ㄓ没?、小型化,分時(shí)系統(tǒng)與實(shí)時(shí)系統(tǒng)的比較,1)系統(tǒng)的設(shè)計(jì)目標(biāo)不同。分時(shí)系統(tǒng)是提供一種隨時(shí)可供多個(gè)用戶使用的通用型很強(qiáng)的操作系統(tǒng),而實(shí)時(shí)操作系統(tǒng)大多數(shù)是具有特殊用途的專用系統(tǒng)。 2)交互性的強(qiáng)弱。分時(shí)具有較強(qiáng)的對(duì)話與交互能力,而實(shí)時(shí)系統(tǒng)交互性很弱。 3)響應(yīng)時(shí)間的長短。分時(shí)只要能滿足一般用戶能接受的等待時(shí)間即可,而實(shí)時(shí)系統(tǒng)的響應(yīng)時(shí)間要求嚴(yán)格。 4)
34、另外其均具備多路性、獨(dú)立性、及時(shí)性、交互性、可靠性,只是實(shí)時(shí)系統(tǒng)對(duì)系統(tǒng)的及時(shí)性和可靠性要求更高。,1·2 OS的發(fā)展史—網(wǎng)絡(luò),6、網(wǎng)絡(luò)操作系統(tǒng)(NOS,Network Operating System) 網(wǎng)絡(luò)操作系統(tǒng)是在通常操作系統(tǒng)功能的基礎(chǔ)上提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)服務(wù)功能的操作系統(tǒng)。,1·2 OS的發(fā)展史—網(wǎng)絡(luò),【計(jì)算機(jī)網(wǎng)絡(luò)基本概念】1)計(jì)算機(jī)網(wǎng)絡(luò):計(jì)算機(jī)網(wǎng)絡(luò)是計(jì)算機(jī)技術(shù)與通信技術(shù)相結(jié)合的產(chǎn)物,是互連起
35、來的計(jì)算機(jī)的集合.2)計(jì)算機(jī)網(wǎng)絡(luò)產(chǎn)生的背景:微電子技術(shù)的發(fā)展與進(jìn)步;計(jì)算機(jī)的應(yīng)用社會(huì)化;通信技術(shù)的進(jìn)步和普及。3)特征: 資源共享性;獨(dú)立自主性4)微機(jī)網(wǎng)絡(luò):微型機(jī)技術(shù)的巨大進(jìn)展, 微機(jī)網(wǎng)絡(luò)也隨之崛起,并獲得高速的發(fā)展,巳成為計(jì)算機(jī)網(wǎng)絡(luò)中最活躍的一個(gè)分枝。,1·2 OS的發(fā)展史—網(wǎng)絡(luò),【網(wǎng)絡(luò)的構(gòu)成】:1)主機(jī)(HOST):主機(jī)是組成網(wǎng)絡(luò)的獨(dú)立自主的計(jì)算機(jī)系統(tǒng),用于運(yùn)行用戶程序(即應(yīng)用程序)。2)子網(wǎng)(通信子網(wǎng)) :
36、 是將入網(wǎng)主機(jī)連接起來的實(shí)體。子網(wǎng)的任務(wù)是在入網(wǎng)主機(jī)之間傳遞信息,以提供通信服務(wù).,3)協(xié)議(protocol):網(wǎng)絡(luò)計(jì)算機(jī)在互相通信時(shí)為能正確進(jìn)行并相互理解通信內(nèi)容需遵循的約定。如TCP/IP等。,1·2 OS的發(fā)展史—網(wǎng)絡(luò),【網(wǎng)絡(luò)操作系統(tǒng) 】 : 在通常的操作系統(tǒng)中增加了實(shí)現(xiàn)網(wǎng)絡(luò)低層協(xié)議(一般到傳送層)功能和網(wǎng)絡(luò)設(shè)備管理功能的操作系統(tǒng)。如UNIX、LINUX, WINDOWS NT都是網(wǎng)絡(luò)操作系統(tǒng)?!揪W(wǎng)絡(luò)OS功能】
37、: 高效、可靠的網(wǎng)絡(luò)通信 對(duì)網(wǎng)絡(luò)中共享資源(在LAN中有硬盤、打印機(jī)等)有效的管理 提供電子郵件、文件傳輸、共享硬盤、打印機(jī)等服務(wù) 網(wǎng)絡(luò)安全管理 提供互操作能力,1·2 OS的發(fā)展史—分布,7、分布式操作系統(tǒng)(Distributed Operating System) 1)分布式計(jì)算機(jī)系統(tǒng)是以計(jì)算機(jī)網(wǎng)絡(luò)為基礎(chǔ)的計(jì)算機(jī)系統(tǒng),包含多臺(tái)處理機(jī),每臺(tái)處理機(jī)完成系統(tǒng)中指定的一部分功能。 從硬件上講,它與計(jì)算機(jī)局域網(wǎng)沒有任何區(qū)
38、別,關(guān)鍵是軟件?!咎卣鳌浚阂杂?jì)算機(jī)網(wǎng)絡(luò)為基礎(chǔ);處理上的分布,即功能和任務(wù)的分布。所有系統(tǒng)任務(wù)可在系統(tǒng)中任何處理機(jī)上運(yùn)行,自動(dòng)實(shí)現(xiàn)全系統(tǒng)范圍內(nèi)的任務(wù)分配并自動(dòng)調(diào)度各處理機(jī)的工作負(fù)載。堅(jiān)強(qiáng)性(強(qiáng)壯性) 高可靠性,2)分布式操作系統(tǒng)的特點(diǎn) 分布式和集中式操作系統(tǒng)的主要區(qū)別在于通訊、資源管理和系統(tǒng)結(jié)構(gòu)三個(gè)方面。分布式主要特點(diǎn)是:系統(tǒng)狀態(tài)的不確定性。各系統(tǒng)內(nèi)結(jié)點(diǎn)自治,且信息傳播需要時(shí)間,很
39、難及時(shí)和準(zhǔn)確把握系統(tǒng)的狀態(tài)信息。控制機(jī)構(gòu)的復(fù)雜性。不存在主從關(guān)系或?qū)哟侮P(guān)系,增加了控制的復(fù)雜性。通訊開銷引起性能下降。 3)分布式OS的功能: (1) 進(jìn)程遷移 (2) 分布式同步 (3) 任務(wù)分配 (4) 資源管理,1·2 OS的發(fā)展史—分布,網(wǎng)絡(luò)和分布式的區(qū)別,1) 分布式系統(tǒng)的各個(gè)計(jì)算機(jī)之間處于平等 地位無主從關(guān)系;網(wǎng)絡(luò)有一些主從關(guān)系2) 分布式系統(tǒng)資源為所有用戶共享;而網(wǎng)絡(luò)有限制地
40、共享。3) 分布式系統(tǒng)中一項(xiàng)任務(wù)可分給若干處理單元相互協(xié)作共同完成,而網(wǎng)絡(luò)往往是各司其責(zé),1·2 OS的發(fā)展史—多處理機(jī),8、多處理操作系統(tǒng)(Multi-processor Operating System) 多處理機(jī)系統(tǒng)是由多臺(tái)處理器組成的計(jì)算機(jī)系統(tǒng)。多處理操作系統(tǒng)的出現(xiàn)是為了提高計(jì)算機(jī)系統(tǒng)性能和可靠性。提高性能有兩條途徑:提高各個(gè)組成部分的速度、或增大處理的并行程度。1975年前后,出現(xiàn)多處理機(jī)系統(tǒng)(mult
41、i-processor)?!径嗵幚頇C(jī)系統(tǒng)的特點(diǎn)】:增加系統(tǒng)的吞吐量:N個(gè)處理器加速比達(dá)不到N倍(額外的調(diào)度開銷,算法的并行化)提高系統(tǒng)可靠性:故障時(shí)系統(tǒng)降級(jí)運(yùn)行,【多處理機(jī)系統(tǒng)的類型】:緊密耦合:各處理機(jī)之間通過快速總線或開關(guān)陣列相連,共享內(nèi)存,整體系統(tǒng)由一個(gè)統(tǒng)一的OS管理(一個(gè)OS核心)。松散耦合:各處理機(jī)帶有各自的存儲(chǔ)器、I/O設(shè)備和操作系統(tǒng),通過通道或通信線路相連。每個(gè)處理機(jī)上獨(dú)立運(yùn)行OS。,1·2 OS的發(fā)
42、展史—多處理機(jī),【多處理操作系統(tǒng)的類型】:非對(duì)稱式多處理:又稱主從模式。主處理器:只有一個(gè),運(yùn)行OS。管理整個(gè)系統(tǒng)的資源,為從處理器分配任務(wù);從處理器:可有多個(gè),執(zhí)行應(yīng)用程序或I/O處理。特點(diǎn):不同性質(zhì)任務(wù)的負(fù)載不均,可靠性不夠高,不易移植(通常要求硬件也是"非對(duì)稱")。對(duì)稱式多處理:OS交替在各個(gè)處理器上執(zhí)行。任務(wù)負(fù)載較為平均,性能調(diào)節(jié)容易。,1·2 OS的發(fā)展史—多處理機(jī),課堂練習(xí)1.3,在設(shè)
43、計(jì)分時(shí)操作系統(tǒng)時(shí),首先要考慮的是 A ;在設(shè)計(jì)實(shí)時(shí)操作系統(tǒng)時(shí),首先要考慮的是 B ;在設(shè)計(jì)批處理系統(tǒng)時(shí),首先要考慮的是 C 。A、B、C: (1)靈活性和可適應(yīng)性; (2)交互性和響應(yīng)時(shí)間; (3)周轉(zhuǎn)時(shí)間和系統(tǒng)吞吐量; (4)實(shí)時(shí)性和可靠性。,答案:A(2),B(4),C(3),課堂練習(xí)1.4,為了提高計(jì)算機(jī)的處理機(jī)和外部設(shè)備的利用率,把多個(gè)程序同時(shí)放入主存,在宏觀上并行運(yùn)行是 A ;把一個(gè)程序劃分成若干個(gè)同
44、時(shí)執(zhí)行的程序模塊的設(shè)計(jì)方法是 B ;多個(gè)用戶在終端設(shè)備上的交互方式輸入、排錯(cuò)和控制其程序的運(yùn)行是 C ;由多個(gè)計(jì)算機(jī)組成的一個(gè)系統(tǒng),這些計(jì)算機(jī)之間可以通信來交換信息,互相之間無主次之分,它們共享系統(tǒng)資源,程序由系統(tǒng)中的全部或部分計(jì)算機(jī)協(xié)同執(zhí)行,管理上述計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)是 D ;有一類操作系統(tǒng)的系統(tǒng)響應(yīng)時(shí)間的重要性超過系統(tǒng)資源的利用率,它被廣泛地應(yīng)用于衛(wèi)星控制、飛機(jī)訂票業(yè)務(wù)等領(lǐng)域是 E 。A—E:①分時(shí)OS ②實(shí)時(shí)OS ③批處
45、理系統(tǒng) ④網(wǎng)絡(luò)OS⑤分布式OS ⑥單用戶OS ⑦多重程序設(shè)計(jì) ⑧多道程序設(shè)計(jì) ⑨并發(fā)程序設(shè)計(jì),答案:A(8),B(9),C(1),D(5),E(2),1·3 OS的功能和主要特征,1.操作系統(tǒng)的功能 操作系統(tǒng)的主要任務(wù)是對(duì)系統(tǒng)中的軟件、硬件實(shí)施有效的管理,以提高系統(tǒng)資源(主要包括處理機(jī)、主存儲(chǔ)器和外存儲(chǔ)器、文件系統(tǒng))的利用率。主要功能如下: (1)處理機(jī)管
46、理: (2)存儲(chǔ)管理 (3)設(shè)備管理 (4)信息管理 (5)用戶接口,1·3 OS的功能和主要特征,(1)處理機(jī)管理: 可歸結(jié)為進(jìn)程管理,包括以下方面 進(jìn)程控制。創(chuàng)建進(jìn)程,撤銷進(jìn)程,控制進(jìn)程的運(yùn)行狀態(tài)轉(zhuǎn)換。進(jìn)程調(diào)度。從就緒的進(jìn)程隊(duì)列中選擇一進(jìn)程并把處理機(jī)分配給它,設(shè)置現(xiàn)場(chǎng)并是指投入運(yùn)行。進(jìn)程同步。設(shè)置進(jìn)程同步信息,以協(xié)調(diào)系統(tǒng)中各進(jìn)程的運(yùn)行。進(jìn)程通訊。負(fù)責(zé)進(jìn)程間的信息交換。,1·3 OS的功
47、能和主要特征,(2)存儲(chǔ)管理: 為多道程序的運(yùn)行提供良好的環(huán)境,并提高利用率,包括以下方面:地址重定位。實(shí)現(xiàn)邏輯地址到物理地址的轉(zhuǎn)換。存儲(chǔ)分配。為每道程序分配內(nèi)存空間,并在作業(yè)結(jié)束后收回其所占用內(nèi)存。存儲(chǔ)保護(hù)。保證每道程序之間不能互相侵犯,尤其是不能侵犯操作系統(tǒng)。存儲(chǔ)擴(kuò)充。通過建立虛擬存儲(chǔ)系統(tǒng)來實(shí)現(xiàn)內(nèi)存邏輯上的擴(kuò)充。,1·3 OS的功能和主要特征,(3)設(shè)備管理: 設(shè)備管理的主要目標(biāo)是方便的設(shè)備使用
48、、提高CPU與I/O設(shè)備利用率。主要包括:緩沖管理:設(shè)立I/O緩沖區(qū),并對(duì)緩沖區(qū)進(jìn)行有效管理。設(shè)備分配:按一定策略和設(shè)備使用情況,分配并回收設(shè)備。設(shè)備處理:即設(shè)備驅(qū)動(dòng)程序,實(shí)現(xiàn)CPU和設(shè)備控制器之間的通訊等。設(shè)備獨(dú)立性和虛擬設(shè)備:獨(dú)立性指應(yīng)用程序獨(dú)立于物理設(shè)備,使用戶編程與實(shí)際使用的設(shè)備無關(guān),增強(qiáng)了可移植性。虛擬設(shè)備指將低速的設(shè)備改造為高速的共享設(shè)備。,1·3 OS的功能和主要特征,(4)信息管理(文件系統(tǒng)管理):
49、 對(duì)用戶文件和系統(tǒng)文件進(jìn)行管理,解決文件資源的存儲(chǔ)、共享、保密和保護(hù)。包括以下方面:目錄管理:為每一文件建立目錄項(xiàng),并對(duì)目錄實(shí)施有效的組織與管理。文件的讀寫管理和存取控制:解決信息安全問題。系統(tǒng)設(shè)口令“哪個(gè)用戶”、用戶分類“哪個(gè)用戶組”、文件權(quán)限“針對(duì)用戶或用戶組的讀寫權(quán)”。文件存儲(chǔ)空間管理:解決如何存放信息,以提高空間利用率和讀寫性能。軟件管理:軟件的版本、相互依賴關(guān)系、安裝和拆除等。,1·3 OS的功能和主要
50、特征,(5)用戶接口 目標(biāo)是提供一個(gè)友好的用戶訪問操作系統(tǒng)的接口。操作系統(tǒng)提供三種接口:命令接口:亦稱為作業(yè)控制機(jī)接口,分為聯(lián)機(jī)命令和脫機(jī)命令接口。供用戶用于組織和控制自己的作業(yè)運(yùn)行。命令行;命令腳本“脫機(jī)”。程序接口:用戶獲得操作系統(tǒng)服務(wù)的唯一途徑。供用戶程序和系統(tǒng)程序調(diào)用操作系統(tǒng)功能。系統(tǒng)調(diào)用和高級(jí)語言庫函數(shù)。圖形接口:圖形用戶界面GUI,方便用戶使用。如窗口、菜單等。,1·3 OS的功能和主要特征,2.現(xiàn)
51、代操作系統(tǒng)的主要特征 設(shè)置操作系統(tǒng)的目的就是提高計(jì)算機(jī)系統(tǒng)的效率,增強(qiáng)系統(tǒng)的處理能力,充分發(fā)揮系統(tǒng)的利用率,方便用戶使用。因此現(xiàn)代操作系統(tǒng)普遍采用以多道程序設(shè)計(jì)為基礎(chǔ)的并行操作技術(shù)。主要特征如下: (1)并發(fā)性(concurrency) (2)共享性(sharing) (3)虛擬性(virtual) (4)異步性(asynchronism),1·3 OS的功能和主要特征,(1)并發(fā)性(concurr
52、ency) 多個(gè)事件在同一時(shí)間段內(nèi)發(fā)生。操作系統(tǒng)是一個(gè)并發(fā)系統(tǒng),各進(jìn)程間的并發(fā),系統(tǒng)與應(yīng)用間的并發(fā)。操作系統(tǒng)要完成這些并發(fā)過程的管理。并行(parallel)是指在同一時(shí)刻發(fā)生。在多道程序處理時(shí),宏觀上并發(fā),微觀上交替執(zhí)行(在單處理器情況下) 。程序的靜態(tài)實(shí)體是可執(zhí)行文件,而動(dòng)態(tài)實(shí)體是進(jìn)程(或稱作任務(wù)),并發(fā)指的是進(jìn)程。,1·3 OS的功能和主要特征,(2)共享性(sharing) 多個(gè)進(jìn)程共享有限的計(jì)
53、算機(jī)系統(tǒng)資源。操作系統(tǒng)要對(duì)系統(tǒng)資源進(jìn)行合理分配和使用。資源在一個(gè)時(shí)間段內(nèi)交替被多個(gè)進(jìn)程所用。互斥共享方式(如音頻設(shè)備),資源分配后到釋放前,不能被其他進(jìn)程所用。同時(shí)訪問方式,(如可重入代碼,磁盤文件)。資源分配難以達(dá)到最優(yōu)化,1·3 OS的功能和主要特征,(3)虛擬性(virtual) 一個(gè)物理實(shí)體映射為若干個(gè)對(duì)應(yīng)的邏輯實(shí)體(分時(shí)或分空間)。虛擬是操作系統(tǒng)管理系統(tǒng)資源的重要手段,可提高資源利用率。 CPU—
54、—每個(gè)用戶(進(jìn)程)的“虛處理機(jī)”。存儲(chǔ)器——每個(gè)進(jìn)程都占有的地址空間(指令+數(shù)據(jù)+堆棧)。顯示設(shè)備——多窗口或虛擬終端如虛擬光驅(qū),虛擬機(jī)(VMWare, Virtual PC等),1·3 OS的功能和主要特征,(4)異步性(asynchronism) 異步性也稱不確定性,指進(jìn)程的執(zhí)行順序和執(zhí)行時(shí)間及執(zhí)行結(jié)果的不確定性:程序執(zhí)行結(jié)果不確定,不可再現(xiàn)。相同輸入與環(huán)境下多次運(yùn)行結(jié)果不同。多道程序設(shè)計(jì)環(huán)境下,程序
55、按異步方式運(yùn)行。多個(gè)進(jìn)程并發(fā)執(zhí)行,“時(shí)走時(shí)停”,不可預(yù)知每個(gè)進(jìn)程的運(yùn)行推進(jìn)快慢,引發(fā)執(zhí)行順序與時(shí)間的不確定。,1.4 操作系統(tǒng)的機(jī)制和策略,1.操作系統(tǒng)界面 兩個(gè)界面:程序界面和操作界面。2.核心態(tài)和用戶態(tài) (1)核心態(tài)(管態(tài)、系統(tǒng)態(tài))與用戶態(tài)(目態(tài)、非系統(tǒng)態(tài))。 (2)特權(quán)指令與非特權(quán)指令:只能在核心態(tài)下處理機(jī)才能夠執(zhí)行的指令稱為特權(quán)指令,其它的指令稱為非特權(quán)指令。 (3) 狀態(tài)轉(zhuǎn)換:訪管指令指訪問核心態(tài)下的程序指令。
56、在奔騰處理機(jī)中通過軟中斷指令實(shí)現(xiàn)處理機(jī)的狀態(tài)從用戶態(tài)向核心態(tài)的切換,通過中斷返回指令實(shí)現(xiàn)從核心態(tài)向用戶態(tài)的切換。3.特權(quán)指令特權(quán)指令為了實(shí)現(xiàn)保護(hù),防止某些用戶執(zhí)行一些惡意的操作。典型的特權(quán)指令如下:(1) 輸入/輸出指令(2) 開關(guān)中斷指令:(3) 停機(jī)指令: (4) 訪問特殊功能寄存器:,中斷和異常:如果由于當(dāng)前正在執(zhí)行指令的原因而引起處理機(jī)暫停執(zhí)行當(dāng)前程序,稱為異常。異常是由處理機(jī)所執(zhí)行的程序本身引起的,一般用于操作系統(tǒng)
57、實(shí)現(xiàn)某些機(jī)制。而如果不是由于當(dāng)前正在執(zhí)行的指令的原因而引起處理機(jī)暫停執(zhí)行當(dāng)前程序,稱為中斷。中斷一般用于輸入/輸出時(shí)外設(shè)請(qǐng)求處理機(jī)對(duì)其進(jìn)行處理。異常的產(chǎn)生的原因:(1)應(yīng)用程序執(zhí)行的指令在邏輯上就是錯(cuò)誤的,例如應(yīng)用程序執(zhí)行了非法指令(引起非法指令異常)、又如在用戶態(tài)下執(zhí)行了特權(quán)指令(引起保護(hù)異常)等;(2)當(dāng)前執(zhí)行的程序是正確的,但是由于某些原因,應(yīng)用程序當(dāng)前執(zhí)行的指令無法執(zhí)行,解決了這些原因以后,應(yīng)用程序也就能夠繼續(xù)執(zhí)行了,而這
58、些原因一般是能夠解決的。如存儲(chǔ)訪問失效異常屬于第二類異常??苫謴?fù)異常的產(chǎn)生和處理是實(shí)現(xiàn)操作系統(tǒng)時(shí)很重要的一種機(jī)制,許多操作系統(tǒng)功能都是通過可恢復(fù)異常實(shí)現(xiàn)的。,4.可恢復(fù)異常和指令重啟動(dòng),5.操作系統(tǒng)機(jī)制和策略,6.操作系統(tǒng)內(nèi)核系統(tǒng)必須有一個(gè)部分能對(duì)硬件處理器及有關(guān)資源進(jìn)行首次改造,以便給進(jìn)程的執(zhí)行提供良好運(yùn)行環(huán)境,這個(gè)部分就是操作系統(tǒng)的內(nèi)核。內(nèi)核結(jié)構(gòu)有微內(nèi)核和單內(nèi)核之分。內(nèi)核必須提供以下三方面功能:設(shè)計(jì)內(nèi)核要少而精
59、(1) 中斷處理。中斷處理要簡單 (2) 短程調(diào)度。調(diào)度算法要有效 (3) 原語管理。原語應(yīng)靈活有力,數(shù)量適當(dāng)內(nèi)核的執(zhí)行有以下屬性: (1)內(nèi)核是由中斷驅(qū)動(dòng)的。 (2)內(nèi)核的執(zhí)行是連續(xù)的。 (3)內(nèi)核在屏蔽中斷狀態(tài)下執(zhí)行。 (4)內(nèi)核可以使用特權(quán)指令。,操作系統(tǒng)中各個(gè)部分的功能、作用及其相互關(guān)系,稱為操作系統(tǒng)機(jī)制。機(jī)制問題也就是總體結(jié)構(gòu)問題,或者說總體
60、框架問題。確定了操作系統(tǒng)機(jī)制以后,具體到每一部分如何實(shí)現(xiàn),就需要一定的算法,這些算法屬于操作系統(tǒng)策略的問題。,內(nèi)核的作用:是操作系統(tǒng)對(duì)裸機(jī)的第一次改造,內(nèi)核和裸機(jī)組成了一臺(tái)沒有中斷虛擬機(jī)。虛擬機(jī)的特點(diǎn): (1) 虛擬機(jī)為每個(gè)進(jìn)程提供了一臺(tái)虛擬處理器,每個(gè)進(jìn)程就好象在各自的私有處理器上順序地推進(jìn),實(shí)現(xiàn)了多個(gè)進(jìn)程的并發(fā)執(zhí)行。 (2) 虛擬機(jī)為進(jìn)程提供了功能較強(qiáng)的指令系統(tǒng),即它們能夠使用機(jī)器非特權(quán)指令,系統(tǒng)調(diào)用和原語所組成的新
61、的指令系統(tǒng)。,7.核外抽象(1)進(jìn)程:運(yùn)行中的程序(2)線程:在一個(gè)多線程環(huán)境中,進(jìn)程是系統(tǒng)進(jìn)行保護(hù)和資源分配的單位,而線程則是進(jìn)程中一條執(zhí)行路徑,每個(gè)進(jìn)程中允許有多個(gè)并行執(zhí)行的路徑,而線程才是系統(tǒng)進(jìn)行調(diào)度的單位。,(3) 管程,管程是管理共享資源的程序(一種同步機(jī)制),對(duì)管程的調(diào)用表示對(duì)共享資源的請(qǐng)求與釋放。管程與進(jìn)程的區(qū)別:管程定義的是公用數(shù)據(jù)結(jié)構(gòu),而進(jìn)程則是私有數(shù)據(jù)結(jié)構(gòu);管程把共享變量上的同步操作集中起來,而臨界區(qū)卻分散在
62、每個(gè)進(jìn)程中;管程是為管理共享資源而建立的,進(jìn)程主要是為實(shí)現(xiàn)系統(tǒng)的并發(fā)性而引入的;管程是被欲使用共享資源的進(jìn)程所調(diào)用的,管程和調(diào)用它的進(jìn)程不能并行工作,而進(jìn)程之間能并行工作,并發(fā)性是其固有特性;管程是語言或操作系統(tǒng)的成分,不必創(chuàng)建或撤銷,而進(jìn)程有生命周期,由創(chuàng)建而產(chǎn)生至撤銷便消亡。,(4) 類程,類程用于管理私有資源,對(duì)類程的調(diào)用表示對(duì)私有資源的操作。它僅能被進(jìn)程及起源于同一進(jìn)程的其它類程或管程嵌套調(diào)用鏈所調(diào)用。其本身也可以調(diào)用其它
63、類程或管程。類程可以看作子程序概念的擴(kuò)充,但一個(gè)類程可以包含多個(gè)過程,不像子程序僅僅一個(gè)。采用進(jìn)程、管程、類程實(shí)現(xiàn)的操作系統(tǒng)中,進(jìn)程在執(zhí)行過程中若請(qǐng)求使用共享資源,則可以調(diào)用管程;若要控制私有資源操作,可以調(diào)用類程,這樣便于使用高級(jí)程序設(shè)計(jì)語言來書寫操作系統(tǒng)。1975年,漢森使用這一方法就成功地在PDP 11/45機(jī)上實(shí)現(xiàn)了:單用戶操作系統(tǒng)Solo、處理小作業(yè)的作業(yè)流系統(tǒng)和過程控制實(shí)時(shí)調(diào)度系統(tǒng)等三個(gè)層次管程結(jié)構(gòu)的操作系統(tǒng)。,8.Pen
64、tium處理機(jī)中的特權(quán)級(jí),以Pentium處理器為例,介紹操作系統(tǒng)機(jī)制和策略的一個(gè)具體的例子。在保護(hù)模式下,Pentium處理器采用段頁式尋址,共有六個(gè)段寄存器:CS、DS、SS、ES、FS、GS。段寄存器中的內(nèi)容包括兩個(gè)部分:可見部分和不可見部分,其中可見部分共十六位,其格式如下圖所示:在特權(quán)級(jí)方面,有4個(gè)特權(quán)級(jí)(Linux和Windows只用了2個(gè))。,特權(quán)級(jí)的使用:應(yīng)用程序給出的特權(quán)級(jí)稱為請(qǐng)求特權(quán)級(jí)(RPL)全局描述符表和
65、局部描述符表中保存的特權(quán)級(jí)稱為描述符特權(quán)級(jí)(DPL)CS段寄存器中的特權(quán)級(jí)稱為當(dāng)前特權(quán)級(jí)(CPL)請(qǐng)求特權(quán)級(jí)和當(dāng)前特權(quán)級(jí)中較低的特權(quán)級(jí)稱為有效特權(quán)級(jí)(EPL)。由于較低的特權(quán)級(jí)數(shù)值較高,所以EPL=max(RPL,CPL)。只有當(dāng)請(qǐng)求特權(quán)級(jí)(RPL)低于進(jìn)程的描述符特權(quán)級(jí)(DPL)和當(dāng)前特權(quán)級(jí)(CPL)時(shí)(即RPL<=DPL && RPL<=CPL),對(duì)段寄存器的賦值才是有效的,否則應(yīng)用程序不能訪問段中
66、的數(shù)據(jù)。,示例:Pentium處理器中的段寄存器與段描述符表,全局段描述符表(TI=0),局部段描述符表(TI=1),四級(jí)特權(quán)級(jí),第0級(jí)級(jí)別最高(核心態(tài)),第3級(jí)級(jí)別最低(用戶態(tài))。,,應(yīng)用程序在處理機(jī)上運(yùn)行時(shí),當(dāng)把一個(gè)段選擇子裝入CS寄存器時(shí),就會(huì)發(fā)生控制轉(zhuǎn)移,控制轉(zhuǎn)移可能影響當(dāng)前的特權(quán)級(jí)??赡艿目刂妻D(zhuǎn)移有下面幾種: (1) 同一特權(quán)級(jí)的段間轉(zhuǎn)移 (2) 到相同或更高特權(quán)級(jí)的段間轉(zhuǎn)移(可以改變CPL)。 (3)
67、 到相同或更高特權(quán)級(jí)的任務(wù)內(nèi)的中斷(可以改變CPL)。 (4) 到較低特權(quán)級(jí)的段間轉(zhuǎn)移(改變?nèi)蝿?wù)的CPL)。 (5) 任務(wù)切換。這里要說明的是,所有的控制轉(zhuǎn)移,都必須服從特權(quán)規(guī)則,這些規(guī)則包括: (1) 若控制轉(zhuǎn)移要求特權(quán)級(jí)發(fā)生變化,則必須通過門。 (2) 若使用JMP指令產(chǎn)生段間控制轉(zhuǎn)移,則只能在同一特權(quán)級(jí)別中進(jìn)行。 (3) 若使用CALL指令產(chǎn)生段間控制轉(zhuǎn)移,則可以在同一特權(quán)級(jí)別內(nèi),也可以
68、通過門轉(zhuǎn)移到更到的特權(quán)級(jí)。 (4) 同一任務(wù)內(nèi)處理的中斷,遵循與CALL調(diào)用指令相同的規(guī)則。 (5) CPL和指向門選擇器的RPL的級(jí)別必須大于或者等于門的DPL(描述符特權(quán)級(jí))。 (6) 并不切換任務(wù)的返回指令,只能將控制返回到相同和更低的特權(quán)級(jí)的代碼段。 (7) 任務(wù)切換可以由CALL、JMP和INT指令完成,若在任務(wù)切換時(shí)涉及任務(wù)或任務(wù)狀態(tài)段,則它們的特權(quán)級(jí)必須低于或者等于老任務(wù)的CPL。,1
69、83;5 操作系統(tǒng)的體系結(jié)構(gòu),現(xiàn)代操作系統(tǒng)從內(nèi)部結(jié)構(gòu)劃分,通常包含兩部分:一是內(nèi)核;二是核外部分,其余通常是一些實(shí)用程序。1、操作系統(tǒng)的內(nèi)核 1)內(nèi)核在操作系統(tǒng)中的地位: OS內(nèi)核是對(duì)硬件的首次擴(kuò)充,是實(shí)現(xiàn)操作系統(tǒng)各項(xiàng)功能的基礎(chǔ)。 傳統(tǒng)操作系統(tǒng)內(nèi)核包括以下功能模塊:進(jìn)程、線程及其管理存儲(chǔ)管理。I/O管理文件系統(tǒng)。,1·5 操作系統(tǒng)的體系結(jié)構(gòu),2)強(qiáng)內(nèi)核與微內(nèi)核: 操作系統(tǒng)有兩種內(nèi)核組
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件工程 - 長春理工大學(xué)精品課
- 沒有幻燈片標(biāo)題-長春理工大學(xué)精品課
- 第二章導(dǎo)數(shù)與微分-長春理工大學(xué)精品課
- 信號(hào)的取樣-長春理工大學(xué)精品課程
- 第十二章微分方程-長春理工大學(xué)精品課
- 第六章定積分的應(yīng)用-長春理工大學(xué)精品課
- 江西理工大學(xué)軟件工程復(fù)習(xí)題
- 長春理工大學(xué)
- 第八章 一階電路分析 - 長春理工大學(xué)精品課
- 2019長沙理工大學(xué)考試大綱851軟件工程
- 長春理工大學(xué)概況
- 第三章 中值定理與導(dǎo)數(shù)的應(yīng)用 - 長春理工大學(xué)精品課
- 長春理工大學(xué)維修工程73
- 2019武漢理工大學(xué)軟件工程考研考試科目
- 長春理工大學(xué)試題紙
- 2017長沙理工大學(xué)考研真題851軟件工程
- 第三章 多維隨機(jī)變量及其分布 - 長春理工大學(xué)精品課
- 華南理工大學(xué)軟件工程復(fù)習(xí)提綱
- 長春理工大學(xué)集體合同
- 河南理工大學(xué)精品課程教學(xué)組
評(píng)論
0/150
提交評(píng)論