第1章-操作系統(tǒng)概述_第1頁
第1章-操作系統(tǒng)概述_第2頁
第1章-操作系統(tǒng)概述_第3頁
第1章-操作系統(tǒng)概述_第4頁
第1章-操作系統(tǒng)概述_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

北京科技大學(xué)計算機科學(xué)與技術(shù)系DepartmentofComputerScience&TechnologyUniversityofScience&TechnologyBeijing2009操作系統(tǒng)原理PrinciplesofOperatingSystem王成耀教材與參考書[1]張堯?qū)W,史美林,張高.計算機操作系統(tǒng)教程(第3版).清華大學(xué)出版社,2006(教材)[2]AndrewS.Tanenbaum.陳向群等譯.現(xiàn)代操作系統(tǒng)(第2版).機械工業(yè)出版社,2005[3]湯子瀛,哲鳳屏,湯小丹.計算機操作系統(tǒng).西安電子科技大學(xué)出版社,1996[4]WilliamStallings.魏迎梅等譯.操作系統(tǒng)-內(nèi)核與設(shè)計原理(第四版),電子工業(yè)出版社,2001[5]AbrahamSilberschatz,PeterGalvin,GregGagne.AppliedOperatingSystemConcepts,JohnWiley&Sons,Inc.,2000[6]孟慶昌,牛欣源.Linux教程(第2版),電子工業(yè)出版社,2007講授的主要內(nèi)容第1章操作系統(tǒng)概述第2章進程管理第3章進程調(diào)度第4章內(nèi)存管理第5章進程與內(nèi)存管理實例第6章文件系統(tǒng)第7章I/O設(shè)備管理第8章Linux文件系統(tǒng)第9章死鎖時間安排:進程管理(多)內(nèi)存管理

文件系統(tǒng)設(shè)備管理(少)

ppt在:computeros@163.com,密碼:system第1章操作系統(tǒng)概述1.1什么是操作系統(tǒng)(OperatingSystem,OS)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念1.3OS對運行環(huán)境的要求1.4典型OS實例1.5現(xiàn)代操作系統(tǒng)的基本特征1.6從不同角度認識操作系統(tǒng)1.7為什么要學(xué)習(xí)操作系統(tǒng)?操作系統(tǒng)設(shè)計者應(yīng)用軟件設(shè)計者

硬件(機器語言)

操作系統(tǒng)編輯器;編譯器;命令解釋器網(wǎng)絡(luò)系統(tǒng)和服務(wù)程序銀行系統(tǒng);證券交易系統(tǒng);

航空訂票系統(tǒng);游戲系統(tǒng)軟件應(yīng)用軟件終端用戶1.1什么是操作系統(tǒng)(OperatingSystem,OS)1.OS在計算機系統(tǒng)中的位置程序員OS設(shè)計者1.1什么是操作系統(tǒng)(OperatingSystem,OS)2.OS以什么形式出現(xiàn)?是一組程序。OS與普通程序有何區(qū)別?3.OS的作用(功能)(1)一個虛擬機(VirtualMachine)讓用戶和程序員在使用計算機時不涉及計算機硬件的細節(jié),使硬件細節(jié)和程序員隔離開來,即建立一種簡單的高度抽象。命令接口(面向普通用戶):命令行,GUI,命令腳本編程接口(面向程序員):系統(tǒng)調(diào)用,高級語言庫函數(shù)-用戶觀點1.1什么是操作系統(tǒng)(OperatingSystem,OS)

用戶與計算機之間的接口。如果沒有OS,計算機可以使用嗎?OS的作用(2)一個資源管理器:管理系統(tǒng)的軟硬件資源。進程管理:程序的調(diào)度;處理機(CPU)的分配等;內(nèi)存管理:內(nèi)存分配、釋放與保護;地址映射;內(nèi)存擴充等;文件管理:文件存儲空間管理;文件存??;文件訪問控制等;I/O設(shè)備管理:設(shè)備分配;緩沖區(qū)管理等。-系統(tǒng)觀點硬件資源:構(gòu)成計算機系統(tǒng)所必須配置的所有硬件: 磁盤、時鐘、內(nèi)存,顯示器、網(wǎng)絡(luò)接口,...。軟件資源:程序和數(shù)據(jù)(文件)。4.OS的定義

OS是硬件之上的第1層軟件(系統(tǒng)軟件)是一組程序,用來有效控制和管理計算機系統(tǒng)的各類資源(硬件和軟件資源:設(shè)備、文件、存儲器、CPU、程序(進程)),以方便用戶使用計算機(用戶和計算機的接口)。1.1什么是操作系統(tǒng)(OperatingSystem,OS)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念1.作業(yè)(Job)從輸入開始到輸出結(jié)束,用戶要求計算機所做的一次業(yè)務(wù)處理的全部工作。作業(yè)由順序的一組作業(yè)步組成。作業(yè)的概念來源于批處理系統(tǒng)。分時系統(tǒng)中一般不存在作業(yè)的概念。作業(yè)作業(yè)由三部分組成:程序數(shù)據(jù)作業(yè)說明書$END$RUNDataforprogram$LOADFortranprogram$FORTRAN

$JOB,10,429754

Wang

典型的FMSJOB結(jié)構(gòu)運行一個作業(yè)的步驟:1)將程序?qū)懺诩埳希ㄓ酶呒壵Z言或匯編語言)2)穿孔成卡片,再將卡片盒交給操作員3)計算結(jié)果從打印機上輸出4)操作員到打印機上撕下運算結(jié)果送到輸出室5)程序員稍后可從輸出室取到結(jié)果6)操作員從輸入室的卡片盒中讀入另一個任務(wù)7)如果需要FORTRAN編譯器,還要把它取來讀入計算機缺點:機時在走來走去時浪費掉作業(yè)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念2.批處理(batch)為改進內(nèi)存和I/O設(shè)備之間的吞吐量

IBM7094計算機引入了I/O處理機概念思想:在輸入室收集全部的作業(yè),用一臺相對便宜的計算機(IBM1401計算機),將作業(yè)讀到磁帶上再用較昂貴的計算機(IBM7094)完成真正的計算一批作業(yè)構(gòu)成一個作業(yè)隊列,依次處理??ㄆ缙谂幚硐到y(tǒng)IBM1401IBM7094IBM1401輸入磁帶磁帶機卡片閱讀機輸出磁帶打印機批處理批處理的含義:無交互能力:作業(yè)從提交到完成,用戶不能與之交互;從傳統(tǒng)的作業(yè)->命令文件的擴展把一系列命令放在一個文件中,稱之為命令文件用文件名作為命令名來執(zhí)行批處理命令可以是專門的命令,也可是系統(tǒng)的基本命令;還有有關(guān)的語法結(jié)構(gòu),循環(huán)、分支、轉(zhuǎn)移、判別等,構(gòu)成一套特殊的命令語言,可以接受參數(shù)、變量,宏替換等缺點?批處理成批處理:

用戶不能干預(yù)自己作業(yè)的運行一旦發(fā)現(xiàn)作業(yè)錯誤不能及時改正延長了軟件開發(fā)時間一般只適用于成熟的程序或大型的計算程序1.2操作系統(tǒng)發(fā)展過程中形成的一些概念3.單道程序與多道程序單道程序:

在內(nèi)存中只能有一個用戶程序(從進入到結(jié)束)若當(dāng)前程序因等待I/O而暫停,則CPU空閑對于CPU操作密集的科學(xué)計算問題,浪費時間少對于商業(yè)數(shù)據(jù)處理,I/O等待時間常占80%-90%。多道程序:

在內(nèi)存中存放多個用戶程序,同時處于可運行狀態(tài)。當(dāng)一個程序等待I/O時,另一個程序可以使用CPU。A完成I/OA再次被調(diào)度

A完成

程序A請求I/O程序B請求I/O程序C請求I/O

C完成I/OB完成I/OC再次被調(diào)度

程序A程序C程序B調(diào)度程序

時間軸t單線表示程序占用CPU,雙線表示外設(shè)在執(zhí)行相應(yīng)程序的I/O請求1.2操作系統(tǒng)發(fā)展過程中形成的一些概念多道程序示意圖與單道批處理系統(tǒng)相比:系統(tǒng)吞吐量(單位時間內(nèi)完成的總工作量)大;資源利用率高;周轉(zhuǎn)時間(作業(yè)從進入系統(tǒng)到完成所經(jīng)歷的時間)長。4.多道批處理系統(tǒng)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念批處理系統(tǒng)中引入多道程序技術(shù)5.分時系統(tǒng)(Time-sharingSystem)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念主機終端多個用戶(程序)共享一臺計算機,按時間片(timeslice)輪流使用。時間片:OS將CPU時間劃分為若干個片段分時的特點:多路性交互性“獨占”性及時性同時有多個用戶使用一臺計算機宏觀上:是多個人同時使用一個CPU微觀上:多個人在不同時刻輪流使用CPU用戶根據(jù)系統(tǒng)響應(yīng)結(jié)果進一步提出新請求(用戶直接干預(yù)每一步)用戶感覺不到計算機為其他人服務(wù)(OS提供虛機器,各個用戶的虛機器互不干擾)系統(tǒng)對用戶提出的請求及時響應(yīng)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念1)對稱多處理模式(SymmetricMultiprocessingMode)所有的處理機地位相同,每個處理機運行相同的OS拷貝。6.多處理機系統(tǒng)(MultiprocessorSystem)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念2)非對稱多處理模式(AsymmetricMultiprocessingMode)又稱主從模式(master-slavemode)1個主處理器,多個從處理器。主處理器:運行OS。管理整個系統(tǒng)的資源,為從處理器分配任務(wù)7.并發(fā)(Concurrence)與并行(Parallel)并行:兩個或多個事件在同一時刻發(fā)生。并發(fā):兩個或多個事件在同一時間間隔內(nèi)發(fā)生。1.2操作系統(tǒng)發(fā)展過程中形成的一些概念在單處理機系統(tǒng)中,多個程序的并發(fā)執(zhí)行是如何體現(xiàn)的?多用戶:允許多個用戶通過各自的終端使用同一臺主機,共享主機系統(tǒng)中的各類資源。多任務(wù):允許多個程序并發(fā)執(zhí)行。8.多用戶與多任務(wù)(Multitask)1.2操作系統(tǒng)發(fā)展過程中形成的一些概念9.實時OS是指系統(tǒng)能夠?qū)崟r地響應(yīng)外部事件的請求,在規(guī)定的短時間內(nèi)完成對該事件的處理,并控制所有實時設(shè)備和實時任務(wù)協(xié)調(diào)一致地運行。及時響應(yīng):延遲時間短高可靠性:容錯,冗余一般是專用的,如武器系統(tǒng)的實時控制,生產(chǎn)過程的實時控制等。1.2操作系統(tǒng)發(fā)展過程中形成的一些概念10.網(wǎng)絡(luò)OS計算機網(wǎng)絡(luò):物理上分散的自主計算機通過通信系統(tǒng)的線路互連而成。自主:具有獨立處理能力互連:計算機之間的通信和相互合作。通信、信息交換、資源共享互操作、協(xié)作1.2操作系統(tǒng)發(fā)展過程中形成的幾個概念網(wǎng)絡(luò)OS的兩種基本模式:客戶/服務(wù)器(Client/Server)模式對等(Peer-to-Peer)模式網(wǎng)絡(luò)OS:提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)服務(wù)功能的操作系統(tǒng)。網(wǎng)絡(luò)OS11.分布式OS(DistributedOS)基礎(chǔ):網(wǎng)絡(luò)分布處理的透明性運行在不具有共享內(nèi)存的多臺機器上,但在用戶眼里卻象一臺計算機。一個統(tǒng)一的操作系統(tǒng)邏輯上緊密耦合1.2操作系統(tǒng)發(fā)展過程中形成的一些概念網(wǎng)絡(luò)OS和分布式OS的比較:耦合程度分布式OS是在各機上統(tǒng)一建立的,直接管理CPU、存儲器和外設(shè),統(tǒng)一進行全系統(tǒng)的管理;網(wǎng)絡(luò)OS通常容許異種OS互連,各機上各種服務(wù)程序需按不同網(wǎng)絡(luò)協(xié)議互操作并行性分布式OS可以將一個進程分散在各機上并行執(zhí)行,包括進程遷移;網(wǎng)絡(luò)OS則各機器上運行的程序是相互獨立的透明性用戶是否知道或指定資源在哪個機器上。分布式OS的網(wǎng)絡(luò)資源調(diào)度對用戶透明,用戶不了解所占有資源的位置;網(wǎng)絡(luò)OS中對網(wǎng)絡(luò)資源的使用要由用戶明確指定1.2操作系統(tǒng)發(fā)展過程中形成的一些概念1.3OS對運行環(huán)境的要求1.CPU(1)特權(quán)指令-多道程序的需要只能由OS使用。例如,啟動外部設(shè)備,建立存儲保護,清內(nèi)存、關(guān)中斷等。如果沒有特權(quán)指令的話,會有什么問題?CPU如何知道是OS還是一般用戶程序在執(zhí)行呢?依賴于CPU的狀態(tài)標識。CPU(2)CPU的2種工作狀態(tài)(執(zhí)行模式)核心態(tài)(KernelMode)或稱管態(tài)用戶態(tài)(UserMode)或稱目態(tài)核心態(tài)和用戶態(tài)的區(qū)別:處理器處于核心態(tài)時:全部指令(包括特權(quán)指令)可以執(zhí)行可使用所有資源并具有改變處理器狀態(tài)的能力處理器處于用戶態(tài)時:只有非特權(quán)指令能執(zhí)行特權(quán)級別不同,可運行指令集合也不同特權(quán)級別越高,可以運行指令集合越大高特權(quán)級別對應(yīng)的可運行指令集合包含低特權(quán)級的CPUCPU(3)程序狀態(tài)字PSW(ProgramStatusWord))和程序計數(shù)器PC(ProgramCounter)

PSW:指示程序執(zhí)行的當(dāng)前狀態(tài),主要包括

CPU的工作狀態(tài)——指明核心態(tài)還是用戶態(tài),用來說明當(dāng)前在CPU上執(zhí)行的是操作系統(tǒng)還是一般用戶,從而決定其是否可以使用特權(quán)指令或擁有其他的特殊權(quán)力

條件標志——反映指令執(zhí)行后的結(jié)果特征

中斷標志——指出是否允許中斷

PC:指示下一條要執(zhí)行的指令2.內(nèi)存1.3OS對運行環(huán)境的要求是支持OS運行的硬件環(huán)境的一個重要方面。程序必須存放在內(nèi)存中才能運行。在多道程序系統(tǒng)中,對于若干個在內(nèi)存中的程序及其相關(guān)數(shù)據(jù),操作系統(tǒng)要管理、保護程序和數(shù)據(jù),使它們不至于受到破壞和相互干擾。操作系統(tǒng)本身也要存放在內(nèi)存中并運行。

內(nèi)存

由若干個存儲單元(字節(jié)或字)組成的一維連續(xù)的地址空間,簡稱內(nèi)存空間。用來存放當(dāng)前正在運行程序的代碼及數(shù)據(jù)存儲的最小單位:1個二進制位最小編址單位:字節(jié),一個字節(jié)包含8個二進制位(1)內(nèi)存分塊塊作為分配內(nèi)存空間的基本單位,如4KB為1塊。為什么要按塊來分配內(nèi)存空間?旨在簡化對內(nèi)存的分配和管理內(nèi)存(2)內(nèi)存保護-OS正常運行的基本條件常用的保護機制:

1)界限寄存器存放某任務(wù)在內(nèi)存的上界和下界地址(或者下界與長度)。內(nèi)存界限寄存器存儲保護技術(shù)界限寄存器實現(xiàn)存儲保護的方法:在CPU中設(shè)置一對下界寄存器和上界寄存器存放用戶程序在內(nèi)存中的下界和上界地址也可將一個寄存器作為基址寄存器,另一寄存器作為限長寄存器(指示存儲區(qū)長度)每當(dāng)CPU要訪問內(nèi)存,硬件自動將被訪問的內(nèi)存地址與界限寄存器的內(nèi)容進行比較,以判斷是否越界如果未越界,則按此地址訪問內(nèi)存,否則將產(chǎn)生中斷——越界中斷(存儲保護中斷)內(nèi)存2)存儲保護鍵(Key)當(dāng)一個程序進入內(nèi)存時,OS為其分配一個唯一的Key。同時將分配給它的每個存儲塊都設(shè)置成該Key。如IBM370。該方法的基本要點:每個運行的程序及其存儲塊有1個Key;PSW中的存儲Key字段存放當(dāng)前運行程序的Key;訪問內(nèi)存時,兩個Key匹配;通常將0(在PSW)作為“萬能鍵”;存儲塊引入讀保護位:0:Key不匹配時也可讀,1:Key不匹配時不可讀。內(nèi)存A塊00101B塊01001C塊01010存儲Key讀保護位0:無論key是否匹配,都可以讀1:只有key匹配才可以讀PSW…0010…key①讀寫A均可。因為key匹配;②讀寫B(tài)不可。因為key不匹配,且讀保護位=1;③讀C可以,因為讀保護位=0;④寫C不可以。=內(nèi)存3.中斷指CPU在收到外部中斷信號后,停止原來工作,轉(zhuǎn)去處理該中斷事件,完畢后回到原來斷點繼續(xù)工作。CPU對系統(tǒng)中發(fā)生的“異步(隨機)”事件的處理中斷的類型:硬件中斷異常(Exception)陷入(Trap)-訪管中斷(系統(tǒng)調(diào)用)有人稱“OS是中斷驅(qū)動的”。-如果沒有中斷,OS將難以工作。1.3OS對運行環(huán)境的要求中斷響應(yīng)

4.時鐘(1)硬件時鐘:通過時鐘寄存器實現(xiàn)。絕對時鐘:記錄當(dāng)前時間相對時鐘(間隔時鐘):分時系統(tǒng)的基礎(chǔ)。(2)軟件時鐘:通過時鐘隊列實現(xiàn)。

-OS必不可少的硬件設(shè)施1.3OS對運行環(huán)境的要求5.重定位將程序中的相對地址變換為絕對地址。原因:運行前不可能知道程序?qū)⒎旁趦?nèi)存的什么位置。靜態(tài)重定位:程序裝入內(nèi)存時,由裝入程序重定位;動態(tài)重定位:CPU每次訪問內(nèi)存時,由動態(tài)地址變換機構(gòu)(硬件)自動進行1.3OS對運行環(huán)境的要求1.Unix1.4典型OS實例一群計算機迷在貝爾實驗室開發(fā)出Unix初衷:可以在一臺無人使用的DECPDP-7小型計算機上玩星際探險游戲KenThompson,DennisRitchie1983年圖靈獎獲得者1999年4月美國國家技術(shù)金獎1.4典型OS實例(1)UNICS(UniplexedInformationandComputingService)

改名為Unix

結(jié)構(gòu):用C、匯編語言寫成的良好的、通用的、多用戶、多任務(wù)、分時操作系統(tǒng)(3)多種變體兩個版本系列

AT&TSystemVBSD(BerkeleySoftwareDistribution)1.4典型OS實例2.Linux1.4典型OS實例

1991年,芬蘭赫爾辛基大學(xué)的一名大學(xué)生Linus

Benedic

Torvalds首先開發(fā)9300行C語言代碼,950行匯編語言代碼(0.01版)源代碼公開與Unix兼容1994年,1.0版:約165000行代碼3WindowsNT/2000/XP/2003

MS-DOS、Windows3.1/95/98/Me、WindowsNT、Windows2000/XP、WindowsCE、WindowsServer2003歷史上的一些重要的操作系統(tǒng):FMS(FORTRANMonitorSystem)和IBSYS

(IBM為7094配備的操作系統(tǒng))OS/360(IB

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論