第一章操作系統(tǒng)引論1_第1頁
第一章操作系統(tǒng)引論1_第2頁
第一章操作系統(tǒng)引論1_第3頁
第一章操作系統(tǒng)引論1_第4頁
第一章操作系統(tǒng)引論1_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

教材:計(jì)算機(jī)操作系統(tǒng)湯小丹、梁紅兵、哲鳳屏、湯子瀛編著西安電子科技大學(xué)出版社(第四版)任課教師:朱元輝

礪志樓207675788321@參考書張堯?qū)W,史美林,計(jì)算機(jī)操作系統(tǒng)教程(第3版),清華大學(xué)出版社,2006年孫鐘秀,操作系統(tǒng)教程(第3版)

,高等教育出版社,2003年8月AbrahamSilberschatz,OperatingSystemConcepts(6rdedition),高等教育出版社,2002年5月WilliamStallings,操作系統(tǒng)-內(nèi)核與設(shè)計(jì)原理(第四版),電子工業(yè)出版社,2005年1月課程目的不是如何使用操作系統(tǒng) 而是理解操作系統(tǒng)如何工作

OS工作方式

OS內(nèi)部算法和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)OS過程中的問題、解決方案和折中權(quán)衡實(shí)踐性強(qiáng)(從實(shí)踐總結(jié)出原理)涉及面廣(并行程序,性能問題,結(jié)構(gòu)問題,程序方法論,軟件工程,等等)錯(cuò)綜復(fù)雜、縱橫交叉如何學(xué)好操作系統(tǒng)?

操作系統(tǒng)課程的特點(diǎn)設(shè)計(jì)操作系統(tǒng)或者修改現(xiàn)有的系統(tǒng)。存在人們意識(shí)不到的大量“操作系統(tǒng)”-嵌入式系統(tǒng)(EmbeddedOS)加深對(duì)使用的OS的理解,有利于深入編程用戶為了開發(fā)應(yīng)用程序必須與操作系統(tǒng)打交道編程時(shí)借鑒操作系統(tǒng)的設(shè)計(jì)思想和算法,操作系統(tǒng)中所用的許多概念和技巧可以推廣應(yīng)用到其他領(lǐng)域選擇購買操作系統(tǒng)我們并不總使用Win98/NT/XP/Win7/Win10等WINDOWS系統(tǒng),還有......為什么學(xué)習(xí)操作系統(tǒng)?

涉及到計(jì)算機(jī)科學(xué)的很多領(lǐng)域 計(jì)算機(jī)體系結(jié)構(gòu)/硬件 軟件設(shè)計(jì) 程序設(shè)計(jì)語言 數(shù)據(jù)結(jié)構(gòu) 算法 網(wǎng)絡(luò)

學(xué)習(xí)核心技術(shù)并能在其他地方應(yīng)用之應(yīng)聘工作、考研為什么學(xué)習(xí)操作系統(tǒng)?課程主要內(nèi)容介紹用戶接口進(jìn)程管理處理機(jī)管理存儲(chǔ)管理設(shè)備管理文件管理操作系統(tǒng)的功能管理系統(tǒng)軟硬件資源、擴(kuò)展計(jì)算機(jī)的功能、向用戶提供服務(wù)。課程考核辦法平時(shí)(小測(cè)、作業(yè)及考勤):20%實(shí)驗(yàn):20%期末考試:60%實(shí)驗(yàn)課安排:實(shí)驗(yàn)室鐘瑋老師安排,預(yù)計(jì)國慶后開始第一章緒論1.1什么是操作系統(tǒng)1.2操作系統(tǒng)的發(fā)展歷史1.3操作系統(tǒng)的分類1.4操作系統(tǒng)的特征1.5操作系統(tǒng)的功能1.6操作系統(tǒng)的結(jié)構(gòu)1.7常用的操作系統(tǒng)教學(xué)目的與要求了解操作系統(tǒng)的發(fā)展過程理解操作系統(tǒng)的目標(biāo)和作用理解操作系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)方法掌握操作系統(tǒng)的基本特征和功能掌握三種基本操作系統(tǒng)的基本原理和異同教學(xué)重點(diǎn):

操作系統(tǒng)的基本特征和功能、系統(tǒng)功能調(diào)用教學(xué)難點(diǎn):系統(tǒng)功能調(diào)用1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標(biāo)1.1.2操作系統(tǒng)的作用和組成1.1.3操作系統(tǒng)舉例返回1.1.1操作系統(tǒng)的地位和目標(biāo)圖1.1 計(jì)算機(jī)系統(tǒng)的組成計(jì)算機(jī)系統(tǒng)(層次結(jié)構(gòu))軟件硬件及固件(裸機(jī))應(yīng)用軟件系統(tǒng)軟件編輯軟件,編譯軟件操作系統(tǒng)操作系統(tǒng)在計(jì)算機(jī)系統(tǒng)中的地位操作系統(tǒng)的地位:緊貼系統(tǒng)硬件之上,所有其他軟件之下(是其他軟件的共同環(huán)境)引入操作系統(tǒng)的目標(biāo)有效性(系統(tǒng)管理人員的觀點(diǎn)):管理和分配硬件、軟件資源,提高系統(tǒng)資源利用率;合理地組織計(jì)算機(jī)的工作流程,提高系統(tǒng)的吞吐量。方便性(用戶的觀點(diǎn)):提供良好的、一致的用戶接口,彌補(bǔ)硬件系統(tǒng)的類型和數(shù)量差別可擴(kuò)充性(開放的觀點(diǎn)):硬件的類型和規(guī)模、操作系統(tǒng)本身的功能和管理策略、多個(gè)系統(tǒng)之間的資源共享和互操作開放性:遵循開放系統(tǒng)互連(OSI)國際標(biāo)準(zhǔn),實(shí)現(xiàn)兼容、互連操作系統(tǒng)的作用(1)

1.1.2操作系統(tǒng)的作用系統(tǒng)命令(命令行、菜單式、命令腳本式);系統(tǒng)調(diào)用(形式上類似于過程調(diào)用,在應(yīng)用編程中使用)。圖形用戶接口GUIOS是用戶使用系統(tǒng)硬件、軟件的接口。操作系統(tǒng)的作用(2)

管理對(duì)象包括:CPU、存儲(chǔ)器、外部設(shè)備、信息(數(shù)據(jù)和軟件);管理的內(nèi)容:資源的當(dāng)前狀態(tài)(數(shù)量和使用情況)、資源的分配、回收和訪問操作,相應(yīng)管理策略(包括用戶權(quán)限)。OS是計(jì)算機(jī)硬件、軟件資源的管理者。操作系統(tǒng)的作用(3)

在裸機(jī)上添加:設(shè)備管理、文件管理、存儲(chǔ)管理(針對(duì)內(nèi)存和外存)、處理機(jī)管理(針對(duì)CPU);另外,為合理組織工作流程:作業(yè)管理、進(jìn)程管理。操作系統(tǒng)的非形式化定義:系統(tǒng)軟件,程序模塊的集合,資源管理和用戶接口功能OS是擴(kuò)展機(jī)(extendedmachine)/虛擬機(jī)(virtualmachine)。1.1.3推動(dòng)操作系統(tǒng)發(fā)展的主要?jiǎng)恿?1)提高資源的利用率和系統(tǒng)性能:計(jì)算機(jī)發(fā)展的初期,計(jì)算機(jī)系統(tǒng)昂貴,用作集中計(jì)算(2)方便用戶:用戶上機(jī)、調(diào)試程序,分散計(jì)算時(shí)的事務(wù)處理和非專業(yè)用戶(商業(yè)和辦公、家庭)(3)器件的發(fā)展:CPU的位寬度(指令和數(shù)據(jù))、快速外存(4)計(jì)算機(jī)體系結(jié)構(gòu)的不斷發(fā)展:多處理機(jī)系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)“需求推動(dòng)發(fā)展”1.2操作系統(tǒng)的發(fā)展過程1.2.1無操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)1.2.2單道批處理系統(tǒng)(simplebatch processing)1.2.3多道批處理系統(tǒng)(multiprogrammingsystem)1.2.4分時(shí)系統(tǒng)(time-sharingsystem)1.2.5實(shí)時(shí)系統(tǒng)(real-timesystem)返回1.手工操作工作方式用戶:用戶既是程序員,又是操作員;用戶是計(jì)算機(jī)專業(yè)人員;編程語言:為機(jī)器語言;輸入輸出:紙帶或卡片;計(jì)算機(jī)的工作特點(diǎn)用戶獨(dú)占全機(jī):不出現(xiàn)資源被其他用戶占用,資源利用率低;CPU等待用戶:計(jì)算前,手工裝入紙帶或卡片;計(jì)算完成后,手工卸取紙帶或卡片;CPU利用率低;1946~50年代(電子管),集中計(jì)算(計(jì)算中心),計(jì)算機(jī)資源昂貴;主要矛盾計(jì)算機(jī)處理能力的提高,手工操作的低效率(造成浪費(fèi));用戶獨(dú)占全機(jī)的所有資源;提高效率的途徑專門的操作員,批處理2.脫機(jī)輸入/輸出(Off-LineI/O)方式這種脫機(jī)I/O方式的主要優(yōu)點(diǎn)如下:減少了CPU的空閑時(shí)間。(2)提高I/O速度。圖1-2脫機(jī)I/O示意圖1.2.2單道批處理系統(tǒng)1.單道批處理系統(tǒng)(SimpleBatchProcessingSystem)的處理過程圖1-3單道批處理系統(tǒng)的處理流程

源程序有錯(cuò)嗎?否裝配目標(biāo)程序還有下一個(gè)作業(yè)?是否停止運(yùn)行目標(biāo)程序是開始把下一個(gè)作業(yè)的源程序轉(zhuǎn)換為目標(biāo)程序MemoryLayoutforaSimpleBatchSystem單道批處理系統(tǒng)是最早出現(xiàn)的一種OS,嚴(yán)格地說,它只能算作是OS的前身而并非是現(xiàn)在人們所理解的OS。盡管如此,該系統(tǒng)比起人工操作方式的系統(tǒng)已有很大進(jìn)步。該系統(tǒng)的主要特征如下:

(1)自動(dòng)性。

(2)順序性。

(3)單道性。2.單道批處理系統(tǒng)的特征1.2.4多道批處理系統(tǒng)

(multiprogrammingsystem)60年代中~70年代中(集成電路),利用多道批處理提高資源的利用率。Severaljobsarekeptinmainmemoryatthesametime,andtheCPUismultiplexedamongthem.批處理系統(tǒng)中作業(yè)處理及狀態(tài)

1、引入多道程序設(shè)計(jì)技術(shù)帶來的好處提高CPU的利用率??商岣邇?nèi)存和I/O設(shè)備利用率。增加系統(tǒng)吞吐量。圖1-4單道和多道程序運(yùn)行情況2、多道批處理的運(yùn)行特征

多道:內(nèi)存中同時(shí)存放幾個(gè)作業(yè);無序性:都處于運(yùn)行狀態(tài),完成無先后順序;調(diào)度性:1、作業(yè)調(diào)度;2、進(jìn)程調(diào)度在當(dāng)前運(yùn)行的作業(yè)需作I/O處理時(shí),CPU轉(zhuǎn)而執(zhí)行另一個(gè)作業(yè)。(I/O完成后是否立刻恢復(fù)執(zhí)行?要等到其他程序再次I/O時(shí))單道和多道批處理的比較多道程序系統(tǒng)和多處理系統(tǒng)(multiprocessingsystem)的區(qū)別:前者指多個(gè)程序同時(shí)在內(nèi)存中交替運(yùn)行,后者指多個(gè)處理器。多道批處理系統(tǒng)的資源利用效率特征多道批處理系統(tǒng)的資源利用效率特征是基于各作業(yè)對(duì)系統(tǒng)資源的需求差異得到的。例如:有3個(gè)作業(yè)A、B、C,分別為計(jì)算、檢索和打印作業(yè),單道運(yùn)行時(shí)間分別為5分、15分和10分鐘。它們可并行在15分鐘內(nèi)完成3個(gè)作業(yè)。各資源的利用效率為:3、多道批處理系統(tǒng)的優(yōu)缺點(diǎn)優(yōu)點(diǎn):資源利用率高:CPU和內(nèi)存利用率較高;作業(yè)吞吐量大:?jiǎn)挝粫r(shí)間內(nèi)完成的工作總量大;缺點(diǎn):用戶交互性差:整個(gè)作業(yè)完成后或中間出錯(cuò)時(shí),才與用戶交互,不利于調(diào)試和修改;作業(yè)平均周轉(zhuǎn)時(shí)間長(zhǎng):短作業(yè)的周轉(zhuǎn)時(shí)間顯著增長(zhǎng);批處理:交互性差--提高對(duì)CPU利用率;分時(shí)處理:用戶與應(yīng)用程序隨時(shí)交互,控制程序運(yùn)行,適于商業(yè)和辦公事務(wù)處理--縮短響應(yīng)時(shí)間處理機(jī)管理問題。內(nèi)存管理問題。I/O設(shè)備管理問題。文件管理問題。作業(yè)管理問題。4、多道批處理系統(tǒng)需要解決的問題

操作系統(tǒng)是一組控制和管理計(jì)算機(jī)硬件和軟件資源,合理地對(duì)各類作業(yè)進(jìn)行調(diào)度,以及方便用戶使用的程序的集合。1.2.5分時(shí)系統(tǒng)

(time-sharingsystem)“分時(shí)”的含義分時(shí)是指多個(gè)用戶分享使用同一臺(tái)計(jì)算機(jī)。多個(gè)程序分時(shí)共享硬件和軟件資源。多個(gè)用戶分時(shí):?jiǎn)蝹€(gè)用戶使用計(jì)算機(jī)的效率低,因而允許多個(gè)應(yīng)用程序同時(shí)在內(nèi)存中,分別服務(wù)于不同的用戶。有用戶輸入時(shí)由CPU執(zhí)行,處理完一次用戶輸入后程序暫停,等待下一次用戶輸入--時(shí)走時(shí)停70年代中期至今前臺(tái)和后臺(tái)程序(foreground&background)分時(shí):后臺(tái)程序不占用終端輸入輸出,不與用戶交互--現(xiàn)在的圖形用戶界面(GUI),除當(dāng)前交互的程序(輸入焦點(diǎn))之外,其他程序均作為后臺(tái)通常按時(shí)間片(timeslice)分配:各個(gè)程序在CPU上執(zhí)行的輪換時(shí)間。分時(shí)系統(tǒng)的特點(diǎn)多路性:多個(gè)用戶同時(shí)使用。獨(dú)立性:對(duì)每個(gè)用戶而言好象獨(dú)占主機(jī)。及時(shí)性:用戶的請(qǐng)求能在其所能接受的等待時(shí)間間隔內(nèi)(時(shí)間片)獲得響應(yīng)。交互性:在調(diào)試和運(yùn)行程序時(shí)由用戶自己操作。現(xiàn)在的許多操作系統(tǒng)都具有分時(shí)處理的功能,在分時(shí)系統(tǒng)的基礎(chǔ)上,操作系統(tǒng)的發(fā)展開始分化,如實(shí)時(shí)系統(tǒng)、通用系統(tǒng)、個(gè)人系統(tǒng)等。1.2.6實(shí)時(shí)系統(tǒng)

(real-timesystem)要求:響應(yīng)時(shí)間短,在一定范圍之內(nèi);系統(tǒng)可靠性高任務(wù)的類型:周期性實(shí)時(shí)任務(wù):外設(shè)周期性地發(fā)出激勵(lì)信號(hào)給計(jì)算機(jī)非周期性實(shí)時(shí)任務(wù):截止時(shí)間(deadline),開始截止時(shí)間(最晚開始時(shí)間)和完成截止時(shí)間(最晚完成時(shí)間)用于工業(yè)過程控制、軍事實(shí)時(shí)控制、金融等領(lǐng)域,包括實(shí)時(shí)控制、實(shí)時(shí)信息處理目前的操作系統(tǒng),通常具有分時(shí)、實(shí)時(shí)和批處理功能,又稱作通用操作系統(tǒng)??蛇m用于計(jì)算、事務(wù)處理等多種領(lǐng)域,能運(yùn)行在多種硬件平臺(tái)上,如UNIX系統(tǒng)、WindowsNT等。--通用化、小型化實(shí)時(shí)系統(tǒng)與分時(shí)系統(tǒng)特征的比較:多路性獨(dú)立性及時(shí)性交互性可靠性1.2.7多處理操作系統(tǒng)

(Multi-processorOperatingSystem)多處理機(jī)系統(tǒng)的特點(diǎn)增加系統(tǒng)的吞吐量:N個(gè)處理器加速比達(dá)不到N倍(額外的調(diào)度開銷,算法的并行化)提高系統(tǒng)可靠性:故障時(shí)系統(tǒng)降級(jí)運(yùn)行多處理操作系統(tǒng)的出現(xiàn)是為了提高計(jì)算機(jī)系統(tǒng)性能和可靠性。提高性能有兩條途徑:提高各個(gè)組成部分的速度、增大處理的并行程度。1975年前后,出現(xiàn)多處理機(jī)系統(tǒng)(multi-processor)。1.2.8網(wǎng)絡(luò)操作系統(tǒng)

(NOS,NetworkOperatingSystem)網(wǎng)絡(luò)操作系統(tǒng)是在通常操作系統(tǒng)功能的基礎(chǔ)上提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)服務(wù)功能的操作系統(tǒng)。網(wǎng)絡(luò)操作系統(tǒng)為網(wǎng)上計(jì)算機(jī)進(jìn)行方便而有效的網(wǎng)絡(luò)資源共享,提供網(wǎng)絡(luò)用戶所需各種服務(wù)的軟件和相關(guān)規(guī)程的集合。網(wǎng)絡(luò)功能與操作系統(tǒng)的結(jié)合程度是網(wǎng)絡(luò)操作系統(tǒng)的重要性能指標(biāo)。早期的作法是通常操作系統(tǒng)附加網(wǎng)絡(luò)軟件,過渡到網(wǎng)絡(luò)功能成為操作系統(tǒng)的有機(jī)組成部分。它們的區(qū)別在于:網(wǎng)絡(luò)功能的強(qiáng)弱、使用是否方便等。計(jì)算機(jī)網(wǎng)絡(luò)一些自主的計(jì)算機(jī)系統(tǒng),通過通信設(shè)施相互連接,完成信息交換、資源共享、互操作和協(xié)同工作等功能。引入計(jì)算機(jī)網(wǎng)絡(luò)的目的:完成新的應(yīng)用(進(jìn)行自動(dòng)的信息交換),提高性能-價(jià)格比(共享昂貴資源)計(jì)算機(jī)網(wǎng)絡(luò)的分類按網(wǎng)絡(luò)拓?fù)洌▊鬏斆襟w和網(wǎng)絡(luò)設(shè)備所連接的幾何形狀):星形、環(huán)形、總線形、不規(guī)則形等;按地理范圍:局域網(wǎng)(LAN,LocalAreaNetwork)、城域網(wǎng)(MAN,MetropolitanAreaNetwork)、廣域網(wǎng)(WAN,WideAreaNetwork);按網(wǎng)絡(luò)標(biāo)準(zhǔn)--內(nèi)在特性,決定其性能(如效率隨負(fù)載的變化、實(shí)時(shí)性、優(yōu)先級(jí))Ethernet,TokenRing,FDDI,X.25,ATM網(wǎng)絡(luò)操作系統(tǒng)的功能通常操作系統(tǒng)的功能:處理機(jī)管理、存儲(chǔ)器管理、設(shè)備管理、文件管理等;網(wǎng)絡(luò)通信功能:通過網(wǎng)絡(luò)協(xié)議進(jìn)行高效、可靠的數(shù)據(jù)傳輸;網(wǎng)絡(luò)資源管理:協(xié)調(diào)各用戶使用;網(wǎng)絡(luò)服務(wù):文件和設(shè)備共享,信息發(fā)布;網(wǎng)絡(luò)管理:安全管理、故障管理、性能管理等;互操作:直接控制對(duì)方比交換數(shù)據(jù)更為困難;1.2.9分布式操作系統(tǒng)(DistributedOperatingSystem)分布式系統(tǒng):處理和控制的分散(相對(duì)于集中式系統(tǒng))分布式系統(tǒng)是以計(jì)算機(jī)網(wǎng)絡(luò)為基礎(chǔ)的,它的基本特征是處理上的分布,即功能和任務(wù)的分布。分布式操作系統(tǒng)的所有系統(tǒng)任務(wù)可在系統(tǒng)中任何處理機(jī)上運(yùn)行,自動(dòng)實(shí)現(xiàn)全系統(tǒng)范圍內(nèi)的任務(wù)分配并自動(dòng)調(diào)度各處理機(jī)的工作負(fù)載。1.2.10嵌入式操作系統(tǒng)什么是嵌入式系統(tǒng)?在各種設(shè)備、裝置或系統(tǒng)中,完成特定功能的軟硬件系統(tǒng)它們是一個(gè)大設(shè)備、裝置或系統(tǒng)中的一部分,這個(gè)大設(shè)備、裝置或系統(tǒng)可以不是“計(jì)算機(jī)”由于它們被嵌入在各種設(shè)備、裝置或系統(tǒng)中,因此稱為嵌入式系統(tǒng)嵌入式操作系統(tǒng),是運(yùn)行在嵌入式智能芯片環(huán)境中,對(duì)整個(gè)智能芯片以及它所操作、控制的各種部件裝置等等資源進(jìn)行統(tǒng)一協(xié)調(diào)、調(diào)度、指揮和控制的系統(tǒng)軟件.在嵌入式系統(tǒng)中的OS,稱為嵌入式操作系統(tǒng)1.3操作系統(tǒng)的特征1.3.1操作系統(tǒng)的特征1.3.2操作系統(tǒng)的服務(wù)返回1.3.1操作系統(tǒng)的特征并發(fā)(concurrency)共享(sharing)虛擬(virtual)異步性(asynchronism)并發(fā)(concurrency)在多道程序處理時(shí),宏觀上并發(fā),微觀上交替執(zhí)行(在單處理器情況下)。程序的靜態(tài)實(shí)體是可執(zhí)行文件,而動(dòng)態(tài)實(shí)體是進(jìn)程(或稱作任務(wù)),并發(fā)指的是進(jìn)程。并行性(parallel)是指兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生。并發(fā)性(concurrence)是指兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生。操作系統(tǒng)是一個(gè)并發(fā)系統(tǒng),各進(jìn)程間的并發(fā),系統(tǒng)與應(yīng)用間的并發(fā)。操作系統(tǒng)要完成這些并發(fā)過程的管理。共享(sharing)互斥共享(如音頻設(shè)備):資源分配后到釋放前,不能被其他進(jìn)程所用。同時(shí)訪問(如可重入代碼,磁盤文件)多個(gè)進(jìn)程共享有限的計(jì)算機(jī)系統(tǒng)資源。操作系統(tǒng)要對(duì)系統(tǒng)資源進(jìn)行合理分配和使用。資源在一個(gè)時(shí)間段內(nèi)交替被多個(gè)進(jìn)程所用。虛擬(virtual)CPU--每個(gè)用戶(進(jìn)程)的"虛處理機(jī)"虛擬存儲(chǔ)器--每個(gè)進(jìn)程都占有的地址空間(指令+數(shù)據(jù)+堆棧)虛擬設(shè)備技術(shù)--多窗口或虛擬終端(virtualterminal),SPOOLINg技術(shù),虛擬信道虛擬是指通過某種技術(shù)(分時(shí)或分空間)把一個(gè)物理實(shí)體映射為若干個(gè)對(duì)應(yīng)的邏輯實(shí)體。虛擬是操作系統(tǒng)管理系統(tǒng)資源的重要手段,可提高資源利用率。兩種方式實(shí)現(xiàn)虛擬技術(shù):時(shí)分復(fù)用和空分復(fù)用異步性(asynchronism)進(jìn)程的運(yùn)行速度不可預(yù)知:分時(shí)系統(tǒng)中,多個(gè)進(jìn)程并發(fā)執(zhí)行,"時(shí)走時(shí)停",不可預(yù)知每個(gè)進(jìn)程的運(yùn)行推進(jìn)快慢判據(jù):無論快慢,應(yīng)該結(jié)果相同--通過進(jìn)程互斥和同步手段來保證難以重現(xiàn)系統(tǒng)在某個(gè)時(shí)刻的狀態(tài)(包括重現(xiàn)運(yùn)行中的錯(cuò)誤)也稱不確定性,指進(jìn)程的執(zhí)行順序和執(zhí)行時(shí)間的不確定性;操作系統(tǒng)的各特征之間的關(guān)系并發(fā)和共享是操作系統(tǒng)最基本的特征。為了提高計(jì)算機(jī)資源的利用率,OS必然要采用多道程序設(shè)計(jì)技術(shù),使多個(gè)程序共享系統(tǒng)的資源,并發(fā)地執(zhí)行。并發(fā)和共享互為存在的條件。一方面,資源的共享以程序(進(jìn)程)的并發(fā)執(zhí)行為條件,如系統(tǒng)不允許程序并發(fā)執(zhí)行,自然不存在資源共享問題;另一方面,若系統(tǒng)不能對(duì)資源共享實(shí)施有效的管理,協(xié)調(diào)好諸進(jìn)程對(duì)共享資源的訪問,也將影響到程序的并發(fā)執(zhí)行,甚至根本無法并發(fā)執(zhí)行。操作系統(tǒng)的各特征之間的關(guān)系虛擬以并發(fā)和資源共享為前提。為了使并發(fā)進(jìn)程能更方便、更有效地共享資源,操作系統(tǒng)常采用多種虛擬技術(shù)來在邏輯上增加CPU和設(shè)備的數(shù)量以及存儲(chǔ)器的容量,從而解決眾多并發(fā)進(jìn)程對(duì)有限的系統(tǒng)資源的爭(zhēng)用問題。異步性是并發(fā)和共享的必然結(jié)果。操作系統(tǒng)允許進(jìn)程共享資源、相互合作,使得每個(gè)進(jìn)程的運(yùn)行過程受到其他進(jìn)程的制約,不再“一氣呵成”,這必然導(dǎo)致異步性特征的產(chǎn)生。1.4操作系統(tǒng)的主要功能1.4.1處理機(jī)管理1.4.2存儲(chǔ)管理1.4.3設(shè)備管理1.4.4文件管理1.4.5用戶接口1.4.1處理機(jī)管理進(jìn)程控制:創(chuàng)建、撤銷、掛起、改變運(yùn)行優(yōu)先級(jí)等--主動(dòng)改變進(jìn)程的狀態(tài)進(jìn)程同步:協(xié)調(diào)并發(fā)進(jìn)程之間的推進(jìn)步驟,以協(xié)調(diào)資源共享;--交換信息能力弱管理目標(biāo):完成處理機(jī)資源的分配調(diào)度等功能。處理機(jī)調(diào)度的單位可為進(jìn)程或線程。1.4.1處理機(jī)管理進(jìn)程通信:進(jìn)程之間傳送數(shù)據(jù),以協(xié)調(diào)進(jìn)程間的協(xié)作;--交換信息能力強(qiáng),也可以用來協(xié)調(diào)進(jìn)程之間的推進(jìn)調(diào)度:作業(yè)和進(jìn)程的運(yùn)行切換,以充分利用處理機(jī)資源和提高系統(tǒng)性能;--未必是進(jìn)程控制操作所引起(可能是時(shí)間片輪轉(zhuǎn)、I/O操作)同一類型內(nèi)的公平性、高效率(吞吐量大)、作業(yè)周轉(zhuǎn)時(shí)間等1.4.2存儲(chǔ)管理內(nèi)存分配與回收:內(nèi)存保護(hù):保證進(jìn)程間互不干擾、相互保密;如:訪問合法性檢查、甚至要防止從"垃圾"中竊取其他進(jìn)程的信息;地址映射(變換):進(jìn)程邏輯地址到內(nèi)存物理地址的映射;內(nèi)存擴(kuò)充(覆蓋、交換和虛擬存儲(chǔ)):提高內(nèi)存利用率、擴(kuò)大進(jìn)程的內(nèi)存空間;管理目標(biāo):提高利用率、方便用戶使用、提供足夠的存儲(chǔ)空間、方便進(jìn)程并發(fā)運(yùn)行。1.4.3設(shè)備管理設(shè)備處理:利用設(shè)備驅(qū)動(dòng)程序(通常在內(nèi)核中)完成對(duì)設(shè)備的操作。還需處理外設(shè)的IRQ。設(shè)備獨(dú)立性(deviceindependence):提供統(tǒng)一的I/O設(shè)備接口,使應(yīng)用程序獨(dú)立于物理設(shè)備,提高可適應(yīng)性;在同樣的接口和操作下完成不同的內(nèi)容(如FAXModem作為Windows上的打印機(jī)設(shè)備)。管理目標(biāo):方便的設(shè)備使用、提高CPU與I/O設(shè)備利用率;提高I/O速度;1.4.3設(shè)備管理設(shè)備分配與回收:在多用戶間共享I/O設(shè)備資源。虛擬設(shè)備(virtualdevice):設(shè)備由多個(gè)進(jìn)程共享,每個(gè)進(jìn)程如同獨(dú)占。緩沖區(qū)管理:匹配CPU和外設(shè)的速度,提高兩者的利用率(單緩沖區(qū)、雙緩沖區(qū)和公用緩沖區(qū))1.4.4文件管理文件存儲(chǔ)空間管理:解決如何存放信息,以提高空間利用率和讀寫性能。目錄管理:解決信息檢索問題。文件的屬性(如文件名)、單一副本賦予多文件名文件的讀寫管理和存取控制:解決信息安全問題。系統(tǒng)設(shè)口令"哪個(gè)用戶"、用戶分類"哪個(gè)用戶組"、文件權(quán)限"針對(duì)用戶或用戶組的讀寫權(quán)“軟件管理:軟件的版本、相互依賴關(guān)系、安裝和拆除等管理目標(biāo):解決軟件資源的存儲(chǔ)、共享、保密和保護(hù)。1.4.5用戶接口命令接口:供用戶用于組織和控制自己的作業(yè)運(yùn)行。命令行"聯(lián)機(jī)";命令腳本"脫機(jī)"編程接口:供用戶程序和系統(tǒng)程序調(diào)用操作系統(tǒng)功能。系統(tǒng)調(diào)用和高級(jí)語言庫函數(shù);圖形接口:采用了圖形化的操作界面,用非常容易識(shí)別的各種圖標(biāo)(icon)來將系統(tǒng)的各項(xiàng)功能、各種應(yīng)用程序和文件,直觀、逼真地表示出來。用戶可用鼠標(biāo)或通過菜單和對(duì)話框,來完成對(duì)應(yīng)用程序和文件的操作。管理目標(biāo):提供一個(gè)友好的用戶訪問操作系統(tǒng)的接口。操作系統(tǒng)向上提供兩種接口;1.5操作系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)1.5.1整體或模塊結(jié)構(gòu)1.5.2分層結(jié)構(gòu)或虛擬機(jī)1.5.3客戶/服務(wù)器模型或微內(nèi)核結(jié)構(gòu)隨著操作系統(tǒng)的發(fā)展,功能越強(qiáng),OS自身代碼量越大--采用良好的結(jié)構(gòu):有利于保證正確性以及自身修改和擴(kuò)充。返回操作系統(tǒng)的設(shè)計(jì)原則可維護(hù)性:容易修改與否稱為可維護(hù)性;有三種可能的維護(hù):改錯(cuò)性維護(hù):改正已發(fā)現(xiàn)的錯(cuò)誤;適應(yīng)性維護(hù):修改軟件,使之適應(yīng)新的運(yùn)行環(huán)境(硬件環(huán)境和軟件環(huán)境);如:操作系統(tǒng)的移植。完善性維護(hù):增加新功能;可靠性:可靠性包括兩方面:正確性:正確實(shí)現(xiàn)所要求的功能和性能;穩(wěn)健性:對(duì)意外(故障和誤操作)作出適當(dāng)?shù)奶幚?;操作系統(tǒng)的設(shè)計(jì)原則可理解性:易于理解,以方便測(cè)試、維護(hù)和交流;性能:有效地使用系統(tǒng)資源;盡可能快地響應(yīng)用戶請(qǐng)求;1.5.1整體或模塊結(jié)構(gòu)

monolithicsystemormodularsystem模塊結(jié)構(gòu)的特點(diǎn):模塊由眾多服務(wù)過程(模塊接口)組成,可以隨意調(diào)用其他模塊中的服務(wù)過程.優(yōu)點(diǎn):具有一定靈活性,運(yùn)行效率高缺點(diǎn):功能劃分和模塊接口難保正確和合理;模塊之間的依賴關(guān)系(功能調(diào)用關(guān)系)復(fù)雜(調(diào)用深度和方向),降低了模塊之間的相對(duì)獨(dú)立性,不利于修改整個(gè)系統(tǒng)按功能進(jìn)行設(shè)計(jì)和模塊劃分。系統(tǒng)是一個(gè)單一的、龐大的的軟件系統(tǒng)。這種結(jié)構(gòu)思想來源于服務(wù)功能觀點(diǎn),而不是資源管理的觀點(diǎn)。1.5.2分層結(jié)構(gòu)或虛擬機(jī)

layeredsystemorvirtualmachine從資源管理觀點(diǎn)出發(fā),劃分層次。在某一層次上代碼只能調(diào)用低層次上的代碼,使模塊間的調(diào)用變?yōu)橛行蛐浴O到y(tǒng)每加一層,就構(gòu)成一個(gè)比原來功能更強(qiáng)的虛擬機(jī)。有利于系統(tǒng)的維護(hù)性和可靠性。分層結(jié)構(gòu)的特點(diǎn)優(yōu)點(diǎn):功能明確,調(diào)用關(guān)系清晰(高層對(duì)低層單向依賴),有利于保證設(shè)計(jì)和實(shí)現(xiàn)的正確性低層和高層可分別實(shí)現(xiàn)(便于擴(kuò)充);高層錯(cuò)誤不會(huì)影響到低層;避免遞歸調(diào)用缺點(diǎn):降低了運(yùn)行效率(為什么?)各系統(tǒng)對(duì)具體劃分多少層次有不同的看法。分層原則被調(diào)用功能在低層:如文件系統(tǒng)管理--設(shè)備管理--設(shè)備驅(qū)動(dòng)程序活躍功能在低層:提高運(yùn)行效率資源管理的公用模塊放在最低層:如緩沖區(qū)隊(duì)列、堆棧操作分層原則存儲(chǔ)器管理放在次低層:便于利用虛擬存儲(chǔ)功能最低層的硬件抽象層:與機(jī)器特點(diǎn)緊密相關(guān)的軟件放在最低層。如WindowsNT中的HAL(HardwareabstractLayer)--單處理、多處理資源分配策略放在最外層,便于修改或適應(yīng)不同環(huán)境分層式結(jié)構(gòu)與模塊式結(jié)構(gòu)的異同分層式結(jié)構(gòu)與模塊式結(jié)構(gòu)一樣具有模塊化的特征。分層式結(jié)構(gòu)也要將復(fù)雜的操作系統(tǒng)按其功能分成若干個(gè)比較簡(jiǎn)單、相對(duì)獨(dú)立的模塊。為了使模塊之間能夠交互,它也必須規(guī)定模塊之間的接口。因此,分層式結(jié)構(gòu)具有模塊式結(jié)構(gòu)的優(yōu)點(diǎn)1.5.3客戶/服務(wù)器模型或微內(nèi)核結(jié)構(gòu)

client-servermodelormicro

kernel微內(nèi)核(micro-kernel):將更多操作系統(tǒng)功能放在核心之外,作為獨(dú)立的服務(wù)進(jìn)程運(yùn)行;服務(wù)進(jìn)程(或稱作“保護(hù)子系統(tǒng)”)客戶進(jìn)程(系統(tǒng)客戶和應(yīng)用客戶)-需支持多進(jìn)程把操作系統(tǒng)分成若干分別完成一組特定功能的服務(wù)進(jìn)程,等待客戶提出請(qǐng)求;而系統(tǒng)內(nèi)核只實(shí)現(xiàn)操作系統(tǒng)的基本功能(如:虛擬存儲(chǔ)、消息傳遞)。本地過程調(diào)用(LPC,LocalProcedureCall):一種進(jìn)程之間請(qǐng)求-應(yīng)答式的消息(Message)傳遞機(jī)制。消息:是一定格式的數(shù)據(jù)結(jié)構(gòu)。①發(fā)起調(diào)用,送出請(qǐng)求消息②請(qǐng)求消息到達(dá)并進(jìn)行處理③送出回答消息④整理回答消息,返回結(jié)果;如:對(duì)文件create,read,write1.5.3客戶/服務(wù)器模型或微內(nèi)核結(jié)構(gòu)

client-servermodelormicrokernel微內(nèi)核模式的特點(diǎn)

優(yōu)點(diǎn):良好的擴(kuò)充性:只需添加支持新功能的服務(wù)進(jìn)程即可可靠性好:調(diào)用關(guān)系明確,執(zhí)行轉(zhuǎn)移不易混亂便于網(wǎng)絡(luò)服務(wù),實(shí)現(xiàn)分布式處理:以同樣的調(diào)用形式,在下層可通過核心中的網(wǎng)絡(luò)傳送到遠(yuǎn)方服務(wù)器上(遠(yuǎn)地過程調(diào)用RPC,RemoteProcedureCall)缺點(diǎn):消息傳遞比直接調(diào)用效率要低一些(但可以通過提高硬件性能來補(bǔ)償)RPC的過程:RPC應(yīng)用程序--RPCStub(client)--Network--RPCServer--進(jìn)行本地調(diào)用微內(nèi)核所提供的功能,通常都是一些最基本的功能如進(jìn)程管理、存儲(chǔ)器管理、進(jìn)程間通信、低級(jí)I/O功能。

(1)進(jìn)程管理。

(2)存儲(chǔ)器管理。

(3)進(jìn)程通信管理。

(4)I/O設(shè)備管理。微內(nèi)核的基本功能1.6常用的操作系統(tǒng)1.6.1MSDOS1.6.2MSWindows3.x,Windows95,WindowsNT,Windows2000,20031.6.3UNIX/Liunx返回1.6.1MSDOS1981年:PC-DOS1.1:IBMPC,只支持軟盤的個(gè)人操作系統(tǒng);1983年:DOS2.0:PCXT,支持硬盤和目錄的層次結(jié)構(gòu),并提供豐富的系統(tǒng)命令;1984年:DOS3.0:PCAT(Intel80286CPU),它把286作為一個(gè)快速的8086使用;1987年:DOS3.3:提供對(duì)IBMPS/2的支持(如3.5"軟驅(qū)),提供了更多的應(yīng)用;1988年:DOS4.0:支持大于32M的硬盤;1991年:DOS5.0:改進(jìn)對(duì)擴(kuò)展內(nèi)存的支持;IBMPC,CPU8088/8086,BIOS單用戶單任務(wù),簡(jiǎn)單分層結(jié)構(gòu),16位MSDOS的歷史MSDOS的結(jié)構(gòu)DOSBIOS(BasicInput/OutputSystem):由一組與硬件相關(guān)的設(shè)備驅(qū)動(dòng)程序組成,實(shí)現(xiàn)基本的輸入/輸出功能;DOS核心:提供一套獨(dú)立于硬件的系統(tǒng)功能:內(nèi)存管理、文件管理、字符設(shè)備和輸入/輸出、實(shí)時(shí)時(shí)鐘等;命令處理程序:對(duì)用戶命令進(jìn)行分析和執(zhí)行;MSDOS的特點(diǎn)字符用戶界面。"準(zhǔn)多任務(wù)":通過內(nèi)存駐留程序TSR(TerminatedandStayResident)來實(shí)現(xiàn),通過時(shí)鐘中斷或鍵盤中斷"熱鍵hotkey"來激活其他任務(wù)。不支持虛擬存儲(chǔ),沒有存儲(chǔ)保護(hù)。XMS是段式分配,通過內(nèi)存數(shù)據(jù)搬移來使用XMS區(qū)域EMS是頁式分配,通過頁面的映射來使用EMS區(qū)域或者用支持保護(hù)方式的編程工具文件系統(tǒng)為FAT(FileAllocationTable)格式(磁盤卷,多級(jí)目錄,文件名8+3個(gè)字符;設(shè)備驅(qū)動(dòng)程序在系統(tǒng)起動(dòng)時(shí)加載。分為字符設(shè)備和塊設(shè)備。1.6.2MSWindows3.x,Windows95,WindowsNT,Windows20001990年:Windows3.0(成功版本),16位OS,借見AppleMacintosh給出友好的用戶界面;1993年:WindowsNT3.1,32位OS,支持DOS和Windows應(yīng)用程序;1999

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論