版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第一章操作系統(tǒng)引論1.1操作系統(tǒng)的目標(biāo)和作用1.2操作系統(tǒng)的發(fā)展過程1.3操作系統(tǒng)的基本特性1.4操作系統(tǒng)的主要功能1.5操作系統(tǒng)的結(jié)構(gòu)設(shè)計第一章操作系統(tǒng)引論1.1操作系統(tǒng)的目標(biāo)和作用1教學(xué)目的:掌握操作系統(tǒng)的定義及其基本特性、主要功能了解操作系統(tǒng)的發(fā)展歷史和幾種類型的操作系統(tǒng)教學(xué)難重點:操作系統(tǒng)的定義操作系統(tǒng)的基本特征OS結(jié)構(gòu)設(shè)計教學(xué)目的:2操作系統(tǒng)概念(p8)一組控制和管理計算機硬件和軟件資源、合理地對各類作業(yè)進行調(diào)度以及方便用戶的程序集合。1.1操作系統(tǒng)的目標(biāo)和作用計算機系統(tǒng)由硬件和軟件組成操作系統(tǒng)概念(p8)1.1操作系統(tǒng)的目標(biāo)和作用計算機系統(tǒng)31.1操作系統(tǒng)的目標(biāo)和作用1.1.1操作系統(tǒng)的目標(biāo)
有效性:提高系統(tǒng)資源利用率,提高系統(tǒng)吞吐量;方便性:計算機只能識別0、1;用戶熟悉的是各種語言;(1,2如何折中?)可擴充性:便于增加新的功能和模塊;(如何設(shè)計?)開放性:遵循世界標(biāo)準(zhǔn)規(guī)范(OSI)。1.1操作系統(tǒng)的目標(biāo)和作用1.1.1操作系統(tǒng)的目標(biāo)4圖1-1OS作為接口的從層狀示意圖計算機硬件操作系統(tǒng)系統(tǒng)調(diào)用,命令,圖標(biāo),窗口應(yīng)用程序及實用程序系統(tǒng)設(shè)計者程序員用戶1.1.2操作系統(tǒng)的作用
1.OS作為用戶與計算機硬件系統(tǒng)之間的接口(用戶觀點)
圖1-1OS作為接口的從層狀示意圖計算機硬件操作系統(tǒng)系統(tǒng)調(diào)5
(1)命令方式。這是指由OS提供了一組聯(lián)機命令(語言),用戶可通過鍵盤輸入有關(guān)命令,來直接操縱計算機系統(tǒng)。(2)系統(tǒng)調(diào)用方式。OS提供了一組系統(tǒng)調(diào)用,用戶可在自己的應(yīng)用程序中通過相應(yīng)的系統(tǒng)調(diào)用,來操縱計算機。(3)圖形、窗口方式。用戶通過屏幕上的窗口和圖標(biāo)來操縱計算機系統(tǒng)和運行自己的程序。用戶通過三種方式使用計算機:(1)命令方式。這是指由OS提供了一組聯(lián)機命6
2.OS作為計算機系統(tǒng)資源的管理者(功能的觀點)處理機管理:分配和控制處理機存儲器管理:分配及回收內(nèi)存I/O(Input/Output)設(shè)備管理:I/O分配與操作文件管理:文件存取、共享和保護
2.OS作為計算機系統(tǒng)資源的管理者(功能的7
3.OS實現(xiàn)了對計算機資源的抽象
裸機:對于一臺完全無軟件的計算機系統(tǒng)稱為裸機?!y于使用。擴充機器(虛機器):把覆蓋了軟件的機器稱為擴充機或虛擬機。——更方便。分層擴充的特點P43.OS實現(xiàn)了對計算機資源的抽象8洋蔥頭似的擴充裸機作系操統(tǒng)其他應(yīng)用軟件用戶應(yīng)用程序序程洋蔥頭似的擴充裸機作系操統(tǒng)其他應(yīng)用軟件用戶應(yīng)用程序序程91.1.3推動操作系統(tǒng)發(fā)展的主要動力
不斷提高計算機資源利用率的需要如批處理系統(tǒng)的出現(xiàn)方便用戶如分時交互式系統(tǒng)的出現(xiàn)器件的不斷更新?lián)Q代8位->16->32->64->...計算機體系結(jié)構(gòu)的不斷發(fā)展:單機OS->多機OS->網(wǎng)絡(luò)OS-…1.1.3推動操作系統(tǒng)發(fā)展的主要動力不斷提高計算機資源利101.2操作系統(tǒng)的發(fā)展過程
1.2.1無操作系統(tǒng)的計算機系統(tǒng)
(第一代計算機)
1.人工操作方式
如紙帶輸入機
特點:無任何軟件、獨占性、獨占性、串行性缺點:
(1)用戶獨占全機(2)CPU等待人工操作
1.2操作系統(tǒng)的發(fā)展過程1.2.1無操作系統(tǒng)的計算機11導(dǎo)致人機矛盾、CPU和I/O設(shè)備速度不匹配
機器作業(yè)在機器上人工操操作時間與機器速度計算所需時間作時間有效運行時間之比1萬次/秒1小時3分鐘1:2060萬次/秒1分鐘3分鐘3:1人工操作方式缺點:1.2.1無操作系統(tǒng)的計算機系統(tǒng)
導(dǎo)致人機矛盾、CPU和I/O設(shè)備速度不匹配
機器122.脫機輸入/輸出(Off-LineI/O)方式引入I/O機的概念,解決CPU和I/O設(shè)備速度不匹配的矛盾。主要優(yōu)點:減少了CPU的空閑時間。(2)提高I/O速度。
2.脫機輸入/輸出(Off-LineI/O)方式引入I/131.2.2單道批處理系統(tǒng)(SimpleBatchProcessingSystem)
(第二代計算機)
處理過程(圖1-4)概念監(jiān)督程序(monitor):在其控制下使一批作業(yè)能一個接一個的連續(xù)處理。單道批處理系統(tǒng):系統(tǒng)對作業(yè)的處理都是成批進行的、且內(nèi)存中始終只保持一道作業(yè),稱為單道批處理系統(tǒng)(SimpleBatchProcessingSystem)。解決人機矛盾,即提高系統(tǒng)資源的利用率和吞吐量。特征:自動性順序性單道性1.2.2單道批處理系統(tǒng)(SimpleBatchPro14還有下一個作業(yè)?把下一個作業(yè)的源程序轉(zhuǎn)換為目標(biāo)程序源程序有錯嗎?裝配目標(biāo)程序運行目標(biāo)程序開始是否停止是否圖1-4單道批處理系統(tǒng)的處理流程
還有下一把下一個作業(yè)源程序裝配目標(biāo)程序運行目標(biāo)程序開始是否停151.2.3多道批處理系統(tǒng)(MultiprogrammedBatchProcessingSystem)(第三代計算機)
概念多道:系統(tǒng)中同時駐留多個作業(yè)多道程序設(shè)計優(yōu)點提高CPU利用率(圖1-5)提高內(nèi)存和I/O設(shè)備利用率增加了系統(tǒng)吞吐量特征多道性、宏觀上并行、微觀上串行多道批處理優(yōu)點
資源利用率高、系統(tǒng)吞吐率大缺點平均周轉(zhuǎn)時間長、無交互能力(怎么辦??)1.2.3多道批處理系統(tǒng)(Multiprogrammed16圖1-5用戶程序監(jiān)督程序(a)單道程序運行情況I/O操作I/O中斷請求啟動I/OI/O完成結(jié)束中斷I/O中斷請求啟動I/OI/O完成結(jié)束中斷t1t2t3t4t5t6t7t8表示獲得CPU圖1-5用戶程序監(jiān)督程序(a)單道程序運行情況I/O操作I/17圖1-5程序A調(diào)度程序I/O請求(b)四道程序運行情況程序B程序C程序DI/O請求I/O請求I/O請求I/O完成I/O完成I/O完成A完成表示獲得CPUC再運行圖1-5程序A調(diào)度程序I/O請求(b)四道程序運行情況程序B18多道批處理系統(tǒng)需要解決的問題
處理機管理問題。(2)內(nèi)存管理問題。(3)I/O設(shè)備管理問題。(4)文件管理問題。(5)作業(yè)管理問題。多道批處理系統(tǒng)需要解決的問題處理機管理問題。191.2.4分時系統(tǒng)
分時系統(tǒng)(Time-SharingSystem)的產(chǎn)生用戶的需求表現(xiàn)在:人機交互性(控制)共享主機(昂貴)便于用戶上機(方便)分時系統(tǒng):指一臺主機上連接了多個帶有顯示器和鍵盤的終端,同時允許多個用戶共享主機中的資源,各個用戶都可通過自己的終端以交互方式使用計算機。1.2.4分時系統(tǒng)分時系統(tǒng)(Time-Sharing20分時系統(tǒng)實現(xiàn)中的關(guān)鍵問題及時接收。多路卡、輸入緩沖區(qū)及時處理。交互作業(yè)應(yīng)在內(nèi)存、響應(yīng)時間應(yīng)短采用時間片輪轉(zhuǎn)多路性(同時性)獨立性(獨占性)及時性(1—3sec)交互性:
“會話”
分時系統(tǒng)的特征
分時系統(tǒng)實現(xiàn)中的關(guān)鍵問題及時接收。多路卡、輸入緩沖區(qū)多路性(211.2.5實時系統(tǒng)
概念所謂“實時”,是表示“及時”,而實時系統(tǒng)(Real-TimeSystem)是指系統(tǒng)能及時(或即時)響應(yīng)外部事件的請求,在規(guī)定的時間內(nèi)(deadline)完成對該事件的處理,并控制所有實時任務(wù)協(xié)調(diào)一致地運行。
應(yīng)用需求
實時控制。(2)實時信息處理。1.2.5實時系統(tǒng)概念應(yīng)用需求實時控制。22響應(yīng)時間:指用戶發(fā)出命令,到系統(tǒng)完成用戶命令所需的時間。批處理操作系統(tǒng)沒有分時操作系統(tǒng)秒級(一般情況)實時操作系統(tǒng)微秒級甚至更小(經(jīng)典說法)系統(tǒng)滿足用戶時限(deadline)的要求(現(xiàn)代)響應(yīng)時間:指用戶發(fā)出命令,到系統(tǒng)完成用戶命令所需的時間。23
實時任務(wù)
按任務(wù)執(zhí)行是否呈現(xiàn)周期性來劃分
周期性的非周期性的(開始截止時間或完成截止時間)根據(jù)對截止時間的要求來劃分
硬實時任務(wù):必須滿足。實時控制軟實時任務(wù):不太嚴(yán)格。實時信息處理實時任務(wù)按任務(wù)執(zhí)行是否呈現(xiàn)周期性來劃分24實時操作系統(tǒng)特點系統(tǒng)對外部的信號必須能及時響應(yīng),(在規(guī)定的時間內(nèi)(deadline));要求高可靠性和安全性,效率則放在第二位;系統(tǒng)整體性強;不要求很強的“會話”能力。實時操作系統(tǒng)特點25實時系統(tǒng)與分時系統(tǒng)特征的比較多路性:相似獨立性:相同及時性:實時系統(tǒng)要求更高交互性:分時系統(tǒng)交互性更強可靠性:實時系統(tǒng)要求更高實時系統(tǒng)與分時系統(tǒng)特征的比較261.2.6微機操作系統(tǒng)的發(fā)展
字長劃分:運行方式劃分:1.單用戶單任務(wù)操作系統(tǒng)含義:只允許一個用戶上機,且只允許用戶程序作為一個任務(wù)運行。(一個人只做一件事)配置在8位和16位微機。代表是CP/M,MS-DOS,PC-DOS
。
2.單用戶多任務(wù)操作系統(tǒng)含義:只允許一個用戶上機,但允許用戶把程序分為若干個任務(wù),使它們并發(fā)執(zhí)行。(一個人同時做多件事)配置在32位微機。代表是由微軟公司推出的Windows。1.2.6微機操作系統(tǒng)的發(fā)展2.單用戶多任務(wù)操作系27
3.多用戶多任務(wù)操作系統(tǒng)含義:允許多個用戶通過各自的終端使用同一臺機器,共享主機系統(tǒng)中的各種資源,而每個用戶程序又可進一步分為幾個任務(wù),使它們能并發(fā)執(zhí)行,從而可進一步提高資源利用率和系統(tǒng)吞吐量。(多個人同時做多件事)大、中和小型機中所配置的大多是多用戶多任務(wù)操作系統(tǒng),而在32位微機上也配置有多用戶多任務(wù)操作系統(tǒng),其中最有代表性的是UNIXOS。
3.多用戶多任務(wù)操作系統(tǒng)28UNIXOS是美國電報電話公司的Bell實驗室在1969~1970年期間開發(fā)的。現(xiàn)在最有影響的兩個能運行在微機上的UNIX操作系統(tǒng)的變型是SolarisOS和LinuxOS。
UNIXOS是美國電報電話公司的Bell實驗室在19629LinuxOS:Linux是UNIX的一個重要變種,最初是由芬蘭學(xué)生LinusTorvalds針對Intel80386開發(fā)的。1991年在Internet網(wǎng)上發(fā)布第一個Linux版本,由于源代碼公開,因此有很多人通過Internet與之合作,使Linux的性能迅速提高,其應(yīng)用范圍也日益擴大。相應(yīng)地,源代碼也急劇膨脹,此時它已是具有全面功能的UNIX系統(tǒng),大量在UNIX上運行的軟件(包括1000多種實用工具軟件和大量的網(wǎng)絡(luò)軟件)被移植到Linux上,而且可以在主要的微機上運行,如Intel80x86Pentium等。
LinuxOS:Linux是UNIX的一個重要變種,30更多操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng)(NetworkOperatingSystem)是建立在主機操作系統(tǒng)基礎(chǔ)上,用于管理網(wǎng)絡(luò)通信和共享資源,協(xié)調(diào)各主機上任務(wù)的運行,并向用戶提供統(tǒng)一的、有效的網(wǎng)絡(luò)接口的軟件集合,它是用戶和主機操作系統(tǒng)之間的接口。分布式計算機系統(tǒng)由多臺分散的計算機經(jīng)互連網(wǎng)絡(luò)連接而成嵌入式操作系統(tǒng)指運行在嵌入式(計算機)環(huán)境中,對整個系統(tǒng)及所有操作的各種部件、裝置等資源進行統(tǒng)一協(xié)調(diào)、處理、指揮和控制的系統(tǒng)軟件更多操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng)(NetworkOperating31操作系統(tǒng)的進一步發(fā)展
操作系統(tǒng)發(fā)展的主要動力器件快速更新?lián)Q代。計算體系結(jié)構(gòu)不斷發(fā)展。提高計算機系統(tǒng)資源利用率的需要。讓用戶使用計算機越來越方便的需要。滿足用戶新要求,提供給用戶新服務(wù)。操作系統(tǒng)發(fā)展的方向從大中型計算機來看,主要是分布式和網(wǎng)絡(luò)化。微機操作系統(tǒng)主要向多用戶多功能、虛存、圖形、數(shù)據(jù)庫等方向發(fā)展。操作系統(tǒng)的智能化。操作系統(tǒng)的進一步發(fā)展
操作系統(tǒng)發(fā)展的主要動力321.3操作系統(tǒng)的基本特性
OS特性一:并發(fā)性并行與并發(fā)并行性(Parallelism)是指兩個或多個事件在同一時刻發(fā)生。如T3時刻并發(fā)性(Concurrence)
是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。如T3—T4時刻并發(fā)性是OS最重要的特征,OS所有的內(nèi)容都圍繞它展開??!1.3操作系統(tǒng)的基本特性O(shè)S特性一:并發(fā)性33引入進程
目的:為了使多個程序能并發(fā)執(zhí)行。
好處:有效地提高了系統(tǒng)資源的利用率和系統(tǒng)吞吐量,并改善了系統(tǒng)的性能。
進程(Process):在系統(tǒng)中能獨立運行并作為資源分配的基本單位,它是由一組機器指令、數(shù)據(jù)和堆棧等組成的,是一個能獨立運行的活動實體。
一個進程在運行時需要一定的資源,如CPU、存儲空間及I/O設(shè)備等。
引入進程34線程
在引入線程的OS中,通常都是把進程作為分配資源的基本單位,而把線程作為獨立運行和獨立調(diào)度的基本單位。
進程和并發(fā)是現(xiàn)代操作系統(tǒng)最重要的概念!線程35OS特性二:共享性共享:系統(tǒng)中資源可供內(nèi)存中多個并發(fā)執(zhí)行的進程共同使用互斥共享:一段時間只允許一個進程訪問某資源.同時訪問:宏觀上允許在一段時間內(nèi)由多個進程同時對某資源進行訪問,但微觀上仍是互斥的.并發(fā)與共享是OS的兩個最基本的特征,它們互為存在條件.OS特性二:共享性36OS特性三:虛擬虛擬(不存在)通過某種技術(shù)把一個物理實體變?yōu)槿舾蓚€邏輯上的對應(yīng)物。在OS中利用了多種虛擬技術(shù),分別用來實現(xiàn)虛擬處理機、虛擬內(nèi)存、虛擬外部設(shè)備等。空間換時間時間換空間OS特性三:虛擬虛擬(不存在)空間換時間時間換空間37OS特性四:異步性異步性(Asynchronism)
:進程以人們不可預(yù)知的速度向前推進。運行結(jié)果如何保證正確?
在多道程序環(huán)境下允許多個進程并發(fā)執(zhí)行,但只有進程在獲得所需的資源后方能執(zhí)行。由于資源等因素的限制,使進程的執(zhí)行通常都不是“一氣呵成”,而是以“停停走走”的方式運行。
OS特性四:異步性381.4操作系統(tǒng)的主要功能
1.4.1處理機管理功能多道環(huán)境下,處理機的運行及分配都是以進程為單位,因此處理機管理可歸結(jié)為進程管理。1、進程控制創(chuàng)建/撤消進程、遷移進程狀態(tài)。一般由進程控制原語完成
2.進程同步兩種協(xié)調(diào)方式:(1)進程互斥方式。(2)進程同步方式。
3.進程通信類型:直接通信、間接通信1.4操作系統(tǒng)的主要功能1.4.1處理機管理功能394、調(diào)度(作業(yè)與進程)作業(yè)調(diào)度為作業(yè)分配必要資源,調(diào)入內(nèi)存建立進程,并使之進入就緒隊列。進程調(diào)度從就緒隊列中選出進程,分配CPU,使之運行。調(diào)度算法:FCFS、優(yōu)先權(quán)等4、調(diào)度(作業(yè)與進程)401.4.2存儲器管理功能目的:方便用戶使用,且提高存貯器利用率1.內(nèi)存分配:靜態(tài)分配、動態(tài)分配2.內(nèi)存保護:機制,例:上下界限寄存器3.地址映射:邏輯地址——〉物理地址4.內(nèi)存擴充:虛存,邏輯上擴充1.4.2存儲器管理功能411.4.3設(shè)備管理功能
任務(wù):提高I/O利用率和速度,方便用戶1.緩沖管理緩沖區(qū):用來解決CPU-I/O矛盾,如:CPU快則應(yīng)多創(chuàng)建緩沖區(qū)。2.設(shè)備分配包括:設(shè)備,設(shè)備控制器,I/O通信的分配和回收3.設(shè)備處理設(shè)備驅(qū)動程序1.4.3設(shè)備管理功能421.4.4文件管理功能
任務(wù):方便用戶,提供安全性1.文件存儲空間的管理為每個文件分配必要的外存空間,提高外存的利用率。2.目錄管理使用戶按名存取,提高速度。3.文件的讀、寫管理和保護根據(jù)用戶的需求讀寫數(shù)據(jù),并提供有效的存取控制功能。1.4.4文件管理功能431.4.5操作系統(tǒng)與用戶之間的接口
為了方便用戶使用操作系統(tǒng),OS又向用戶提供了“用戶與操作系統(tǒng)的接口”。該接口通??煞譃閮纱箢悾?/p>
(1)用戶接口。它是提供給用戶使用的接口,用戶可通過該接口取得操作系統(tǒng)的服務(wù);
(2)程序接口。它是提供給程序員在編程時使用的接口,是用戶程序取得操作系統(tǒng)服務(wù)的惟一途徑。
1.4.5操作系統(tǒng)與用戶之間的接口441.用戶接口由一組“命令”集組成,分為聯(lián)機和脫機用戶接口聯(lián)機用戶接口由一組鍵盤操作命令及命令解釋程序所組成脫機(批處理用戶接口)用JCL寫作業(yè)說明書圖形用戶接口——〉聯(lián)機用戶接口圖形、icon2.程序接口
系統(tǒng)調(diào)用高級語言的庫函數(shù)1.用戶接口451.5OS的結(jié)構(gòu)設(shè)計第一代:無結(jié)構(gòu)第二代:模塊式第三代:分層式第四代:微內(nèi)核把前三代的OS結(jié)構(gòu)稱為傳統(tǒng)的OS結(jié)構(gòu),而把第四代的OS結(jié)構(gòu)稱為現(xiàn)代OS結(jié)構(gòu)。1.5OS的結(jié)構(gòu)設(shè)計第一代:無結(jié)構(gòu)461.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)無結(jié)構(gòu)OS一組過程集,各過程可相互調(diào)用,也叫整體系統(tǒng)結(jié)構(gòu)。缺點:邏輯復(fù)雜,維護困難.1.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)無結(jié)構(gòu)OS471.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)模塊化結(jié)構(gòu)OS通過分解和模塊化來控制大型軟件復(fù)雜度。如:進程模塊、內(nèi)存模塊…,各模塊內(nèi)進一步劃分子模塊。優(yōu)點:提高了OS設(shè)計的正確性、可理解性、可維護性增強的OS的可適應(yīng)性加速了OS的開發(fā)過程:并行開發(fā)模塊缺點:模塊大小、接口不易確定模塊依賴關(guān)系可能復(fù)雜-〉無序模塊法1.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)模塊化結(jié)構(gòu)OS481.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)分層式操作系統(tǒng)分層式結(jié)構(gòu)的基本概念:自底向上,每一層僅能使用其底層所提供的功能和服務(wù)優(yōu)點(1)易保證系統(tǒng)的正確性(2)易擴充和易維護性缺點效率降低
1.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)分層式操作系統(tǒng)491.5.2客戶/服務(wù)器模式客戶/服務(wù)器(Client/Server)模式可簡稱為C/S模式。
C/S模式的組成由客戶機、服務(wù)器和網(wǎng)絡(luò)系統(tǒng)三個部分組成。(1)客戶機:通常在一個LAN網(wǎng)絡(luò)上連接有多臺網(wǎng)絡(luò)工作站(簡稱客戶機),每臺客戶機都是一個自主計算機。
1.5.2客戶/服務(wù)器模式50
(2)服務(wù)器:通常是一臺規(guī)模較大的機器,在其上駐留有網(wǎng)絡(luò)文件系統(tǒng)或數(shù)據(jù)庫系統(tǒng)等,它應(yīng)能為網(wǎng)上所有的用戶提供一種或多種服務(wù)。平時它一直處于工作狀態(tài),被動地等待來自客戶機的請求,一旦檢查到有客戶提出服務(wù)請求,便去完成客戶的請求,并將結(jié)果送回客戶。這樣,工作站中的用戶進程與服務(wù)器進程便形成了客戶/服務(wù)器關(guān)系。(3)網(wǎng)絡(luò)系統(tǒng):用于連接所有客戶機和服務(wù)器,實現(xiàn)它們之間通信和網(wǎng)絡(luò)資源共享的系統(tǒng)。(2)服務(wù)器:通常是一臺規(guī)模較大的機器,在其上駐留有網(wǎng)51
C/S模式的優(yōu)點(1)數(shù)據(jù)的分布處理和存儲(2)便于集中管理。(3)靈活性和可擴充性(4)易于改編應(yīng)用軟件。C/S模式的優(yōu)點521.5.3面向?qū)ο蟮某绦蛟O(shè)計
面向?qū)ο蠹夹g(shù)的基本概念面向?qū)ο蠹夹g(shù)是20世紀(jì)80年代初提出并很快流行起來的。該技術(shù)是基于“抽象”和“隱蔽”原則來控制大型軟件的復(fù)雜度的。
對象是指在現(xiàn)實世界中具有相同屬性、服從相同規(guī)則的一系列事物(事物可以是一個物理實體、一個概念或一個軟件模塊等)的抽象,而把其中的具體事物稱為對象的實例。1.5.3面向?qū)ο蟮某绦蛟O(shè)計53
面向?qū)ο蠹夹g(shù)的優(yōu)點在設(shè)計操作系統(tǒng)時,將計算機中的實體作為對象來處理,可帶來如下好處:(1)通過“重用”提高產(chǎn)品質(zhì)量和生產(chǎn)率。(2)使系統(tǒng)具有更好的易修改性和易擴展性。(3)更易于保證系統(tǒng)的“正確性”和“可靠性”。面向?qū)ο蠹夹g(shù)的優(yōu)點541.5.4微內(nèi)核OS結(jié)構(gòu)
1.微內(nèi)核操作系統(tǒng)的基本概念
為了提高操作系統(tǒng)的“正確性”、“靈活性”、“易維護性”和”可擴充性”,在進行現(xiàn)代操作系統(tǒng)結(jié)構(gòu)設(shè)計時,即使在單處理機環(huán)境下,大多也采用基于客戶/服務(wù)器模式的微內(nèi)核結(jié)構(gòu),將操作系統(tǒng)劃分為兩大部分:微內(nèi)核和多個服務(wù)器。MachOS:并行分布式操作系統(tǒng),現(xiàn)代的微內(nèi)核體系結(jié)構(gòu)的例子
Windows2K/XP:為了移植性的考慮,Windows操作系統(tǒng)的大多數(shù)代碼是用C語言編寫的
/bookfiles/296/10029612589.shtml1.5.4微內(nèi)核OS結(jié)構(gòu)55
1)足夠小的內(nèi)核
內(nèi)核是指精心設(shè)計的、能實現(xiàn)現(xiàn)代OS最基本的核心功能的部分。用于:①實現(xiàn)與硬件緊密相關(guān)的處理;②實現(xiàn)一些較基本的功能;③負(fù)責(zé)客戶和服務(wù)器之間的通信。它們只是為構(gòu)建通用OS提供一個重要基礎(chǔ),這樣就可以確保把操作系統(tǒng)內(nèi)核做得很小。1)足夠小的內(nèi)核56
2)基于客戶/服務(wù)器模式
由于客戶/服務(wù)器模式具有非常多的優(yōu)點,故在單機微內(nèi)核操作系統(tǒng)中幾乎無一例外地都采用客戶/服務(wù)器模式,將操作系統(tǒng)中最基本的部分放入內(nèi)核中,而把操作系統(tǒng)的絕大部分功能都放在微內(nèi)核外面的一組服務(wù)器(進程)中實現(xiàn)。例如用于提供對進程(線程)進行管理的進程(線程)服務(wù)器,提供虛擬存儲器管理功能的虛擬存儲器服務(wù)器,提供I/O設(shè)備管理的I/O設(shè)備管理服務(wù)器等,它們都是被作為進程來實現(xiàn)的,運行在用戶態(tài),客戶與服務(wù)器之間是借助微內(nèi)核提供的消息傳遞機制來實現(xiàn)信息交互的。圖1-10示出了在單機環(huán)境下的客戶/服務(wù)器模式。2)基于客戶/服務(wù)器模式57圖1-10在單機環(huán)境下的客戶/服務(wù)器模式
①④②③圖1-10在單機環(huán)境下的客戶/服務(wù)器模式①④②③58
3)應(yīng)用“機制與策略分離”原理
在現(xiàn)代操作系統(tǒng)的結(jié)構(gòu)設(shè)計中,經(jīng)常利用“機制與策略分離”的原理來構(gòu)造OS結(jié)構(gòu)。所謂機制,是指實現(xiàn)某一功能的具體執(zhí)行機構(gòu)。而策略,則是在機制的基礎(chǔ)上,借助于某些參數(shù)和算法來實現(xiàn)該功能的優(yōu)化,或達到不同的功能目標(biāo)。通常,機制處于一個系統(tǒng)的基層,而策略則處于系統(tǒng)的高層。在傳統(tǒng)的OS中,將機制放在OS的內(nèi)核的較低層,把策略放在內(nèi)核的較高層次中。而在微內(nèi)核操作系統(tǒng)中,通常將機制放在OS的微內(nèi)核中。正因為如此,才有可能將內(nèi)核做得很小。3)應(yīng)用“機制與策略分離”原理59
4)采用面向?qū)ο蠹夹g(shù)
操作系統(tǒng)是一個極其復(fù)雜的大型軟件系統(tǒng),我們不僅可以通過結(jié)構(gòu)設(shè)計來分解操作系統(tǒng)的復(fù)雜度,還可以基于面向?qū)ο蠹夹g(shù)中的“抽象”和“隱蔽”原則控制系統(tǒng)的復(fù)雜性,再進一步利用“對象”、“封裝”和“繼承”等概念來確保操作系統(tǒng)的“正確性”、“可靠性”、“易修改性”、“易擴展性”等,并提高操作系統(tǒng)的設(shè)計速度。正因為面向?qū)ο蠹夹g(shù)能帶來如此多的好處,故面向?qū)ο蠹夹g(shù)被廣泛應(yīng)用于現(xiàn)代操作系統(tǒng)的設(shè)計中。4)采用面向?qū)ο蠹夹g(shù)60
2.微內(nèi)核的基本功能
1)進程(線程)管理
采用“機制與策略分離”的原理。2)低級存儲器管理
只配置最基本的低級存儲器管理機制3)中斷和陷入處理將與硬件緊密相關(guān)的一小部分放入微內(nèi)核中處理。此時微內(nèi)核的主要功能,是捕獲所發(fā)生的中斷和陷入事件,并進行相應(yīng)的前期處理。在微內(nèi)核OS中是將進程管理、存儲器管理以及I/O管理這些功能一分為二,屬于機制的很小一部分放入微內(nèi)核中,另外絕大部分放在微內(nèi)核外的各種服務(wù)器中來實現(xiàn)。2.微內(nèi)核的基本功能61
3.微內(nèi)核操作系統(tǒng)的優(yōu)點
1)提高了系統(tǒng)的可擴展性
由于微內(nèi)核OS的許多功能是由相對獨立的服務(wù)器軟件來實現(xiàn)的,當(dāng)開發(fā)了新的硬件和軟件時,微內(nèi)核OS只須在相應(yīng)的服務(wù)器中增加新的功能,或再增加一個專門的服務(wù)器。與此同時,也必然改善系統(tǒng)的靈活性,不僅可在操作系統(tǒng)中增加新的功能,還可修改原有功能,以及刪除已過時的功能,以形成一個更為精干有效的操作系統(tǒng)。
3.微內(nèi)核操作系統(tǒng)的優(yōu)點62
2)增強了系統(tǒng)的可靠性
這一方面是由于微內(nèi)核是出于精心設(shè)計和嚴(yán)格測試的,容易保證其正確性;另一方面是它提供了規(guī)范而精簡的應(yīng)用程序接口(API),為微內(nèi)核外部的程序編制高質(zhì)量的代碼創(chuàng)造了條件。此外,由于所有服務(wù)器都是運行在用戶態(tài),服務(wù)器與服務(wù)器之間采用的是消息傳遞通信機制,因此,當(dāng)某個服務(wù)器出現(xiàn)錯誤時,不會影響內(nèi)核,也不會影響其它服務(wù)器。2)增強了系統(tǒng)的可靠性63
3)可移植性
隨著硬件的快速發(fā)展,出現(xiàn)了各種各樣的硬件平臺,作為一個好的操作系統(tǒng),必須具備可移植性,使其能較容易地運行在不同的計算機硬件平臺上。在微內(nèi)核結(jié)構(gòu)的操作系統(tǒng)中,所有與特定CPU和I/O設(shè)備硬件有關(guān)的代碼,均放在內(nèi)核和內(nèi)核下面的硬件隱藏層中,而操作系統(tǒng)其它絕大部分(即各種服務(wù)器)均與硬件平臺無關(guān),因而,把操作系統(tǒng)移植到另一個計算機硬件平臺上所需作的修改是比較小的。3)可移植性64
4)提供了對分布式系統(tǒng)的支持
由于在微內(nèi)核OS中,客戶和服務(wù)器之間以及服務(wù)器和服務(wù)器之間的通信,是采用消息傳遞通信機制進行的,致使微內(nèi)核OS能很好地支持分布式系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)。事實上,只要在分布式系統(tǒng)中賦予所有進程和服務(wù)器惟一的標(biāo)識符,在微內(nèi)核中再配置一張系統(tǒng)映射表(即進程和服務(wù)器的標(biāo)識符與它們所駐留的機器之間的對應(yīng)表),在進行客戶與服務(wù)器通信時,只需在所發(fā)送的消息中標(biāo)上發(fā)送進程和接收進程的標(biāo)識符,微內(nèi)核便可利用系統(tǒng)映射表,將消息發(fā)往目標(biāo),而無論目標(biāo)是駐留在哪臺機器上。4)提供了對分布式系統(tǒng)的支持65
5)融入了面向?qū)ο蠹夹g(shù)
在設(shè)計微內(nèi)核OS時,采用了面向?qū)ο蟮募夹g(shù),其中的“封裝”,“繼承”,“對象類”和“多態(tài)性”,以及在對象之間采用消息傳遞機制等,都十分有利于提高系統(tǒng)的“正確性”、“可靠性”、“易修改性”、“易擴展性”等,而且還能顯著地減少開發(fā)系統(tǒng)所付出的開銷。5)融入了面向?qū)ο蠹夹g(shù)66
4.微內(nèi)核操作系統(tǒng)存在的問題
較之早期OS,微內(nèi)核OS的運行效率有所降低。
最主要的原因:在完成一次客戶對OS提出的服務(wù)請求時,需要利用消息實現(xiàn)多次交互和進行用戶/內(nèi)核模式及上下文的多次切換。至少需要進行四次上下文切換,有時八次上下文的切換。
怎么辦?把os功能由服務(wù)器移入微內(nèi)核?4.微內(nèi)核操作系統(tǒng)存在的問題67圖1-11在傳統(tǒng)OS和微內(nèi)核OS中的上下文切換
①④②③①②⑤⑥⑦⑧圖1-11在傳統(tǒng)OS和微內(nèi)核OS中的上下文切換①④②③68一.操作系統(tǒng)的形成與發(fā)展操作系統(tǒng)類型:批量OS、分時OS、實時OS、二.操作系統(tǒng)的基本概念:定義、功能、特性、結(jié)構(gòu)設(shè)計作業(yè)題:P33:2、13補充:什么是操作系統(tǒng)?有什么功能?
第一章小結(jié)一.操作系統(tǒng)的形成與發(fā)展第一章小結(jié)69實驗1#機房實驗內(nèi)容:熟悉Linux環(huán)境實驗1#機房70第一章操作系統(tǒng)引論1.1操作系統(tǒng)的目標(biāo)和作用1.2操作系統(tǒng)的發(fā)展過程1.3操作系統(tǒng)的基本特性1.4操作系統(tǒng)的主要功能1.5操作系統(tǒng)的結(jié)構(gòu)設(shè)計第一章操作系統(tǒng)引論1.1操作系統(tǒng)的目標(biāo)和作用71教學(xué)目的:掌握操作系統(tǒng)的定義及其基本特性、主要功能了解操作系統(tǒng)的發(fā)展歷史和幾種類型的操作系統(tǒng)教學(xué)難重點:操作系統(tǒng)的定義操作系統(tǒng)的基本特征OS結(jié)構(gòu)設(shè)計教學(xué)目的:72操作系統(tǒng)概念(p8)一組控制和管理計算機硬件和軟件資源、合理地對各類作業(yè)進行調(diào)度以及方便用戶的程序集合。1.1操作系統(tǒng)的目標(biāo)和作用計算機系統(tǒng)由硬件和軟件組成操作系統(tǒng)概念(p8)1.1操作系統(tǒng)的目標(biāo)和作用計算機系統(tǒng)731.1操作系統(tǒng)的目標(biāo)和作用1.1.1操作系統(tǒng)的目標(biāo)
有效性:提高系統(tǒng)資源利用率,提高系統(tǒng)吞吐量;方便性:計算機只能識別0、1;用戶熟悉的是各種語言;(1,2如何折中?)可擴充性:便于增加新的功能和模塊;(如何設(shè)計?)開放性:遵循世界標(biāo)準(zhǔn)規(guī)范(OSI)。1.1操作系統(tǒng)的目標(biāo)和作用1.1.1操作系統(tǒng)的目標(biāo)74圖1-1OS作為接口的從層狀示意圖計算機硬件操作系統(tǒng)系統(tǒng)調(diào)用,命令,圖標(biāo),窗口應(yīng)用程序及實用程序系統(tǒng)設(shè)計者程序員用戶1.1.2操作系統(tǒng)的作用
1.OS作為用戶與計算機硬件系統(tǒng)之間的接口(用戶觀點)
圖1-1OS作為接口的從層狀示意圖計算機硬件操作系統(tǒng)系統(tǒng)調(diào)75
(1)命令方式。這是指由OS提供了一組聯(lián)機命令(語言),用戶可通過鍵盤輸入有關(guān)命令,來直接操縱計算機系統(tǒng)。(2)系統(tǒng)調(diào)用方式。OS提供了一組系統(tǒng)調(diào)用,用戶可在自己的應(yīng)用程序中通過相應(yīng)的系統(tǒng)調(diào)用,來操縱計算機。(3)圖形、窗口方式。用戶通過屏幕上的窗口和圖標(biāo)來操縱計算機系統(tǒng)和運行自己的程序。用戶通過三種方式使用計算機:(1)命令方式。這是指由OS提供了一組聯(lián)機命76
2.OS作為計算機系統(tǒng)資源的管理者(功能的觀點)處理機管理:分配和控制處理機存儲器管理:分配及回收內(nèi)存I/O(Input/Output)設(shè)備管理:I/O分配與操作文件管理:文件存取、共享和保護
2.OS作為計算機系統(tǒng)資源的管理者(功能的77
3.OS實現(xiàn)了對計算機資源的抽象
裸機:對于一臺完全無軟件的計算機系統(tǒng)稱為裸機?!y于使用。擴充機器(虛機器):把覆蓋了軟件的機器稱為擴充機或虛擬機。——更方便。分層擴充的特點P43.OS實現(xiàn)了對計算機資源的抽象78洋蔥頭似的擴充裸機作系操統(tǒng)其他應(yīng)用軟件用戶應(yīng)用程序序程洋蔥頭似的擴充裸機作系操統(tǒng)其他應(yīng)用軟件用戶應(yīng)用程序序程791.1.3推動操作系統(tǒng)發(fā)展的主要動力
不斷提高計算機資源利用率的需要如批處理系統(tǒng)的出現(xiàn)方便用戶如分時交互式系統(tǒng)的出現(xiàn)器件的不斷更新?lián)Q代8位->16->32->64->...計算機體系結(jié)構(gòu)的不斷發(fā)展:單機OS->多機OS->網(wǎng)絡(luò)OS-…1.1.3推動操作系統(tǒng)發(fā)展的主要動力不斷提高計算機資源利801.2操作系統(tǒng)的發(fā)展過程
1.2.1無操作系統(tǒng)的計算機系統(tǒng)
(第一代計算機)
1.人工操作方式
如紙帶輸入機
特點:無任何軟件、獨占性、獨占性、串行性缺點:
(1)用戶獨占全機(2)CPU等待人工操作
1.2操作系統(tǒng)的發(fā)展過程1.2.1無操作系統(tǒng)的計算機81導(dǎo)致人機矛盾、CPU和I/O設(shè)備速度不匹配
機器作業(yè)在機器上人工操操作時間與機器速度計算所需時間作時間有效運行時間之比1萬次/秒1小時3分鐘1:2060萬次/秒1分鐘3分鐘3:1人工操作方式缺點:1.2.1無操作系統(tǒng)的計算機系統(tǒng)
導(dǎo)致人機矛盾、CPU和I/O設(shè)備速度不匹配
機器822.脫機輸入/輸出(Off-LineI/O)方式引入I/O機的概念,解決CPU和I/O設(shè)備速度不匹配的矛盾。主要優(yōu)點:減少了CPU的空閑時間。(2)提高I/O速度。
2.脫機輸入/輸出(Off-LineI/O)方式引入I/831.2.2單道批處理系統(tǒng)(SimpleBatchProcessingSystem)
(第二代計算機)
處理過程(圖1-4)概念監(jiān)督程序(monitor):在其控制下使一批作業(yè)能一個接一個的連續(xù)處理。單道批處理系統(tǒng):系統(tǒng)對作業(yè)的處理都是成批進行的、且內(nèi)存中始終只保持一道作業(yè),稱為單道批處理系統(tǒng)(SimpleBatchProcessingSystem)。解決人機矛盾,即提高系統(tǒng)資源的利用率和吞吐量。特征:自動性順序性單道性1.2.2單道批處理系統(tǒng)(SimpleBatchPro84還有下一個作業(yè)?把下一個作業(yè)的源程序轉(zhuǎn)換為目標(biāo)程序源程序有錯嗎?裝配目標(biāo)程序運行目標(biāo)程序開始是否停止是否圖1-4單道批處理系統(tǒng)的處理流程
還有下一把下一個作業(yè)源程序裝配目標(biāo)程序運行目標(biāo)程序開始是否停851.2.3多道批處理系統(tǒng)(MultiprogrammedBatchProcessingSystem)(第三代計算機)
概念多道:系統(tǒng)中同時駐留多個作業(yè)多道程序設(shè)計優(yōu)點提高CPU利用率(圖1-5)提高內(nèi)存和I/O設(shè)備利用率增加了系統(tǒng)吞吐量特征多道性、宏觀上并行、微觀上串行多道批處理優(yōu)點
資源利用率高、系統(tǒng)吞吐率大缺點平均周轉(zhuǎn)時間長、無交互能力(怎么辦??)1.2.3多道批處理系統(tǒng)(Multiprogrammed86圖1-5用戶程序監(jiān)督程序(a)單道程序運行情況I/O操作I/O中斷請求啟動I/OI/O完成結(jié)束中斷I/O中斷請求啟動I/OI/O完成結(jié)束中斷t1t2t3t4t5t6t7t8表示獲得CPU圖1-5用戶程序監(jiān)督程序(a)單道程序運行情況I/O操作I/87圖1-5程序A調(diào)度程序I/O請求(b)四道程序運行情況程序B程序C程序DI/O請求I/O請求I/O請求I/O完成I/O完成I/O完成A完成表示獲得CPUC再運行圖1-5程序A調(diào)度程序I/O請求(b)四道程序運行情況程序B88多道批處理系統(tǒng)需要解決的問題
處理機管理問題。(2)內(nèi)存管理問題。(3)I/O設(shè)備管理問題。(4)文件管理問題。(5)作業(yè)管理問題。多道批處理系統(tǒng)需要解決的問題處理機管理問題。891.2.4分時系統(tǒng)
分時系統(tǒng)(Time-SharingSystem)的產(chǎn)生用戶的需求表現(xiàn)在:人機交互性(控制)共享主機(昂貴)便于用戶上機(方便)分時系統(tǒng):指一臺主機上連接了多個帶有顯示器和鍵盤的終端,同時允許多個用戶共享主機中的資源,各個用戶都可通過自己的終端以交互方式使用計算機。1.2.4分時系統(tǒng)分時系統(tǒng)(Time-Sharing90分時系統(tǒng)實現(xiàn)中的關(guān)鍵問題及時接收。多路卡、輸入緩沖區(qū)及時處理。交互作業(yè)應(yīng)在內(nèi)存、響應(yīng)時間應(yīng)短采用時間片輪轉(zhuǎn)多路性(同時性)獨立性(獨占性)及時性(1—3sec)交互性:
“會話”
分時系統(tǒng)的特征
分時系統(tǒng)實現(xiàn)中的關(guān)鍵問題及時接收。多路卡、輸入緩沖區(qū)多路性(911.2.5實時系統(tǒng)
概念所謂“實時”,是表示“及時”,而實時系統(tǒng)(Real-TimeSystem)是指系統(tǒng)能及時(或即時)響應(yīng)外部事件的請求,在規(guī)定的時間內(nèi)(deadline)完成對該事件的處理,并控制所有實時任務(wù)協(xié)調(diào)一致地運行。
應(yīng)用需求
實時控制。(2)實時信息處理。1.2.5實時系統(tǒng)概念應(yīng)用需求實時控制。92響應(yīng)時間:指用戶發(fā)出命令,到系統(tǒng)完成用戶命令所需的時間。批處理操作系統(tǒng)沒有分時操作系統(tǒng)秒級(一般情況)實時操作系統(tǒng)微秒級甚至更?。ń?jīng)典說法)系統(tǒng)滿足用戶時限(deadline)的要求(現(xiàn)代)響應(yīng)時間:指用戶發(fā)出命令,到系統(tǒng)完成用戶命令所需的時間。93
實時任務(wù)
按任務(wù)執(zhí)行是否呈現(xiàn)周期性來劃分
周期性的非周期性的(開始截止時間或完成截止時間)根據(jù)對截止時間的要求來劃分
硬實時任務(wù):必須滿足。實時控制軟實時任務(wù):不太嚴(yán)格。實時信息處理實時任務(wù)按任務(wù)執(zhí)行是否呈現(xiàn)周期性來劃分94實時操作系統(tǒng)特點系統(tǒng)對外部的信號必須能及時響應(yīng),(在規(guī)定的時間內(nèi)(deadline));要求高可靠性和安全性,效率則放在第二位;系統(tǒng)整體性強;不要求很強的“會話”能力。實時操作系統(tǒng)特點95實時系統(tǒng)與分時系統(tǒng)特征的比較多路性:相似獨立性:相同及時性:實時系統(tǒng)要求更高交互性:分時系統(tǒng)交互性更強可靠性:實時系統(tǒng)要求更高實時系統(tǒng)與分時系統(tǒng)特征的比較961.2.6微機操作系統(tǒng)的發(fā)展
字長劃分:運行方式劃分:1.單用戶單任務(wù)操作系統(tǒng)含義:只允許一個用戶上機,且只允許用戶程序作為一個任務(wù)運行。(一個人只做一件事)配置在8位和16位微機。代表是CP/M,MS-DOS,PC-DOS
。
2.單用戶多任務(wù)操作系統(tǒng)含義:只允許一個用戶上機,但允許用戶把程序分為若干個任務(wù),使它們并發(fā)執(zhí)行。(一個人同時做多件事)配置在32位微機。代表是由微軟公司推出的Windows。1.2.6微機操作系統(tǒng)的發(fā)展2.單用戶多任務(wù)操作系97
3.多用戶多任務(wù)操作系統(tǒng)含義:允許多個用戶通過各自的終端使用同一臺機器,共享主機系統(tǒng)中的各種資源,而每個用戶程序又可進一步分為幾個任務(wù),使它們能并發(fā)執(zhí)行,從而可進一步提高資源利用率和系統(tǒng)吞吐量。(多個人同時做多件事)大、中和小型機中所配置的大多是多用戶多任務(wù)操作系統(tǒng),而在32位微機上也配置有多用戶多任務(wù)操作系統(tǒng),其中最有代表性的是UNIXOS。
3.多用戶多任務(wù)操作系統(tǒng)98UNIXOS是美國電報電話公司的Bell實驗室在1969~1970年期間開發(fā)的?,F(xiàn)在最有影響的兩個能運行在微機上的UNIX操作系統(tǒng)的變型是SolarisOS和LinuxOS。
UNIXOS是美國電報電話公司的Bell實驗室在19699LinuxOS:Linux是UNIX的一個重要變種,最初是由芬蘭學(xué)生LinusTorvalds針對Intel80386開發(fā)的。1991年在Internet網(wǎng)上發(fā)布第一個Linux版本,由于源代碼公開,因此有很多人通過Internet與之合作,使Linux的性能迅速提高,其應(yīng)用范圍也日益擴大。相應(yīng)地,源代碼也急劇膨脹,此時它已是具有全面功能的UNIX系統(tǒng),大量在UNIX上運行的軟件(包括1000多種實用工具軟件和大量的網(wǎng)絡(luò)軟件)被移植到Linux上,而且可以在主要的微機上運行,如Intel80x86Pentium等。
LinuxOS:Linux是UNIX的一個重要變種,100更多操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng)(NetworkOperatingSystem)是建立在主機操作系統(tǒng)基礎(chǔ)上,用于管理網(wǎng)絡(luò)通信和共享資源,協(xié)調(diào)各主機上任務(wù)的運行,并向用戶提供統(tǒng)一的、有效的網(wǎng)絡(luò)接口的軟件集合,它是用戶和主機操作系統(tǒng)之間的接口。分布式計算機系統(tǒng)由多臺分散的計算機經(jīng)互連網(wǎng)絡(luò)連接而成嵌入式操作系統(tǒng)指運行在嵌入式(計算機)環(huán)境中,對整個系統(tǒng)及所有操作的各種部件、裝置等資源進行統(tǒng)一協(xié)調(diào)、處理、指揮和控制的系統(tǒng)軟件更多操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng)(NetworkOperating101操作系統(tǒng)的進一步發(fā)展
操作系統(tǒng)發(fā)展的主要動力器件快速更新?lián)Q代。計算體系結(jié)構(gòu)不斷發(fā)展。提高計算機系統(tǒng)資源利用率的需要。讓用戶使用計算機越來越方便的需要。滿足用戶新要求,提供給用戶新服務(wù)。操作系統(tǒng)發(fā)展的方向從大中型計算機來看,主要是分布式和網(wǎng)絡(luò)化。微機操作系統(tǒng)主要向多用戶多功能、虛存、圖形、數(shù)據(jù)庫等方向發(fā)展。操作系統(tǒng)的智能化。操作系統(tǒng)的進一步發(fā)展
操作系統(tǒng)發(fā)展的主要動力1021.3操作系統(tǒng)的基本特性
OS特性一:并發(fā)性并行與并發(fā)并行性(Parallelism)是指兩個或多個事件在同一時刻發(fā)生。如T3時刻并發(fā)性(Concurrence)
是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。如T3—T4時刻并發(fā)性是OS最重要的特征,OS所有的內(nèi)容都圍繞它展開??!1.3操作系統(tǒng)的基本特性O(shè)S特性一:并發(fā)性103引入進程
目的:為了使多個程序能并發(fā)執(zhí)行。
好處:有效地提高了系統(tǒng)資源的利用率和系統(tǒng)吞吐量,并改善了系統(tǒng)的性能。
進程(Process):在系統(tǒng)中能獨立運行并作為資源分配的基本單位,它是由一組機器指令、數(shù)據(jù)和堆棧等組成的,是一個能獨立運行的活動實體。
一個進程在運行時需要一定的資源,如CPU、存儲空間及I/O設(shè)備等。
引入進程104線程
在引入線程的OS中,通常都是把進程作為分配資源的基本單位,而把線程作為獨立運行和獨立調(diào)度的基本單位。
進程和并發(fā)是現(xiàn)代操作系統(tǒng)最重要的概念!線程105OS特性二:共享性共享:系統(tǒng)中資源可供內(nèi)存中多個并發(fā)執(zhí)行的進程共同使用互斥共享:一段時間只允許一個進程訪問某資源.同時訪問:宏觀上允許在一段時間內(nèi)由多個進程同時對某資源進行訪問,但微觀上仍是互斥的.并發(fā)與共享是OS的兩個最基本的特征,它們互為存在條件.OS特性二:共享性106OS特性三:虛擬虛擬(不存在)通過某種技術(shù)把一個物理實體變?yōu)槿舾蓚€邏輯上的對應(yīng)物。在OS中利用了多種虛擬技術(shù),分別用來實現(xiàn)虛擬處理機、虛擬內(nèi)存、虛擬外部設(shè)備等??臻g換時間時間換空間OS特性三:虛擬虛擬(不存在)空間換時間時間換空間107OS特性四:異步性異步性(Asynchronism)
:進程以人們不可預(yù)知的速度向前推進。運行結(jié)果如何保證正確?
在多道程序環(huán)境下允許多個進程并發(fā)執(zhí)行,但只有進程在獲得所需的資源后方能執(zhí)行。由于資源等因素的限制,使進程的執(zhí)行通常都不是“一氣呵成”,而是以“停停走走”的方式運行。
OS特性四:異步性1081.4操作系統(tǒng)的主要功能
1.4.1處理機管理功能多道環(huán)境下,處理機的運行及分配都是以進程為單位,因此處理機管理可歸結(jié)為進程管理。1、進程控制創(chuàng)建/撤消進程、遷移進程狀態(tài)。一般由進程控制原語完成
2.進程同步兩種協(xié)調(diào)方式:(1)進程互斥方式。(2)進程同步方式。
3.進程通信類型:直接通信、間接通信1.4操作系統(tǒng)的主要功能1.4.1處理機管理功能1094、調(diào)度(作業(yè)與進程)作業(yè)調(diào)度為作業(yè)分配必要資源,調(diào)入內(nèi)存建立進程,并使之進入就緒隊列。進程調(diào)度從就緒隊列中選出進程,分配CPU,使之運行。調(diào)度算法:FCFS、優(yōu)先權(quán)等4、調(diào)度(作業(yè)與進程)1101.4.2存儲器管理功能目的:方便用戶使用,且提高存貯器利用率1.內(nèi)存分配:靜態(tài)分配、動態(tài)分配2.內(nèi)存保護:機制,例:上下界限寄存器3.地址映射:邏輯地址——〉物理地址4.內(nèi)存擴充:虛存,邏輯上擴充1.4.2存儲器管理功能1111.4.3設(shè)備管理功能
任務(wù):提高I/O利用率和速度,方便用戶1.緩沖管理緩沖區(qū):用來解決CPU-I/O矛盾,如:CPU快則應(yīng)多創(chuàng)建緩沖區(qū)。2.設(shè)備分配包括:設(shè)備,設(shè)備控制器,I/O通信的分配和回收3.設(shè)備處理設(shè)備驅(qū)動程序1.4.3設(shè)備管理功能1121.4.4文件管理功能
任務(wù):方便用戶,提供安全性1.文件存儲空間的管理為每個文件分配必要的外存空間,提高外存的利用率。2.目錄管理使用戶按名存取,提高速度。3.文件的讀、寫管理和保護根據(jù)用戶的需求讀寫數(shù)據(jù),并提供有效的存取控制功能。1.4.4文件管理功能1131.4.5操作系統(tǒng)與用戶之間的接口
為了方便用戶使用操作系統(tǒng),OS又向用戶提供了“用戶與操作系統(tǒng)的接口”。該接口通常可分為兩大類:
(1)用戶接口。它是提供給用戶使用的接口,用戶可通過該接口取得操作系統(tǒng)的服務(wù);
(2)程序接口。它是提供給程序員在編程時使用的接口,是用戶程序取得操作系統(tǒng)服務(wù)的惟一途徑。
1.4.5操作系統(tǒng)與用戶之間的接口1141.用戶接口由一組“命令”集組成,分為聯(lián)機和脫機用戶接口聯(lián)機用戶接口由一組鍵盤操作命令及命令解釋程序所組成脫機(批處理用戶接口)用JCL寫作業(yè)說明書圖形用戶接口——〉聯(lián)機用戶接口圖形、icon2.程序接口
系統(tǒng)調(diào)用高級語言的庫函數(shù)1.用戶接口1151.5OS的結(jié)構(gòu)設(shè)計第一代:無結(jié)構(gòu)第二代:模塊式第三代:分層式第四代:微內(nèi)核把前三代的OS結(jié)構(gòu)稱為傳統(tǒng)的OS結(jié)構(gòu),而把第四代的OS結(jié)構(gòu)稱為現(xiàn)代OS結(jié)構(gòu)。1.5OS的結(jié)構(gòu)設(shè)計第一代:無結(jié)構(gòu)1161.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)無結(jié)構(gòu)OS一組過程集,各過程可相互調(diào)用,也叫整體系統(tǒng)結(jié)構(gòu)。缺點:邏輯復(fù)雜,維護困難.1.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)無結(jié)構(gòu)OS1171.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)模塊化結(jié)構(gòu)OS通過分解和模塊化來控制大型軟件復(fù)雜度。如:進程模塊、內(nèi)存模塊…,各模塊內(nèi)進一步劃分子模塊。優(yōu)點:提高了OS設(shè)計的正確性、可理解性、可維護性增強的OS的可適應(yīng)性加速了OS的開發(fā)過程:并行開發(fā)模塊缺點:模塊大小、接口不易確定模塊依賴關(guān)系可能復(fù)雜-〉無序模塊法1.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)模塊化結(jié)構(gòu)OS1181.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)分層式操作系統(tǒng)分層式結(jié)構(gòu)的基本概念:自底向上,每一層僅能使用其底層所提供的功能和服務(wù)優(yōu)點(1)易保證系統(tǒng)的正確性(2)易擴充和易維護性缺點效率降低
1.5.1傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu)分層式操作系統(tǒng)1191.5.2客戶/服務(wù)器模式客戶/服務(wù)器(Client/Server)模式可簡稱為C/S模式。
C/S模式的組成由客戶機、服務(wù)器和網(wǎng)絡(luò)系統(tǒng)三個部分組成。(1)客戶機:通常在一個LAN網(wǎng)絡(luò)上連接有多臺網(wǎng)絡(luò)工作站(簡稱客戶機),每臺客戶機都是一個自主計算機。
1.5.2客戶/服務(wù)器模式120
(2)服務(wù)器:通常是一臺規(guī)模較大的機器,在其上駐留有網(wǎng)絡(luò)文件系統(tǒng)或數(shù)據(jù)庫系統(tǒng)等,它應(yīng)能為網(wǎng)上所有的用戶提供一種或多種服務(wù)。平時它一直處于工作狀態(tài),被動地等待來自客戶機的請求,一旦檢查到有客戶提出服務(wù)請求,便去完成客戶的請求,并將結(jié)果送回客戶。這樣,工作站中的用戶進程與服務(wù)器進程便形成了客戶/服務(wù)器關(guān)系。(3)網(wǎng)絡(luò)系統(tǒng):用于連接所有客戶機和服務(wù)器,實現(xiàn)它們之間通信和網(wǎng)絡(luò)資源共享的系統(tǒng)。(2)服務(wù)器:通常是一臺規(guī)模較大的機器,在其上駐留有網(wǎng)121
C/S模式的優(yōu)點(1)數(shù)據(jù)的分布處理和存儲(2)便于集中管理。(3)靈活性和可擴充性(4)易于改編應(yīng)用軟件。C/S模式的優(yōu)點1221.5.3面向?qū)ο蟮某绦蛟O(shè)計
面向?qū)ο蠹夹g(shù)的基本概念面向?qū)ο蠹夹g(shù)是20世紀(jì)80年代初提出并很快流行起來的。該技術(shù)是基于“抽象”和“隱蔽”原則來控制大型軟件的復(fù)雜度的。
對象是指在現(xiàn)實世界中具有相同屬性、服從相同規(guī)則的一系列事物(事物可以是一個物理實體、一個概念或一個軟件模塊等)的抽象,而把其中的具體事物稱為對象的實例。1.5.3面向?qū)ο蟮某绦蛟O(shè)計123
面向?qū)ο蠹夹g(shù)的優(yōu)點在設(shè)計操作系統(tǒng)時,將計算機中的實體作為對象來處理,可帶來如下好處:(1)通過“重用”提高產(chǎn)品質(zhì)量和生產(chǎn)率。(2)使系統(tǒng)具有更好的易修改性和易擴展性。(3)更易于保證系統(tǒng)的“正確性”和“可靠性”。面向?qū)ο蠹夹g(shù)的優(yōu)點1241.5.4微內(nèi)核OS結(jié)構(gòu)
1.微內(nèi)核操作系統(tǒng)的基本概念
為了提高操作系統(tǒng)的“正確性”、“靈活性”、“易維護性”和”可擴充性”,在進行現(xiàn)代操作系統(tǒng)結(jié)構(gòu)設(shè)計時,即使在單處理機環(huán)境下,大多也采用基于客戶/服務(wù)器模式的微內(nèi)核結(jié)構(gòu),將操作系統(tǒng)劃分為兩大部分:微內(nèi)核和多個服務(wù)器。MachOS:并行分布式操作系統(tǒng),現(xiàn)代的微內(nèi)核體系結(jié)構(gòu)的例子
Windows2K/XP:為了移植性的考慮,Windows操作系統(tǒng)的大多數(shù)代碼是用C語言編寫的
/bookfiles/296/10029612589.shtml1.5.4微內(nèi)核OS結(jié)構(gòu)125
1)足夠小的內(nèi)核
內(nèi)核是指精心設(shè)計的、能實現(xiàn)現(xiàn)代OS最基本的核心功能的部分。用于:①實現(xiàn)與硬件緊密相關(guān)的處理;②實現(xiàn)一些較基本的功能;③負(fù)責(zé)客戶和服務(wù)器之間的通信。它們只是為構(gòu)建通用OS提供一個重要基礎(chǔ),這樣就可以確保把操作系統(tǒng)內(nèi)核做得很小。1)足夠小的內(nèi)核126
2)基于客戶/服務(wù)器模式
由于客戶/服務(wù)器模式具有非常多的優(yōu)點,故在單機微內(nèi)核操作系統(tǒng)中幾乎無一例外地都采用客戶/服務(wù)器模式,將操作系統(tǒng)中最基本的部分放入內(nèi)核中,而把操作系統(tǒng)的絕大部分功能都放在微內(nèi)核外面的一組服務(wù)器(進程)中實現(xiàn)。例如用于提供對進程(線程)進行管理的進程(線程)服務(wù)器,提供虛擬存儲器管理功能的虛擬存儲器服務(wù)器,提供I/O設(shè)備管理的I/O設(shè)備管理服務(wù)器等,它們都是被作為進程來實現(xiàn)的,運行在用戶態(tài),客戶與服務(wù)器
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)行業(yè)法規(guī)政策解讀-洞察分析
- 虛擬現(xiàn)實公共服務(wù)創(chuàng)新-洞察分析
- 微服務(wù)架構(gòu)下保護算法優(yōu)化-洞察分析
- 投資者保護機制完善-洞察分析
- 網(wǎng)絡(luò)安全人才培養(yǎng)-第12篇-洞察分析
- 新型船舶材料研究-洞察分析
- 藝術(shù)傳承與鄉(xiāng)村振興-洞察分析
- 消費者健康意識提升策略-洞察分析
- 信息素在種間關(guān)系中的作用-洞察分析
- 網(wǎng)絡(luò)攻防技術(shù)與計算機安全應(yīng)對策略研究-洞察分析
- JJF(陜) 085-2022 全自動容量稀釋配標(biāo)儀校準(zhǔn)規(guī)范
- 粉末銷售合同范例
- 山東省濟南市2023-2024學(xué)年高一上學(xué)期1月期末考試 物理 含答案
- 科研設(shè)計及研究生論文撰寫智慧樹知到期末考試答案章節(jié)答案2024年浙江中醫(yī)藥大學(xué)
- 2024年江蘇省普通高中學(xué)業(yè)水平測試小高考生物、地理、歷史、政治試卷及答案(綜合版)
- 8 泵站設(shè)備安裝工程單元工程質(zhì)量驗收評定表及填表說明
- 備品備件更換記錄表
- 橋面鋪裝施工質(zhì)量控制培訓(xùn)
- 醫(yī)院護理品管圈成果匯報提高24小時出入量準(zhǔn)確率完整版本PPT易修改
- 閱讀《合作學(xué)習(xí):實用技能、基本原則及常見問題》的體會
- 在全市高技能人才隊伍建設(shè)工作會議上的講話
評論
0/150
提交評論