計(jì)算機(jī)等級考試四級教程---操作系統(tǒng)原理_第1頁
計(jì)算機(jī)等級考試四級教程---操作系統(tǒng)原理_第2頁
計(jì)算機(jī)等級考試四級教程---操作系統(tǒng)原理_第3頁
計(jì)算機(jī)等級考試四級教程---操作系統(tǒng)原理_第4頁
計(jì)算機(jī)等級考試四級教程---操作系統(tǒng)原理_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基本要求1 .掌握操作系統(tǒng)的基本概念、基本結(jié)構(gòu)和運(yùn)行機(jī)制。2 .深入理解進(jìn)程線程模型,深入理解進(jìn)程同步機(jī)制,深入理解死鎖概念及解決方案。3 .掌握存儲管理基本概念,掌握分區(qū)存儲管理方案,深入理解虛擬頁式存儲管理方案。4 .深入理解文件系統(tǒng)的設(shè)計(jì)、實(shí)現(xiàn),以及提高文件系統(tǒng)性能的各種方法。5 .了解I/O設(shè)備管理的基本概念、I/O軟件的組成,掌握典型的I/O設(shè)備管理技術(shù)。6 .了解操作系統(tǒng)的演化過程、新的設(shè)計(jì)思想和實(shí)現(xiàn)技術(shù)。考試內(nèi)容一、操作系統(tǒng)概述1、操作系統(tǒng)基本概念、特征、分類。基本概念:是計(jì)算機(jī)系統(tǒng)中的一個系統(tǒng)軟件,它是這樣一些程序模塊的集合一一它們能有效地組織和管理計(jì)算機(jī)系統(tǒng)中的硬件及軟件資源

2、,合理地組織計(jì)算機(jī)的工作流程,控制程序的執(zhí)行,并向用戶提供各種服務(wù)功能,使用戶能夠靈活的、方便、有效地使用計(jì)算機(jī),并使整個計(jì)算機(jī)系統(tǒng)能夠高效地運(yùn)行(是具有各種功能的、大量程序模塊的集合)。任務(wù):1.組織和管理計(jì)算機(jī)系統(tǒng)中的硬件及軟件資源2.向用戶提供各種服務(wù)功能特征:并發(fā)性(用戶程序與用戶程序之間并發(fā)執(zhí)行;用戶程序與操作系統(tǒng)程序之間并發(fā)執(zhí)行)、共享性(互斥共享和同時(shí)共享)、隨機(jī)性(要充分考慮各種各樣的可能性)。分類:1.批處理操作系統(tǒng)(成批處理、SPOOLingM術(shù))簡單/多道批處理系統(tǒng)2 .分時(shí)系統(tǒng)(多路性、交互性、獨(dú)占性、及時(shí)性)3 .實(shí)時(shí)操作系統(tǒng)硬實(shí)時(shí)/軟實(shí)時(shí)系統(tǒng)(實(shí)時(shí)時(shí)鐘管理、過載保護(hù)

3、、高可靠性)4 .嵌入式操作系統(tǒng)可針對需求進(jìn)行裁剪、調(diào)整和生成(高可靠性、實(shí)時(shí)性、占有資源少、智能化能源管理、易于連接、低成本等)5 .個人計(jì)算機(jī)操作系統(tǒng)(某一時(shí)間為單用戶服務(wù)、圖形界面、使用方便)6 .網(wǎng)絡(luò)操作系統(tǒng)集中式/分布式模式(共享數(shù)據(jù)、資源及服務(wù)同運(yùn)算處理能力)7 .分布式操作系統(tǒng)(統(tǒng)一/同一操作系統(tǒng)、資源的深度共享、透明性、自治性)集群8 .智能卡操作系統(tǒng)資源管理、通信管理、安全管理、應(yīng)用管理2、操作系統(tǒng)主要功能。功能:1.進(jìn)程管理(處理器管理)進(jìn)程控制、進(jìn)程同步/互斥、進(jìn)程間通信、調(diào)度9 .存儲管理內(nèi)存的分配與回收、存儲保護(hù)、內(nèi)存擴(kuò)充10 文件管理文件存儲空間的管理、目錄管理、文

4、件系統(tǒng)的安全性11 設(shè)備管理需具備中斷處理、錯誤處理等功能12 用戶接口3、操作系統(tǒng)發(fā)展演化過程,典型操作系統(tǒng)。發(fā)展:1.手工操作2.監(jiān)控程序(早期批處理)3.多道批處理4.分時(shí)系統(tǒng)5. UNIX通用操作系統(tǒng)6.個人計(jì)算機(jī)操作系統(tǒng)(Win)7.Android操作系統(tǒng)4、操作系統(tǒng)結(jié)構(gòu)設(shè)計(jì),典型的操作系統(tǒng)結(jié)構(gòu)。體系結(jié)構(gòu):1.整體式結(jié)構(gòu)(結(jié)構(gòu)緊密、接口簡單直接、系統(tǒng)效率較高)2 .層次式結(jié)構(gòu)分層原則(同整體式、模塊間結(jié)構(gòu)關(guān)系清晰、增加/替換不影響其他層次)3 .微內(nèi)核(客戶機(jī)/服務(wù)器)結(jié)構(gòu)運(yùn)行在核心態(tài)的內(nèi)核、運(yùn)行在用戶態(tài)的并以客戶機(jī)/服務(wù)器方式進(jìn)行的進(jìn)程層(可靠、靈活、適宜于分布式處理的計(jì)算環(huán)境)二

5、、操作系統(tǒng)運(yùn)行機(jī)制操作系統(tǒng)的運(yùn)行環(huán)境主要包括計(jì)算機(jī)系統(tǒng)的硬件環(huán)境和由其他的系統(tǒng)軟件組成的軟件環(huán)境。寄存器:1.用戶可見寄存器數(shù)據(jù)寄存器、地址寄存器、條件碼寄存器2.控制和狀態(tài)寄存器程序計(jì)數(shù)器(PC)、程序狀態(tài)字(PSWJ)指令類型:訪問存儲器指令、I/O指令、算數(shù)邏輯指令、控制轉(zhuǎn)移指令、處理器控制指令1、內(nèi)核態(tài)和用戶態(tài)。內(nèi)核態(tài)(管態(tài)):操作系統(tǒng)管理程序運(yùn)行的狀態(tài),具有較高的特權(quán)級別。可執(zhí)行全部指令(包括特權(quán)指令),使用所有資源,并具有改變處理器狀態(tài)的能力。用戶態(tài)(目態(tài)):用戶程序運(yùn)行時(shí)的狀態(tài),具有較低的特權(quán)級別。只可執(zhí)行非特權(quán)指令。CPU狀態(tài)的轉(zhuǎn)換:1.目態(tài)一管態(tài)的轉(zhuǎn)換通過中斷或異常2.管態(tài)一

6、目態(tài)的轉(zhuǎn)換通過設(shè)置PSW指令(修改程序狀態(tài)字)2、中斷與異常。中斷:指CPU對系統(tǒng)中或系統(tǒng)外發(fā)生的異步事件的響應(yīng)。(中斷源/中斷請求/中斷處理程序/中斷斷點(diǎn)/中斷響應(yīng)/中斷返回/中斷字/中斷向量表)特征:能充分發(fā)揮處理器的使用效率、提高系統(tǒng)的實(shí)時(shí)能力系統(tǒng):硬件中斷裝置和軟件中斷處理程序(中斷請求的接收、中斷響應(yīng)、中斷處理)典型:1.I/O中斷I/O操作正常結(jié)束、I/O異常2 .時(shí)鐘中斷維護(hù)軟件時(shí)鐘、處理器調(diào)度、控制系統(tǒng)定時(shí)任務(wù)、實(shí)時(shí)處理3 .硬件故障中斷4 .程序性中斷(由操作系統(tǒng)完成/程序自己完成)5 .系統(tǒng)服務(wù)請求(訪問中斷)由處理器提供的專用指令(訪管指令)來激發(fā)異常:指CPU對系統(tǒng)內(nèi)正

7、在執(zhí)行的指令的響應(yīng)。分類:1.中斷2.異常多級中斷作用:時(shí)鐘中斷/輸入輸出(I/O)中斷/控制臺中斷/硬件故障中斷程序性中斷/訪管指令異常1 .對各類中斷信號依據(jù)其緊急程度和重要性劃分級別。2 .解決如果有重要程度相當(dāng)?shù)亩鄠€中斷信號同時(shí)到達(dá)時(shí),如何選擇首個被處理的中斷信號的問題。多級中斷方法:固定優(yōu)先數(shù)、輪轉(zhuǎn)法一類不可屏蔽的中斷信號:機(jī)器故障中斷。3、系統(tǒng)調(diào)用接口。訪管指令把用戶態(tài)切換成內(nèi)核態(tài),并啟用操作系統(tǒng)。系統(tǒng)調(diào)用:用戶在程序中調(diào)用操作系統(tǒng)所提供的一些子功能。區(qū)別(系統(tǒng)調(diào)用與一般過程調(diào)用):1 .運(yùn)行在不同的系統(tǒng)狀態(tài)2 .狀態(tài)的轉(zhuǎn)換3 .返回問題4 .嵌套調(diào)用分類:1.進(jìn)程控制類系統(tǒng)調(diào)用2

8、.文件操作類系統(tǒng)調(diào)用3.進(jìn)程通信類系統(tǒng)調(diào)用5 .設(shè)備管理類系統(tǒng)調(diào)用5.信息維護(hù)類系統(tǒng)調(diào)用廣義指令(系統(tǒng)調(diào)用命令)和機(jī)器指令的區(qū)別:機(jī)器指令是由硬件線路直接實(shí)現(xiàn)的,而“廣義指令”則是由操作系統(tǒng)所提供的一個或多個字程序模塊,即軟件實(shí)現(xiàn)的。在系統(tǒng)中為控制系統(tǒng)調(diào)用服務(wù)的機(jī)構(gòu)成為陷入(TRAP)或異常處理機(jī)構(gòu)。自動地控制成塊數(shù)據(jù)4、存儲系統(tǒng)。計(jì)算機(jī)存儲系統(tǒng)的設(shè)計(jì)主要考慮三個問題:容量、速度和成本。容量、速度和成本的匹配問題:采用層次化的存儲體系結(jié)構(gòu)存儲訪問局部性原理:提高存儲系統(tǒng)性能的關(guān)鍵存儲保護(hù):1.界地址寄存器(界限寄存器)2.存儲鍵5、I/O系統(tǒng)。I/O結(jié)構(gòu):外部設(shè)備的控制器通過I/O硬件結(jié)構(gòu)與中

9、央處理器連接。通道:獨(dú)立于中央處理器的,專門負(fù)責(zé)數(shù)據(jù)I/O傳輸工作的處理單元。特點(diǎn):實(shí)現(xiàn)中央處理器和各種外部設(shè)備并行工作。DMA技術(shù)(直接存儲器訪問):通過系統(tǒng)總線中的一個獨(dú)立控制單元,在內(nèi)存和I/O單元之間的傳送。緩沖技術(shù):用在外部設(shè)備與其他硬件部件之間的一種數(shù)據(jù)暫存技術(shù),它利用存儲器件在外部設(shè)備中設(shè)置了數(shù)據(jù)的一個存儲區(qū)域,稱為“緩存區(qū)”。用途:1.用在外部設(shè)備與外部設(shè)備之間的通信上的。2.用在外部設(shè)備和處理器之間的。根本原因:CPU處理數(shù)據(jù)速度與設(shè)備傳輸數(shù)據(jù)速度不相匹配,需要用緩沖區(qū)緩解其間的速度矛盾。6、時(shí)鐘(Clock)。分類:硬件時(shí)鐘和軟件時(shí)鐘用途:1.絕對時(shí)鐘在計(jì)算機(jī)系統(tǒng)中不受外界

10、干擾、獨(dú)立運(yùn)行的一種時(shí)鐘。2.相對時(shí)鐘(間隔時(shí)鐘)只計(jì)算從某一個時(shí)間初值開始的一段時(shí)間間隔。軟件時(shí)鐘與硬件時(shí)鐘的同步工作,由操作系統(tǒng)負(fù)責(zé)維護(hù)。三、進(jìn)程線程模型1、并發(fā)環(huán)境與多道程序設(shè)計(jì)。并發(fā)環(huán)境:采用并行操作技術(shù),并發(fā)程序在各自處理機(jī)上運(yùn)行。多道程序設(shè)計(jì):允許多個程序同時(shí)進(jìn)入內(nèi)存并執(zhí)行。(最基本、最重要的技術(shù))目的:提高整個系統(tǒng)的效率。(系統(tǒng)吞吐量)特點(diǎn):獨(dú)立性、隨機(jī)性、資源共享性程序的并發(fā)執(zhí)行:并發(fā)程序在執(zhí)行期間具有相互制約關(guān)系;程序與計(jì)算不再一一對應(yīng);并發(fā)程序執(zhí)行結(jié)果不可再現(xiàn)。實(shí)現(xiàn)多道程序設(shè)計(jì)時(shí),必須協(xié)調(diào)好資源使用者與被使用資源之間的關(guān)系。2、進(jìn)程的基本概念,進(jìn)程控制塊(PCB。進(jìn)程:對正

11、在運(yùn)行程序的一個抽象。屬性:可擁有資源的獨(dú)立單位;可以獨(dú)立調(diào)度和分派的基本單位。特性:并發(fā)性、動態(tài)性、獨(dú)立性、交往性、異步性分類:1.系統(tǒng)進(jìn)程執(zhí)行操作系統(tǒng)程序,完成操作系統(tǒng)的某些功能。2.用戶進(jìn)程運(yùn)行用戶程序,直接為用戶服務(wù)。聯(lián)系和區(qū)別(進(jìn)程與程序):1 .聯(lián)系:進(jìn)程由程序、數(shù)據(jù)和進(jìn)程控制塊(PCB組成。2 .區(qū)別:程序是靜態(tài)的,進(jìn)程是動態(tài)的。進(jìn)程具有創(chuàng)建其他進(jìn)程的功能。進(jìn)程控制塊(PCB:用來描述進(jìn)程的基本情況以及進(jìn)程的運(yùn)行變化過程。內(nèi)容:調(diào)度信息和組成信息。組織:線性方式、索引方式和鏈接方式。3、進(jìn)程狀態(tài)及狀態(tài)轉(zhuǎn)換。三態(tài)模型:運(yùn)行狀態(tài)、就緒狀態(tài)、等待狀態(tài)五態(tài)模型:運(yùn)行狀態(tài)、就緒狀態(tài)、阻塞狀

12、態(tài)、創(chuàng)建狀態(tài)、結(jié)束狀態(tài)七態(tài)模型:運(yùn)行狀態(tài)、就緒狀態(tài)、阻塞狀態(tài)、創(chuàng)建狀態(tài)、結(jié)束狀態(tài)、就緒掛起、阻塞掛起4、進(jìn)程控制:創(chuàng)建、撤銷、阻塞、喚醒、fork()的使用。進(jìn)程控制是通過原語來實(shí)現(xiàn)的。原語:由若干條指令所組成的程序,用來實(shí)現(xiàn)某個特定的操作。(不可分割、不可中斷;必須在管態(tài)下執(zhí)行,并且常駐內(nèi)存)控制:創(chuàng)建原語、撤銷原語、阻塞原語、喚醒原語。fork0:父進(jìn)程通過調(diào)用fork()函數(shù)創(chuàng)建子進(jìn)程。新創(chuàng)建的子進(jìn)程基本與父進(jìn)程相同。特點(diǎn):只被調(diào)用一次,卻會返回兩次:一次是在調(diào)用進(jìn)程(父進(jìn)程)中,一次是在新創(chuàng)建的子進(jìn)程中。5、線程基本概念,線程的實(shí)現(xiàn)機(jī)制,Pthread線程包的使用。線程:比進(jìn)程更小的能

13、獨(dú)立運(yùn)行白基本單位一一線程,CPU調(diào)度和分派的基本單位。屬性:?每個線程有一個唯一的標(biāo)識符和一張線程描述表,線程描述表記錄了線程執(zhí)行的寄存器和棧等現(xiàn)場狀態(tài)。?不同的線程可以執(zhí)行相同的程序,即同一個服務(wù)程序被不同用戶調(diào)用時(shí)操作系統(tǒng)為它們創(chuàng)建不同的線程。?同一進(jìn)程中的各個線程共享該進(jìn)程的內(nèi)存地址空間。?線程是處理器的獨(dú)立調(diào)度單位,多個線程是可以并發(fā)執(zhí)行的。?一個線程被創(chuàng)建后便開始了它的生命周期,直至終止,線程在生命周期內(nèi)會經(jīng)歷等待、就緒和運(yùn)行等各種狀態(tài)變化。特點(diǎn):?創(chuàng)建一個新線程花費(fèi)時(shí)間少(結(jié)果亦如此)。創(chuàng)建線程不需另行分配資源,因而創(chuàng)建線程的速度比創(chuàng)建進(jìn)程的速度快,且系統(tǒng)的開銷也少。?兩個線程的

14、切換花費(fèi)時(shí)間少。?由于同一個進(jìn)程內(nèi)的進(jìn)程共享內(nèi)存和文件,線程之間相互通信無須調(diào)用內(nèi)核,故不需要額外的通信機(jī)制,使通信更簡便,信息傳送速度也快。?線程能獨(dú)立執(zhí)行,能充分利用和發(fā)揮處理器與外圍設(shè)備并行工作能力。比較:調(diào)度:線程作為調(diào)度和分派的基本單位;進(jìn)程作為資源擁有的基本單位。并發(fā)性:進(jìn)程之間可以并發(fā)執(zhí)行,一個進(jìn)程中的多個線程之間也可以并發(fā)執(zhí)行。擁有資源:進(jìn)程擁有自己的資源;線程無資源,但可以訪問其隸屬進(jìn)程的資源。系統(tǒng)開銷:進(jìn)程切換的開銷也遠(yuǎn)大于線程切換的開銷。實(shí)現(xiàn)機(jī)制:1.用戶級線程可以在不支持線程的操作系統(tǒng)上實(shí)現(xiàn);允許每個進(jìn)程有自己定制的調(diào)度算法。2 .內(nèi)核級線程線程的調(diào)用都以系統(tǒng)調(diào)用的形式

15、實(shí)現(xiàn)。3 .混合實(shí)現(xiàn)方式使用內(nèi)核級線程,然后將用戶級線程與某些或者全部內(nèi)核線程多路復(fù)用起來。比較:1.線程的調(diào)度與切換速度2 .系統(tǒng)調(diào)用3 .線程執(zhí)行時(shí)間Pthread線程包:基于該標(biāo)準(zhǔn)實(shí)現(xiàn)的線程包(都含有一個標(biāo)識符、一組寄存器和一組存儲在結(jié)構(gòu)中的屬性)。6、進(jìn)程的同步與互斥:信號量及PV操作,管程。在邏輯上具有某種聯(lián)系的進(jìn)程稱為相關(guān)進(jìn)程;在邏輯上沒有任何聯(lián)系的進(jìn)程稱為無關(guān)進(jìn)程。進(jìn)程同步是指多個進(jìn)程中發(fā)生的事件存在某種時(shí)序關(guān)系,必須協(xié)同動作,相互配合,以共同完成一個任務(wù)。進(jìn)程的互斥是指由于共享資源所要求的排他性,進(jìn)程間要相互競爭,以使用這些互斥資源?;コ饨鉀Q做法:1.由競爭各方平等協(xié)商2.引入

16、進(jìn)程管理者,由管理者來協(xié)調(diào)競爭各方對互斥資源的使用。臨界資源:指計(jì)算機(jī)系統(tǒng)中的需要互斥使用的硬件或軟件資源,如外設(shè)、共享代碼段、共享數(shù)據(jù)結(jié)構(gòu)等。資源共享的程度:互斥、死鎖和饑餓進(jìn)程間的相互制約關(guān)系相互感知的程度交互關(guān)系一個進(jìn)程對其他進(jìn)程的影響潛在的控制問題相互不感知(完全不了解其他進(jìn)程的存在)競爭一個進(jìn)程的操作對其他進(jìn)程的結(jié)果無影響互斥、死鎖、饑餓間接感知(雙方都與第三方交互,如共享資源)通過共享進(jìn)行協(xié)作一個進(jìn)程的結(jié)果依賴于從其他進(jìn)程獲得的信息互斥、死鎖、饑餓直接感知(雙方直接交互,如通信)通過通信進(jìn)行協(xié)作一個進(jìn)程的結(jié)果依賴于從其他進(jìn)程獲得的信息死鎖、饑餓同步機(jī)制準(zhǔn)則:1.空閑則入2.忙則等待

17、3.有限等待4.讓權(quán)等待如果已有進(jìn)程在臨界區(qū),則在進(jìn)入?yún)^(qū)通過3.雙標(biāo)志、后檢查算法4.先修改、后互斥的軟件方法:在進(jìn)入?yún)^(qū)檢查和設(shè)置一些標(biāo)志,循環(huán)檢查進(jìn)行等待;在退出區(qū)修改標(biāo)志。算法:1.單標(biāo)志算法2.雙標(biāo)志、先檢查算法檢查、后修改者等待算法互斥的硬件方法:用一條指令完成讀和寫兩個操作,因而保證讀操作與寫操作不被打斷方法:1.TS(Test-and-Se。指令2.Swap指令(或Exchange指令)信號量:可用資源實(shí)體的數(shù)量。初值:非負(fù)整數(shù)值空閑資源總數(shù)負(fù)整數(shù)值當(dāng)前等待臨界區(qū)的進(jìn)程數(shù)PV操作:P原語相當(dāng)于進(jìn)入?yún)^(qū)操作;V原語相當(dāng)于退出區(qū)操作使用信號量進(jìn)行共享資源訪問控制時(shí),必須成對使用P和V原語

18、。遺漏P原語則不能保證互斥訪問,遺漏V原語則不能在使用臨界資源之后將其釋放給其他等待的進(jìn)程。P、V原語的使用不能次序錯誤、重復(fù)或遺漏。管程:由過程、變量及數(shù)據(jù)結(jié)構(gòu)等構(gòu)成的集合,它們組成一個特殊的模塊或軟件包。組成:管程名稱,共享數(shù)據(jù)的說明,對數(shù)據(jù)進(jìn)行操作的一組過程、對共享數(shù)據(jù)賦初值的語句。特性:1.模塊化2.抽象數(shù)據(jù)類型3.信息隱蔽4.任一時(shí)刻管程中只能有一個活躍進(jìn)程7、進(jìn)程間通信。方案:共享內(nèi)存設(shè)一個公共內(nèi)存區(qū),一組進(jìn)程向該內(nèi)存中寫,另一組進(jìn)程從該內(nèi)存中讀。消息緩沖通信利用內(nèi)存中公用消息緩沖區(qū)實(shí)現(xiàn)進(jìn)程之間的信息交換。信箱通信設(shè)立通信機(jī)構(gòu)一信箱,以發(fā)送信件以及接受回答信件為進(jìn)程間通信的基本管道

19、通信連接兩個進(jìn)程之間的一個打開的共享文件,專用于進(jìn)程之間進(jìn)行數(shù)據(jù)通信8、處理機(jī)調(diào)度。分類:高級調(diào)度、中級調(diào)度、低級調(diào)度算法設(shè)計(jì)原則:1.進(jìn)程行為計(jì)算密集型、I/O密集型2 .系統(tǒng)分類批處理、交互式和實(shí)時(shí)系統(tǒng)3 .調(diào)度算法的設(shè)計(jì)目標(biāo)公平(相似的進(jìn)程應(yīng)該得到相似的服務(wù))、保持系統(tǒng)的所有部分盡可能忙碌、指標(biāo)(吞吐量、周轉(zhuǎn)時(shí)間以及CPU利用率)、均衡性算法:1.先來先服務(wù)(FCFS易于理解并且便于在程序中運(yùn)行2 .最短作業(yè)優(yōu)先(SJF所有作業(yè)同時(shí)可運(yùn)行情況下,此算法才是最優(yōu)化的。3 .最短剩余時(shí)間優(yōu)先(SRTN4 .輪轉(zhuǎn)法(RR)時(shí)間片設(shè)得太短會導(dǎo)致過多的進(jìn)程切換,降低了CPU效率;而設(shè)得太長又可能引

20、起對短的交互請求的響應(yīng)時(shí)間太長。(最佳時(shí)間片2050ms)5 .最高優(yōu)先級算法(HPF6 .多級反饋隊(duì)列算法綜合了FCFSRRHPF的一種進(jìn)程(線程)調(diào)度算法。7 .最短進(jìn)程優(yōu)先根據(jù)進(jìn)程過去的行為進(jìn)行推測,并執(zhí)行估計(jì)運(yùn)行時(shí)間最短的那一個。8 .實(shí)時(shí)系統(tǒng)中的調(diào)度算法系統(tǒng)的正確性不僅取決于計(jì)算的邏輯結(jié)果,而且還依賴于產(chǎn)生結(jié)果的時(shí)間。硬實(shí)時(shí)任務(wù)、軟實(shí)時(shí)任務(wù)周期性事件、非周期性事件計(jì)算機(jī)系統(tǒng)中使用最頻繁、算法最復(fù)雜的是進(jìn)程(線程)調(diào)度。四、存儲管理方案1、存儲管理的基本概念,存儲管理的基本任務(wù)。存儲體系:各種速度和容量的存儲硬件在操作系統(tǒng)協(xié)調(diào)之下,形成了一種存儲器層次結(jié)構(gòu)。任務(wù):1.內(nèi)存的分配和回收記

21、住每個存儲區(qū)域的狀態(tài)、實(shí)施分配、回收2 .存儲共享通過代碼共享節(jié)省內(nèi)存空間,提高內(nèi)存利用率;通過數(shù)據(jù)共享實(shí)現(xiàn)進(jìn)程通信。3 .存儲保護(hù)保護(hù)系統(tǒng)程序區(qū)不被用戶有意或無意的侵犯;不允許用戶程序讀寫不屬于自己地址空間的數(shù)據(jù)。地址越界保護(hù)、權(quán)限保護(hù)4 .“擴(kuò)充”內(nèi)存容量在硬件支持下,軟件、硬件相互協(xié)作,將內(nèi)存和外存結(jié)合起來統(tǒng)一使用。2、分區(qū)存儲管理方案。分區(qū):把內(nèi)存劃分成若干個連續(xù)區(qū)域,每個分區(qū)裝入一個運(yùn)行程序。優(yōu)缺:算法簡單,表格不多,實(shí)現(xiàn)容易,內(nèi)存開銷少;內(nèi)存使用不充分,不提供“虛存擴(kuò)充”固定分區(qū):指系統(tǒng)先把內(nèi)存劃分成若干個大小固定的分區(qū),一旦劃分好,在系統(tǒng)運(yùn)行期間便不再重新劃分。分區(qū)說明表:用于分

22、區(qū)管理的內(nèi)存分配表,按順序每個分區(qū)在分區(qū)說明表中對應(yīng)一個表目。不能充分利用內(nèi)存;靈活性差,可接納程序的大小受到了分區(qū)大小的嚴(yán)格控制。可變分區(qū):指系統(tǒng)不預(yù)先劃分固定分區(qū),而是在裝入程序時(shí)劃分內(nèi)存分區(qū),使為程序分配的分區(qū)的大小正好等于該程序的需求量,且分區(qū)的個數(shù)是可變的。實(shí)現(xiàn):基址寄存器用來存放程序所占分區(qū)的起始地址限長寄存器用來存放程序所占分區(qū)的長度已分配區(qū)表記錄已裝入程序在內(nèi)存中占用分區(qū)的起始地址和長度空閑區(qū)表記錄內(nèi)存中可供分配的空閑區(qū)的起始地址和長度算法:最先適應(yīng)算法、最優(yōu)適應(yīng)算法、最壞適應(yīng)算法、下次適應(yīng)算法回收:1.回收分區(qū)的上鄰分區(qū)是空閑的,需要將兩個空閑區(qū)合并成一個更大的空閑區(qū),然后修

23、改空閑區(qū)表。2 .回收分區(qū)的下鄰分區(qū)是空閑的,需要將兩個空閑區(qū)合并成一個更大的空閑區(qū),然后修改空閑區(qū)表。3 .回收分區(qū)的上鄰分區(qū)和下鄰分區(qū)都是空閑的,需要將三個空閑區(qū)合并成一個更大的空閑區(qū),然后修改空閑區(qū)表。4 .回收分區(qū)的上鄰分區(qū)和下鄰分區(qū)都不是空閑的,則直接將空閑分區(qū)記錄在空閑區(qū)表1保護(hù):1.設(shè)置界限寄存器2.保護(hù)鍵方法碎片移動技術(shù)3、覆蓋技術(shù)和交換技術(shù)。覆蓋技術(shù):指一個程序的若干程序段或幾個程序的某些部分共享某一個存儲空間。從用戶級徹底解決內(nèi)存小裝不下程序的問題;打破了需要將一個程序的全部信息裝入內(nèi)存后程序才能運(yùn)行的限制。交換技術(shù):是進(jìn)程在內(nèi)存和外存之間的動態(tài)調(diào)度,是由操作系統(tǒng)控制的。目

24、的:盡可能達(dá)到“足夠快地交換進(jìn)程,以使當(dāng)CPU調(diào)度程序想重新調(diào)度CPU時(shí),總有進(jìn)程在內(nèi)存中處于就緒(準(zhǔn)備執(zhí)行)狀態(tài)”的理想狀態(tài),從而提高內(nèi)存利用率。區(qū)別:與覆蓋技術(shù)相比,交換技術(shù)不要求用戶給出程序段之間的邏輯覆蓋結(jié)構(gòu),對用戶而言是透明的。而且,交換可以發(fā)生在不同的進(jìn)程或程序之間,而覆蓋發(fā)生在同一進(jìn)程或程序內(nèi)部,而且只能覆蓋那些與覆蓋段無關(guān)的程序段。4、虛存概念和虛擬存儲技術(shù)。虛存:一個比有限的實(shí)際內(nèi)存空間大得多的、邏輯的虛擬內(nèi)存空間。虛擬存儲技術(shù):利用大容量的外存來擴(kuò)充內(nèi)存,產(chǎn)生一個比有限的實(shí)際內(nèi)存空間大得多的、邏輯的虛擬內(nèi)存空間。虛擬存儲器的容量也是有限制的,主要是受外存容量所限。以頁或段為

25、單位。5、虛擬頁式存儲管理方案。概念:在進(jìn)程開始運(yùn)行之前,不是裝入全部頁面,而是裝入一個或另個頁面,之后根據(jù)進(jìn)程運(yùn)行的需求,動態(tài)裝入其他頁面;當(dāng)內(nèi)存空間已滿而又需要裝入新的頁面時(shí),則根據(jù)某種算法置換出某個頁面,以便裝入新的頁面。頁面調(diào)度策略:1.調(diào)入策略2.置頁策略3.置換策略頁面置換算法:1.先進(jìn)先出頁面置換算法(FIFQ2 .最近最少使用頁面置換算法(LRU)3 .最近最不常用頁面置換算法(LFU)4 .理想頁面置換算法(OPT)5 .最近未使用頁面置換算法(NRU)6 .第二次機(jī)會頁面置換算法7 .時(shí)鐘頁面置換算法(Clock)缺頁中斷率:f=F/AF:缺頁中斷次數(shù)A:訪問頁面的總次數(shù)只

26、要程序能分到n/2塊內(nèi)存空間,系統(tǒng)就可獲得最高效率;最佳頁的大小在29(512字節(jié))至214(16384字節(jié))之間。目的:把那些訪問概率非常高的頁放入內(nèi)存,減少內(nèi)外存交換的次數(shù)。性能問題:顛簸是由于缺頁率高而引起的;希望分配給進(jìn)程的物理頁面數(shù)與當(dāng)前工作集大小五、文件系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)技術(shù)數(shù)據(jù)存儲通常是以文件形式存放在磁盤或其他外部存儲介質(zhì)上,數(shù)據(jù)處理是通過文件處理來完成的,數(shù)據(jù)管理是通過文件管理來完成的。文件系統(tǒng):操作系統(tǒng)中與文件和目錄相關(guān)的子系統(tǒng)。1、文件的基本概念、文件的邏輯結(jié)構(gòu)、文件的物理結(jié)構(gòu)和存取方式。文件:一組帶標(biāo)示的、在邏輯上有完整意義的信息項(xiàng)的序列?;締挝唬盒畔㈨?xiàng)分類:1.按用途系

27、統(tǒng)文件、庫函數(shù)文件、用戶文件2.按組織形式普通文件、目錄文件、特殊文件邏輯:1.流式文件有序字符的集合,其長度為該文件所包含的字符個數(shù),流式文件無結(jié)構(gòu)2.記錄式文件一組有序記錄的集合,基本單位是記錄物理:1.順序結(jié)構(gòu)把邏輯上連續(xù)的文件信息依次存放在連續(xù)編號的物理塊中知曉文件存儲的起始塊號和文件長度,可快速存??;支持順序存取和隨機(jī)存取;文件不能動態(tài)增長。2.鏈接結(jié)構(gòu)為每個文件構(gòu)造所使用磁盤塊的鏈表無碎片問題,利于文件動態(tài)擴(kuò)充,利于文件插入和刪除,提高磁盤空間利用率;存取速度慢,不適于隨機(jī)存取文件,效率較低,存在可靠性問題;鏈接指針需占用一定空間3.索引結(jié)構(gòu)把物理盤塊的指針子集存放在索引表中的內(nèi)存

28、索引表中支持順序存取和隨機(jī)存取,滿足文件動態(tài)擴(kuò)充要求;會引起較多的尋到次數(shù)和尋到時(shí)間,索引表增加存儲空間開銷4.1 節(jié)點(diǎn)給每個文件賦予稱為I節(jié)點(diǎn)的小表,在表中列出了文件屬性和文件地址同時(shí)適合大小文件使用,靈活性較強(qiáng),占用系統(tǒng)空間較少存?。阂环N文件的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)之間的映射和變換機(jī)制方法:順序存取、隨機(jī)存取2、文件目錄的基本概念,文件目錄的實(shí)現(xiàn)。文件目錄:把所有文件的文件控制塊有機(jī)的組織起來,就構(gòu)成了文件控制塊的一個有序集合文件目錄以文件的形式保存起來,是長度固定的記錄式文件,保存在外存儲器上實(shí)現(xiàn):1.一級目錄結(jié)構(gòu)2.二級目錄結(jié)構(gòu)3.樹形目錄3、文件的操作,目錄的操作。文件操作:建立文件、打

29、開文件、讀文件、寫文件、關(guān)閉文件、刪除文件、指針定位目錄操作:由系統(tǒng)調(diào)用實(shí)現(xiàn)4、磁盤空間的管理。位示圖:利用一串二進(jìn)制(bit)的值來反映磁盤空間的分配使用情況空閑:0;分配:1空閑鏈表:專門為空閑塊建立的一張表,該表記錄外存儲器中全部空閑的物理塊空閑塊鏈表:將外存儲器中所有的空閑物理塊連成一個鏈表,用一個空閑塊首指針指向第一個空閑塊,隨后的每個空閑塊中都含有指向下一個空閑塊的指針,最后一塊的指針為空,表示鏈尾。效率低下成組鏈接:可迅速找到大量空閑盤塊地址5、文件系統(tǒng)的可靠性和安全性。文件共享:文件可以同時(shí)使用、文件不允許同時(shí)使用鏈接法(link)文件保護(hù):建立副本、定時(shí)轉(zhuǎn)儲、規(guī)定文件的存取權(quán)

30、限文件存取權(quán)限:1.存取控制矩陣以一個二維矩陣來實(shí)施文件的存取控制.二級存取控制設(shè)立兩個存取級別.UNIX文件存取權(quán)限對訪問者分類識別根據(jù)操作內(nèi)容限定權(quán)限文件保密:隱藏文件目錄、設(shè)置口令、使用密碼6、文件系統(tǒng)的性能問題。塊高速緩存:系統(tǒng)在內(nèi)存中保存一些磁盤塊,這些磁盤塊在邏輯上屬于磁盤合理分配磁盤空間:把有可能順序存取的塊放在一起,最好在同一柱面上磁盤的驅(qū)動調(diào)度:1.移臂調(diào)度先來先服務(wù)調(diào)度算法(FCFS最短尋道時(shí)間有限調(diào)度算法(SSTF掃描算法(SCAN)循環(huán)掃描算法(C-SCAN2.旋轉(zhuǎn)調(diào)度?若干訪問等待者請求訪問同一磁道上的不同扇區(qū)?若干訪問等待者請求訪問不同磁道上的不同扇區(qū)?若干訪問等待

31、者請求訪問不同磁道上的相同扇區(qū)對于前兩種情況,旋轉(zhuǎn)調(diào)度總是為首先到達(dá)磁盤讀寫磁頭位置下的扇區(qū)進(jìn)行讀寫操作對于第三種情況,由于這些扇區(qū)編號相同,又在同一個柱面上,所以它們同時(shí)到達(dá)讀寫磁頭的位置下。這時(shí)旋轉(zhuǎn)調(diào)度可任意選擇一個讀寫磁頭進(jìn)行讀寫操作。信息的優(yōu)化分布:對于一些能預(yù)知處理要求的信息在磁盤上的記錄位置,可以提高系統(tǒng)效率RAID技術(shù):7、Windows的文件系統(tǒng)FA【UNIX的文件系統(tǒng)。FAT文件分配表(FileAllocationTable)引導(dǎo)扇區(qū):包含用于描述卷的各種信息,利用這些信息才可以訪問文件系統(tǒng)。文件分配表:包含關(guān)于卷上每個簇的類型信息根目錄:一個位于磁盤上一個特殊的位置并且具有

32、固定的大小。V7:文件名(14字節(jié))I節(jié)點(diǎn)(2字節(jié))文件大小、三個時(shí)間、所有者、所在組、保護(hù)信息以及一個計(jì)數(shù)六、I/O設(shè)備管理1、設(shè)備與設(shè)備分類。設(shè)備:輸入/輸出設(shè)備(I/O設(shè)備)也稱為外部設(shè)備設(shè)備管理是操作系統(tǒng)總體性能的重要決定因素、重要表現(xiàn)指標(biāo)和常見瓶頸之一。分類:1.按設(shè)備的使用特性分類.按設(shè)備的信息組織方式劃分.按設(shè)備的共享屬性分類I/O設(shè)備、存儲設(shè)備字符設(shè)備、塊設(shè)備共享設(shè)備、獨(dú)占設(shè)備、虛擬設(shè)備I/O硬件組成。結(jié)構(gòu):CPU和主存、總線、接口(適配器)、設(shè)備控制器、設(shè)備數(shù)據(jù)傳送控制方式:程序直接控制方式:由用戶進(jìn)程直接控制內(nèi)存或CPU和外圍設(shè)備之間進(jìn)行信息傳送CPU和外設(shè)的操作能得到同步

33、,硬件結(jié)構(gòu)簡單;CPU效率低下,對異常無實(shí)時(shí)響應(yīng)中斷控制方式:在發(fā)生了一個異常事件時(shí),調(diào)用相應(yīng)處理程序進(jìn)行服務(wù)的過程DMA方式:一種完全由硬件執(zhí)行I/O數(shù)據(jù)交換的工作方式操作均由硬件電路實(shí)現(xiàn),傳輸速度快,減少CPU開銷;初始化和結(jié)束仍由CPU控制通道控制方式:一個特殊功能的處理器,有自己的指令和程序,可以實(shí)現(xiàn)對外部設(shè)備的統(tǒng)一管理和外圍設(shè)備與內(nèi)存之間的數(shù)據(jù)傳送選擇通道、數(shù)組多路通道、字節(jié)多路通道進(jìn)一步減少數(shù)據(jù)輸入輸出對整個系統(tǒng)運(yùn)行效率的影響I/O軟件的特點(diǎn)及結(jié)構(gòu)。特點(diǎn):設(shè)備獨(dú)立T(設(shè)計(jì)I/O軟件的一個最關(guān)鍵的目標(biāo))結(jié)構(gòu):分層構(gòu)造,把設(shè)備管理軟件組織成為一系列的層次,其中低層與硬件相關(guān),把硬件與較

34、高層次的軟件隔離開來。(中斷處理程序、)設(shè)備驅(qū)動程序:直接同硬件打交道的軟件模塊,設(shè)備驅(qū)動程序中包括了所有與設(shè)備相關(guān)的代碼。與設(shè)備無關(guān)的系統(tǒng)軟件:用戶空間的I/O軟件:4、典型技術(shù):通道技術(shù),緩沖技術(shù),SPOOLin破術(shù)。通道技術(shù):一個有自己的指令和程序的特殊功能的處理器,實(shí)現(xiàn)對外部設(shè)備的統(tǒng)一管理和外圍設(shè)備與內(nèi)存之間的數(shù)據(jù)傳送。選擇通道、數(shù)組多路通道、字節(jié)多路通道緩沖技術(shù):以空間換取時(shí)間,在設(shè)備使用不均衡時(shí)起到平滑作用。SPOOLing(彳取脫機(jī))技術(shù):用磁盤設(shè)備作為主機(jī)的直接輸入/輸出設(shè)備,主機(jī)直接從磁盤上選取作業(yè)運(yùn)行,作業(yè)的執(zhí)行結(jié)果也存在磁盤上;相應(yīng)地,通道則負(fù)責(zé)將用戶作業(yè)從卡卡片機(jī)上動態(tài)

35、寫入磁盤,而這一操作與主機(jī)并行。類似的操作也用于打印輸出用戶作業(yè)運(yùn)行結(jié)果。SPOOLin破術(shù)如下圖所示。內(nèi)存輸入裝置預(yù)輸入程序輸入裝置緩輸出程序輸出裝置輸出裝置SPOOLin畫術(shù)示意圖這里需要指出,通道直接受主機(jī)控制,它們之間通過中斷相互通信。假脫機(jī)技術(shù)為實(shí)現(xiàn)多道批處理系統(tǒng)中的多道程序設(shè)計(jì)思想提供了重要的基礎(chǔ)。I/O性能問題及解決方案。思路:使CPU利用率盡可能不受I/O的影響。技術(shù):1.通過應(yīng)用緩沖技術(shù),減少或緩解不同設(shè)備之間傳輸速度的差距。.通過應(yīng)用異步I/O技術(shù),使CPU計(jì)算不必等待I/O操作結(jié)果。.通過應(yīng)用DMA和通道部件,使CPU擺脫I/O操作,與這些部件并行執(zhí)行。.通過應(yīng)用虛擬設(shè)備技術(shù),提高獨(dú)占設(shè)備的利用率。七、死鎖1、基本概念:死鎖,活鎖,饑餓。死鎖:指在多道程序系統(tǒng)中,一組進(jìn)程中的的每一個進(jìn)程均無期限地等待被該組進(jìn)程中的另一個進(jìn)程所占有且永遠(yuǎn)不會釋放的資源活鎖:沒有出現(xiàn)死

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論