




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
計算機操作系統Important操作系統課程是計算機教育的必修內容計算機專業的核心課技術開發的理論基礎考研科目Text1Text2Text3Text4TextWhatText1Text2Text3Text4TextText3學習什么不是理解操作系統如何工作OS的工作方式OS內部算法和數據結構設計OS過程中的問題、解決方案和折中權衡操作系統中的典型技術和應用
而是如何使用操作系統WhyA設計或修改現有的操作系統B加深對所用OS的理解,有利于編程用戶深入地與操作系統打交道C編程時借鑒操作系統的設計思想和算法D選擇購買操作系統如FIFO算法,最佳適應算法E思維方式的學習引言課程特點:概念多、原理性強、較抽象課程學習目的:基礎核心課,有利于對計算機系統的理解和軟件開發課程學習方法:以問題驅動學習、理論聯系實際課程學習難點:概念、原理、算法、數據結構E-mail:qlgdxjsj@163.com教材及參考書教材:計算機操作系統,湯小丹等西安電子科技大學出版社參考書:計算機操作系統學習指導與題解,湯子瀛主審梁紅兵等編著,西安電子科技大學出版社張堯學計算機操作系統清華大學出版社操作系統教程與實驗,胡明慶、高巍、鐘梅,清華大學出版社,2007.01第1版計算機操作系統,何炎祥、李飛、李寧,清華大學出版社,2004年第1版
OperatingSystemConcepts,SeventhEdition.Silberschatz,Galvin,Gagne,Johnwiley&Sons.Inc.2005第一章操作系統引論第一章操作系統引論本章要點(1/3)目的:建立OS的基本概念,切實掌握OS的一些基本概念。操作系統的目標和作用目標:方便性、有效性、可擴充性、開放性作用:接口資源管理者實現了對資源的抽象是計算機工作流程的組織者第一章操作系統引論本章要點(2/3)操作系統的引入和發展:由簡單到復雜,由低級到高級。從早期無操作系統
人機矛盾;CPU-I/O設備速度不匹配的矛盾。單道批處理系統多道批處理系統分時系統實時系統網絡操作系統、分布式操作系統、嵌入式操作系統第一章操作系統引論本章要點(3/3)操作系統的基本特征和功能:四大特征:并發、共享、虛擬、異步性五大功能:處理機管理、存儲器管理、設備管理、文件管理、提供用戶接口操作系統的結構設計:分層式結構分層的原則客戶/服務器技術面向對象技術微內核結構第一章操作系統引論本章內容第一章操作系統引論1.4操作系統的主要功能1.3操作系統的基本特性1.2操作系統的發展過程1.1操作系統的目標和作用1.0知識引入1.5操作系統的結構設計第一章操作系統引論1.0知識引入1、信息技術的發展趨勢第一章操作系統引論戈登·摩爾GordonMoore(Intel創始人之一)在1965提出:半導體芯片上晶體管的密度大約每隔18個月就會增加一倍,性能也將提升一倍。這一定律揭示了信息技術進步的速度微處理器變得更小、更密集、功能更強大。芯片上晶體管的數量每18個月翻番,這就是“摩爾定律”第一章操作系統引論2、世界是一個大型并行系統微處理器無處不在后臺是巨大的基礎設施作為支持Internet互聯大規模、可靠、安全的服務數據庫信息采集遠程存儲在線游戲貿易……3、不同時期人們對CPU的占用率如今:人均所占有CPU的數量100第一章操作系統引論4、多核芯片:未來發展趨勢第一章操作系統引論Intel80-core多核芯片(2007年2月)80simplecores2floatingpointengines/creMesh-like“network-on-a-chip”100million晶體管(1個億)65nmFeaturesize“多核”指每個芯片上有多個處理器64?128?很難具體給出一個界限值如何進行編程2個CPU用于視頻/音頻1個用于字處理,1個用于瀏覽器76個用于病毒檢測?每一級中都必須按“并行系統”的要求進行開發5、計算機硬件結構第一章操作系統引論計算機系統的操作一個或者多個CPU、設備控制器通過共享內存的總線進行連接CPU并發執行,設備對內存競爭使用6、不斷增加的軟件復雜度第一章操作系統引論第一章操作系統引論1.1操作系統的目標和作用1、操作系統是什么?操作系統是管理計算機硬件的軟件。它也為應用程序提供一個基礎,在計算機用戶與計算機硬件之間扮演一個中間者的角色。1.1.1
操作系統的目標第一章操作系統引論2、操作系統的目標:對于不同的計算機系統,操作系統設計的目標會有差異。大型/小型計算機微型計算機手持機(PDA)通常在計算機硬件上配置的OS,其目標有以下幾點:有效性提高系統資源的利用率提高系統的吞吐量方便性可擴充性開放性第一章操作系統引論計算機系統結構圖第一章操作系統引論3、計算機系統結構:第一章操作系統引論操作系統在程序執行時做什么?#include<stdio.h>intmain(intargc,char*argv[]){puts("helloworld");return0;}第一章操作系統引論操作系統在程序執行時做什么?用戶告訴操作系統執行hello程序操作系統找到該程序,檢查其類型檢查程序首部,找出正文和數據的地址文件系統找到第一個磁盤塊父進程需要創建一個新的子進程,執行hello程序操作系統需要將執行文件映射到進程結構操作系統設置CPU上下文環境,并跳到程序開始處程序的第一條指令執行,失敗,缺頁中斷發生操作系統分配一頁內存,并將代碼從磁盤讀入,繼續執行更多的缺頁中斷,讀入更多的頁面程序執行系統調用,在文件描述符中寫一字符串第一章操作系統引論操作系統在程序執行時做什么?操作系統檢查字符串的位置是否正確操作系統找到字符串被送往的設備設備是一個偽終端,由一個進程控制操作系統將字符串送給該進程該進程告訴窗口系統它要顯示字符串窗口系統確定這是一個合法的操作,然后將字符串轉換成像素窗口系統將像素寫入存儲映像區視頻硬件將像素表示轉換成一組模擬信號控制顯示器(重畫屏幕)顯示器發射電子束你在屏幕上看到helloworld1.1.2
操作系統的作用第一章操作系統引論用戶觀點:OS是用戶與計算機硬件系統之間的接口。資源管理觀點:OS是計算機系統資源的管理者虛擬機觀點:OS實現了對計算機資源的抽象,隱藏了對硬件操作的細節。1、用戶觀點操作系統從用戶的觀點來看,是給用戶提供了一個工作環境操作系統提供的接口:命令方式(CLI,命令行接口)系統調用方式(也稱為應用編程接口,ApplicationProgrammingInterface,簡稱API)圖形、窗口方式(GUI,圖形用戶接口)第一章操作系統引論圖1-1OS作為接口的示意圖2、資源管理觀點操作系統是計算機系統中各類資源的管理者,它負責分配、回收以及控制系統中的各種軟硬件資源。處理器存儲器I/O設備信息(數據和程序)跟蹤資源的使用狀況,滿足資源請求,提高資源利用率,以及協調各程序和用戶對資源的使用沖突監視資源分配/回收資源保護資源第一章操作系統引論3、虛擬機觀點OS向用戶提供了一個對硬件操作的抽象模型,使用戶更容易地使用計算機硬件資源,—實現了對計算機硬件操作的第一個層次的抽象。第一章操作系統引論3、虛擬機觀點OS為用戶提供了用于文件的管理軟件,用于實現對文件操作的細節,并向上提供一組對文件進行存取操作的命令,—實現了對計算機硬件操作的第二個層次的抽象OS為用戶提供了許多比計算機硬件功能更強、使用更方便的功能。第一章操作系統引論機器指令物理接口硬件用戶I/O操作命令(Read,Write)用戶物理接口硬件I/O軟件虛擬機圖1-2I/O軟件隱藏了I/O操作實現的細節4、操作系統定義操作系統是計算機系統中的一個系統軟件,管理和控制計算機系統中硬件和軟件資源,合理地組織計算機的工作流程,以便有效利用這些資源為用戶提供一個功能強、使用方便的工作環境,從而在計算機與用戶之間起到接口的作用。第一章操作系統引論1.1.3
推動操作系統發展的主要動力第一章操作系統引論不斷提高計算機資源利用率方便用戶器件的不斷更新換代計算機體系結構的不斷發展:單處理機系統、多處理機系統、分布式系統、計算機網絡更正軟件錯誤1.2操作系統的發展過程第一章操作系統引論操作系統的簡歷50年代中期,第一個簡單批處理操作系統60年代中期,多道程序批處理系統不久,分時系統、實時系統80年代,微機、多處理機及網絡操作系統第一章操作系統引論操作系統名稱演變第一章操作系統引論核心程序(Kernel)5監控(督)程序(系統)(Monitor)1執行系統(程序)(ExecutiveSystem(program))2控制系統(程序)(ControlSystem(program))3管理程序(Supervisor,SupervisorSystem)4操作系統(OperatingSystem)61.2.1無操作系統的計算機系統第一章操作系統引論巴貝奇(Babbage)機械式計算機(1822—)問題:計算數值表雖然未能實現,但它是首個現代架構獨立的數據與程序內存;基于操作的指令支持條件跳轉分開的I/O單元差分機實現了有限差有25,000個部件,重達15噸第一章操作系統引論運算速度:50,000指令/每秒,數萬個真空管,占地100平方米,用于精確計算彈道1.沒有程序設計語言(甚至沒有匯
編),更談不上操作系統.2.程序員提前預約一段時間,然后
到機房將他的插件板插到計算機
里.3.期盼著在接下來的時間中幾萬個
真空管不會燒斷,從而可以計算自己的題目.ENIAC計算機1、人工操作方式第一章操作系統引論1、人工操作方式硬件昂貴,人工便宜用戶獨占全機目標是更好地利用硬件當用戶在控制臺上思考的時候,計算機處于閑置狀態批量進行計算機輸入時,用戶處于等待狀態操作和編程完全由手工進行,且編輯只能用機器語言(二進制代碼)沒有保護:如果批處理程序出現了bug?問題:人—機矛盾CPU—I/O速度不匹配的矛盾Altair8080第一章操作系統引論脫機輸入/輸出技術脫機I/O方式的主要優點如下:減少了CPU的空閑時間。提高I/O速度。2、脫機輸入/輸出(Off-LineI/O)方式圖1-3脫機I/O示意圖第一章操作系統引論穿孔卡片(1940s&60s)在穿孔卡片上輸入程序(例如:一行代碼一張卡片)提交穿孔卡片盒(要確保卡片沒有搞混)幾個小時甚至幾天后才能夠得到結果1.2.2單道批處理系統第一章操作系統引論1、單道批處理系統(SimpleBatchProcessingSystem)硬件條件:晶體管替代真空管監督程序(Monitor,又稱為批處理程序,或管理程序):管理作業連續處理的程序操作步驟:收集一批作業(卡),用專用I/O計算機將作業逐個讀到磁帶上保存起來。批處理程序將磁帶上的第一個作業讀入計算機,運算結束后將結果輸出到輸出磁帶上。自動讀入下一個作業,并運行。當一批作業全部執行結束后,取下輸入磁帶和輸出磁帶,用輸入磁帶錄下一批作業,將輸出磁帶送到專用輸出計算機,進行脫機打印。第一章操作系統引論1、單道批處理系統把下一個作業的源程序轉換為目標程序源程序有錯嗎?否裝配目標程序還有下一個作業?是否停止運行目標程序是開始圖1-3單道批處理系統的處理流程第一章操作系統引論單道批處理的引入解決人機矛盾,提高系統資源的利用率。解決CPU與I/O設備速度不匹配的矛盾,提高系統吞吐量單道批處理系統的特征自動性順序性單道性2、單道批處理系統的特征第一章操作系統引論解決了作業間的自動轉換問題,減少了機器時間的浪費。不管作業大小,只要它一旦占用處理機開始執行,則它必須一直占據處理機,直到運行完畢。對短作業不公平,因為它們等待執行的時間可能遠遠超過它們實際執行的時間。交互性差。作業由批處理程序控制運行,用戶無法實時控制,如果運行中途出現故障,只能停下來,重新運行。3、單道批處理系統的評價1.2.3多道批處理系統硬件條件:小規模集成電路—360機引入目的:單道批處理系統中,任意時刻只允許一道作業在內存中運行,資源利用率低,為了提高系統資源利用率和系統吞吐量,引入多道程序設計技術。多道是指,允許多個程序同時存在于主存中,按照某種原則分派處理機,逐個執行這些程序。批處理:用戶提交的作業首先存放在外存,并排成一個隊列。然后由作業調度程序按照一定的算法從該隊列中一次選取一個或若干個作業裝入內存執行。第一章操作系統引論1、多道程序設計的基本概念OS中引入多道程序技術可帶來的好處:提高CPU的利用率提高內存和I/O設備利用率增加系統吞吐量第一章操作系統引論1、多道程序設計的基本概念用戶程序監督程序I/O操作I/O中斷請求t1結束中斷I/O完成啟動I/OI/O中斷請求結束中斷I/O完成啟動I/Ot2t3t4t5t6t7t8從黑色的實線來看CPU是斷續性運作第一章操作系統引論1、多道程序設計的基本概念程序A程序C程序B程序D調度程序AI/O請求AI/O完成A再次被調度BI/O請求CI/O請求DI/O請求程序BI/O完成CI/O完成C再次被調度A完成從黑色的實線來看CPU是持續性運作第一章操作系統引論2、多道批處理系統的特征多道性無序性調度性作業調度進程調度3、多道批處理系統的優缺點資源利用率高系統吞吐量大平均周轉時間長無交互能力適合大型科學計算、數據處理。處理機管理問題分配與回收提高利用率內存管理問題分配與回收信息保護I/O設備管理問題分配與使用提高利用率第一章操作系統引論4、多道批處理系統需要解決的問題文件管理問題方便使用保證數據的安全性與一致性作業管理問題根據作業類型進行作業組織1.2.4分時系統為了改進響應時間和性能,提供交互式操作環境,導致了分時系統的出現。人-機交互共享主機便于用戶上機分時系統,在一臺主機上連接了多個帶有顯示器和鍵盤的終端,同時允許多個用戶通過自己的終端,以交互方式使用計算機,共享主機中的資源。第一章操作系統引論1、分時系統(Time-SharingSystem)的產生及時接收多路卡:使主機能同時接收各用戶從終端上輸入的數據。緩沖區:暫存用戶鍵入的命令。及時處理作業直接進入內存不允許一個作業長時間占用處理機第一章操作系統引論2、分時系統實現中的關鍵問題多路性:一臺主機上同時連接多臺終端;獨立性:每個用戶各自通過自己的終端進行輸入/輸出,互不干擾。用戶感覺自己獨占終端和主機資源。及時性:系統按人們所能接受的等待時間及時響應用戶請求。交互性:能進行廣泛的人機交互適合辦公自動化、教學及事務處理等要求人機會話的場合。第一章操作系統引論3、分時系統的特征終端數目多少調度算法(時間片的選取)信息交換量和信息交換速度機器處理能力請求服務的時間長短及服務請求的分布第一章操作系統引論4、影響響應時間的因素1.2.5實時系統實時系統:指系統能及時(或即時)響應外部事件的請求,在規定的時間內完成對該事件的處理,并控制所有實時任務協調一致地運行。第一章操作系統引論1、應用需求實時控制火炮自動控制系統、飛機自動駕駛系統、導彈制導系統、煉鋼/煉油控制系統實時信息處理航空網絡售票系統、情報檢索系統第一章操作系統引論2、實時任務實時任務的分類:按任務執行時是否呈現周期性來劃分周期性實時任務非周期性實時任務開始截止時間——任務在某時間以前必須開始執行;完成截止時間——任務在某時間以前必須完成根據對截止時間的要求來劃分硬實時任務:系統必須滿足任務對截止時間的要求,否則可能出現難以預測的結果軟實時任務:系統對截止時間的要求并不嚴格多路性。都具有多路性。實時信息處理系統按分時原則為多個終端用戶服務。實時控制系統對多路現場信息進行采集,對多個對象或多個執行機構進行控制。獨立性。都具有獨立性。實時信息處理系統中,每個終端向實時系統提出請求時,是彼此獨立操作,互不干擾。實時控制系統中,對信息的采集和對對象的控制,也都是彼此互不干擾。第一章操作系統引論3、實時系統與分時系統特征的比較及時性。實時信息處理系統對實時性的要求與分時系統類似,是以人所能接受的等待時間來確定。實時控制系統的及時性,則是以控制對象所要求的開始截止時間或完成截止時間來確定,一般為秒級、百毫秒級、毫秒級。交互性。實時信息處理的交互性僅限于訪問系統中某些特定的專用服務程序。分時系統能向終端用戶提供數據處理服務、資源共享等服務。
可靠性。實時系統要求系統高度可靠。第一章操作系統引論3、實時系統與分時系統特征的比較第一章操作系統引論操作系統概念與特性的遷移1.2.6微機操作系統的發展只允許一個用戶上機,且只允許用戶程序作為一個任務運行。最簡單的微機操作系統:配置在8位與16位微機上典型單用戶單任務微機OS:CP/M和MS-DOSCP/M:帶軟盤系統的8位微機操作系統MS-DOS:微軟開發的16位單用戶單任務操作系統第一章操作系統引論1、單用戶單任務操作系統只允許一個用戶上機,但允許用戶把程序分為若干個任務,使它們并發執行。配置在32位微機上。典型單用戶多任務微機OS:WindowsWindows1.0與Windows2.0:16位微機Windows3.0、Windows3.1:386、486等32位微機Windows95:全32位的處理技術,兼容16位應用程序,支持網絡功能Windows98:將IE整合到系統,增加了對多媒體的支持WindowsXP:32位版本/64版本WindowsNT:網絡操作系統第一章操作系統引論2、單用戶多任務操作系統允許多個用戶通過各自的終端使用同一臺機器,共享主機系統中的各種資源;每個用戶程序又進程又可進一步分為幾個任務并發執行。配置在大、中和小型機上。典型多用戶多任務操作系統:UNIXOSSolarisOSLinuxOS第一章操作系統引論3、多用戶多任務操作系統第一章操作系統引論操作系統發展歷史小結1.3操作系統的基本特征第一章操作系統引論第一章操作系統引論現代操作系統的基本特征:共享并發異步虛擬1.3.1并發(Concurrence)并行性是指兩個或多個事件在同一時刻發生;并發性是指兩個或多個事件在同一時間間隔內發生。微觀上,在單處理機系統中,多個任務在單個處理機上交替運行稱為任務并發;多處理機系統中,多個任務在多個處理機上同時運行稱為任務并行。第一章操作系統引論1、并行與并發程序是靜態實體,不能并發執行。進程是指在系統中能獨立運行并作為資源分配的基本單位,它由一組機器指令、數據和堆棧等組成,是一個活動實體。多個進程之間可以并發執行和交換信息。進程在運行時需要一定的資源。操作系統中引入進程的目的:是使多個程序能并發執行。線程是指,程序的一次相對獨立的運行過程;在現代OS中,線程是系統調度的最小單位。第一章操作系統引論2、引入進程與線程1.3.2共享(Sharing)資源共享性:宏觀上,指多個任務可以同時使用系統資源;微觀上,指多個任務并發,即多個任務可以交替互斥地使用系統中的某個資源;資源共享方式:互斥共享方式:臨界資源(或獨占資源):規定在一段時間內只允許一個進程訪問的資源打印機、磁帶機同時訪問方式宏觀上:同時微觀上:交替訪問磁盤設備第一章操作系統引論1.3.3虛擬(Virtual)虛擬:是指通過某種技術把一個物理實體變為若干個邏輯上的對應物。如,采用分時技術,將一臺處理機虛擬為若干臺處理機。還可以虛擬存儲、虛擬設備、虛擬通道、虛擬文件、虛擬用戶組以及虛擬網絡等。第一章操作系統引論時分復用:即分時使用方式,最早用于電信業,將一條物理信道虛擬為多條邏輯信道,以提高信道的利用率。時分復用技術在計算機領域的應用:虛擬處理機技術:利用多道程序設計技術,把一臺物理上的處理機虛擬為多臺邏輯上的處理機,在每臺邏輯處理機上運行一道程序。虛擬設備技術:將一臺物理I/O設備虛擬為多臺邏輯上的I/O設備,并允許每個用戶占用一臺邏輯上的I/O設備。1、時分復用技術第一章操作系統引論頻分復用技術:將一個頻率范圍非常寬的信道,劃分成多個頻率范圍較窄的信道,其中的任何一個頻帶都只供一對用戶通話。空分復用技術在計算機領域的應用:虛擬磁盤技術:將一臺硬盤虛擬為多臺虛擬磁盤,即將硬盤劃分為若干個卷。虛擬存儲器技術:利用存儲器的空閑空間來存放其它的程序,以提高內存的利用率。通過“請求調入功能”和“置換功能”每次只把用戶程序的一部分調用內存運行,實現用戶的各部分分時進行內存運行的功能。2、空分復用技術第一章操作系統引論1.3.4異步性(Asynchronism)在多道程序環境下,允許多個進程并發執行,但由于競爭資源等因素的限制,使進程的執行不是“一氣呵成,而是以“走走停停”的方式運行。進程的異步性:進程是以人們不可預知的速度向前推進。內存中的每個進程何時獲得處理機運行;進程何時因提出某種資源請求而暫停;進程以怎樣的速度向前推進;每道程序總共需要多少時間完成,等等。只要運行環境相同,作業經過多次運行,都會獲得完全相同的結果。第一章操作系統引論1.4操作系統的主要功能第一章操作系統引論操作系統的主要任務OS的主要任務:為多道程序的運行提供良好的運行環境,以保證多道程序能有條不紊地、高效地運行。OS的功能:處理機管理存儲器管理設備管理文件管理提供用戶接口網絡服務功能第一章操作系統引論1.4.1處理機管理功能在傳統的多道程序中,處理機的分配和運行都是以進程為基本單位,對處理機的管理可歸結為對進程的管理。在引入了線程的OS中,也包含對線程的管理。處理機管理的主要功能:創建和撤消進程(線程)對諸進程(線程)的運行進行協調實現進程(線程)之間的信息交換按照一定的算法把處理機分配給進程(線程)第一章操作系統引論進程控制:創建和撤消進程以及控制進程的轉換。進程同步:為多個進程的運行進行協調。進程互斥方式進程同步方式進程通信:實現相互合作的進程間的信息交換。調度:作業調度:從后備隊列中按照一定的算法,選擇若干個作業,為它們分配其必需的資源。在將它們調入內存后,便分別為它們建立進程,使它們都成為可能獲得處理機的就緒隊列。進程調度:按一定算法從進程就緒隊列中選出一個進程,把處理機分配給它,為它設置運行現場,使之運行。第一章操作系統引論1.4.2存儲器管理功能存儲器管理的主要任務:為多道程序的并發執行提供良好的環境;便于用戶使用存儲器;提高存儲器的利用率;從邏輯上擴充內存。第一章操作系統引論第一章操作系統引論1、內存分配主要任務為每道程序分配內存空間;提高存儲器的利用率;允許正在運行的程序申請附加的內存空間,以適應程序和數據動態增漲的需要。內存分配方式靜態分配:作業裝入時確定,運行時不能更改與移動。動態分配:作業裝入時確定,運行時可以動態增漲與移動。內存分配機制具有的結構和功能內存分配數據結構內存分配功能內存回收功能2、內存保護主要任務確保每道用戶程序都只在自己的內存空間內運行,彼此互不干擾。內存保護機制設置兩個界限寄存器,存放正在執行程序的上界和下界。系統須對每條指令所要訪問的地址進行檢查,如果發生越界,則發出越界中斷請求。第一章操作系統引論可裝入程序的形成源程序目標程序可裝入程序任務將地址空間中的邏輯地址轉換為物理地址。3、地址映射編譯鏈接第一章操作系統引論任務借助于虛擬存儲技術,從邏輯上擴充內存容量讓更多的用戶程序能并發執行系統具有的內存擴充機制請求調入功能(部分裝入功能)置換功能4、內存擴充第一章操作系統引論1.4.3設備管理功能設備管理用于管理計算機系統中所有的外圍設備,主要任務有:完成用戶進程提出的I/O請求為用戶程序進程分配其所需的I/O設備;提高CPU和I/O設備的利用率;提高I/O速度;方便用戶使用I/O設備第一章操作系統引論任務用于緩解CPU和I/O設備速度不匹配的矛盾,提高CPU的利用率,提高系統吞吐量。緩沖區機制單緩沖機制雙緩沖機制公用緩沖池機制第一章操作系統引論1、緩沖管理任務根據用戶進程的I/O請求、系統的現有資源情況以及按照某種設備分配策略,為之分配其所需的設備。設備分配機制具有的結構和功能數據結構:設備控制表、控制器控制表等設備分配獨占設備分配的安全性檢查設備回收2、設備分配第一章操作系統引論設備處理程序又稱設備驅動程序。任務用于實現CPU和設備控制器之間的通信處理過程:檢查I/O請求的合法性,了解設備狀態是否是空閑,了解有關的傳遞參數及設置設備的工作方式。向設備控制器發出I/O命令,啟動I/O設備完成指定的I/O操作。響應由控制器發來的中斷請求,并根據中斷請求的類型,調用相應的中斷處理程序進行處理。3、設備處理第一章操作系統引論1.4.4文件管理功能
程序和數據都是以文件的形式存儲在磁盤和磁帶上。文件管理的任務:管理用戶文件和系統文件,以方便用戶使用管理文件的存儲空間保證文件數據的安全第一章操作系統引論任務:為每個文件分配必要的外存空間提高外存的利用率有助于提高文件系統的存、取速度。文件管理的功能:文件管理需設置相應的數據結構,記錄文件存儲空間的使用情況,以供分配存儲空間時參考。對存儲空間進行分配與回收。為了提高存儲空間的利用率,通常采用離散分配方式第一章操作系統引論1、文件存儲空間的管理文件目錄項包括:文件名文件屬性文件在磁盤上的物理位置等任務:為每個文件建立目錄項對眾多的目錄項進行有效組織,以實現按名存取。能實現文件共享。能提供快速的目錄查詢手段,提高文件的檢索速度。第一章操作系統引論2、目錄管理文件的讀寫管理根據用戶的請求,從外存讀取數據,或將數據寫入外存文件讀(寫)過程:根據用戶給出的文件名檢索文件目錄,獲取文件在外存中的位置;利用文件讀(寫)指針,對文件進行讀(寫)。一旦讀(寫)完成,便修改讀(寫)指針,為下一次讀(寫)做好準備。文件的保護防止未經核準的用戶存取文件;防止冒名頂替存取文件;防止以不正確的方式使用文件。第一章操作系統引論3、文件的讀/寫管理和保護1.4.5操作系統與用戶之間的接口
操作系統向用戶提供:用戶與操作系統的接口用戶接口:是提供給用戶使用的接口,用戶可通過該接口取得操作系統的服務。程序接口:以系統調用的形式供用戶編程時使用。幾乎各種操作系統都提供了系統調用,供程序設計。第一章操作系統引論第一章操作系統引論1、用戶接口命令接口:用戶通過命令接口向作業發出命令,控制作業的運行。聯機用戶接口:為聯機用戶提供的由一組鍵盤操作命令及命令解釋程序組成脫機用戶接口:為批處理作業的用戶提供的由一組作業控制語言JCL組成。JCL是提供給批處理作業用戶的,為實現所需功能而委托系統代為控制的一種語言第一章操作系統引論1、用戶接口圖形用戶接口:另一種形式的聯機用戶接口,采用了圖形化的操作界面,用非常容易識別的各種圖標來將系統的各項功能、各種應用程序和文件,直觀、逼真地表示出來。XeroxStar:1981最初只是一個研究項目(Alto)第一個“鼠標”、“視窗”AppleLisa/Machintosh:1984“LookandFeel”suit1988MicrosoftWindows:Win1.0-Win7(1985-)第一章操作系統引論2、程序接口程序接口是為用戶程序在執行中訪問系統資源而設置的,是用戶程序取得操作系統服務的惟一途徑。程序接口由一組系統調用組成,每一個系統調用都是一個能完成特定功能的子程序。1.5操作系統的結構設計第一章操作系統引論操作系統結構發展史第一代的OS:是無結構的第二代的OS:采用模塊式結構第三代的OS:層次式結構現代OS:微內核結構第一章操作系統引論模塊化的OS分層式OS無結構OS現代結構OS1.5.1傳統的操作系統結構OS是一組過程的集合,各過程之間可以相互調用,在操作系統內部不存在任何結構。操作系統龐大而雜亂,缺乏清晰的程序結構,造成程序錯誤多,調試困難;程序難以閱讀和理解,不方便維護。第一章操作系統引論1、無結構操作系統模塊化程序設計技術:是基于“分解”和“模塊化”原則來控制大型軟件的復雜度的。OS按其功能劃分為若干個具有一定獨立性和大小的模塊,每個模塊具有某方面的管理功能。并規定好各模塊間的接口,使各模塊之間能通過該接口實現交互,然后再進一步將各模塊細分為若干個具有一定管理功能的子模塊內聚性耦合度第一章操作系統引論2、模塊化OS結構第一章操作系統引論圖1-6模塊化操作系統結構2、模塊化OS結構模塊化OS的優點提高了OS設計的正確性、可理解性和可維護性;增強了OS的可適應性;加速了OS的開發過程。模塊化OS的缺點在開始設計OS時,對模塊的劃分及對接口的規定并不精確,而且還可能存在錯誤,因而很難保證按此規定所設計出的模塊會完全正確,這將使在把這些模塊裝配成OS時發生困難;從功能觀點來劃分模塊時,未能將共享資源和獨占資源加以區別;由于管理上的差異,又會使模塊間存在著復雜的依賴關系使OS結構變得不清晰。第一章操作系統引論2、模塊化OS結構從資源管理觀點出發,劃分層次。在某一層次上的代碼只能調用低層次上的代碼,使模塊間的調用變得有序。系統每加一層,就構成一個比原來功能更強的虛擬機。提高了系統的維護性和可靠性。分層結構的優點:易保證系統的正確性易擴充、易維護性分層結構的缺點:系統效率降低了第一章操作系統引論3、分層式OS結構被調用功能在低層:如文件系統管理->設備管理->設備驅動程序活躍功能在低層:提高運行效率資源管理的公用模塊放在最低層:如緩沖區隊列、堆棧操作存儲器管理放在次低層:便于利用虛擬存儲功能最低層的硬件抽象層:與機器特點緊密相關的軟件放在最低層。資源分配策略放在最外層,便于修改或適應不同環境第一章操作系統引論3、分層式OS結構—分層原則各系統對具體劃分多少層次有不同的看法。第一章操作系統引論*寄存器電路1計算棧、微程序解釋器指令集2過程、調用棧、顯示過程3處理器硬件中斷處理程序中斷4進程原語、信號量、就緒隊列進程原語5數據塊、設備通道本地輔存6單處理器資源段、頁虛擬存儲器7管道通信8文件文件系統9外設設備10目錄目錄11用戶進程用戶進程12外部對象用戶程序設計環境shell13功能范圍對象名稱層常見操作系統層次結構第四代OS客戶/服務器模式面向對象的程序設計技術微內核OS第一章操作系統引論1.5.2客戶/服務器模式用戶態:用來提供各種服務的服務器(進程)所在的層次內核態:處理用戶和服務器間的通信,實現與硬件緊密相關的和較基本功能的進程所在的層次內核接收用戶請求,啟動相應服務器,接著接收服務器的應答,回送給發送請求的用戶第一章操作系統引論1、C/S模式1.5.2客戶/服務器模式客戶機服務器網絡系統第一章操作系統引論2、客戶/服務器(C/S)模式的組成3、客戶/服務器之間的交互客戶請求消息服務器接收消息服務器回送消息客戶機接收消息數據的分布處理和存儲便于集中管理靈活性和可擴充性易于改編應用程序第一章操作系統引論4、客戶/服務器模式的優點5、客戶/服務器模式的缺點存在著不可靠性和瓶頸問題1.5.3面向對象的程序設計面向對象技術是基于“抽象”和“隱蔽”原則來控制大型軟件的復雜度的。對象,是指在現實世界中具有相同屬性、服從相同規則的一系列事物的抽象,而其中的具體事物稱為對象的實例。第一章操作系統引論1、面向對象技術的基本概念圖1-7一個對象的示意圖數據結構過程1過程2過程3OS中的各類實體如進程、線程、消息、存儲器等,都使用了對象這一概念。通過“重用”提高產品質量和生產率使系統具有更好的易修改性和易擴展性更易于保證系統的“正確性”和“可靠性”。第一章操作系統引論2、面向對象技術的優點1.5.4
微內核OS結構微內核(MicroKernel)OS能有效地支持多處理機運行,非常適用于分布式系統環境典型微內核結構OS:CarngieMellon大學研制的MachOS、Windows2000/XP操作系統第一章操作系統引論第一章操作系統引論第一章操作系統引論1、微內核操作系統的基本概念足夠小的內核內核:精心設計的、能實現現代OS最基本的核心功能的部分實現與硬件緊密相關的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版二年級數學下冊期末測試卷(含答案)
- 湖南省九校聯盟2025屆高三上學期第一次聯考-生物試題(含答案)
- 人教版(2019)高中化學必修第一冊第一章1.1物質的分類及轉化第一課時教案+學案+習題精煉(含答案)
- 第17課《短文兩篇》課件 2024-2025學年統編版語文七年級下冊
- 初中數學簡單的軸對稱圖形第2課時線段垂直平分線的性質課件 2024-2025學年七年級數學下冊北師大版2024
- 【核心素養】第2課《學做“快樂鳥”》第1課時《我很快樂和也有不開心的事》+公開課一等獎創新教案+素材
- 智能物流配送管理制度
- 八年級體育 教學設計 人教新課標版
- 高鉀血癥患者的護理
- 第一單元第1課《網絡發展簡述》教學設計 2023-2024學年浙教版(2020)初中信息技術八年級下冊
- 綜合執法改革試題及答案
- 藥品經營使用和質量監督管理辦法2024年宣貫培訓課件
- DZ∕T 0173-2022 大地電磁測深法技術規程(正式版)
- (完整版)供應商審核表
- 說專業(市場營銷專業)課件
- 火電廠工藝流程圖
- 以“政府績效與公眾信任”為主題撰寫一篇小論文6篇
- 水腫病患者的護理查房ppt
- 第18章生殖毒性研究
- 皮膚營養美容
- 干部個人廉潔檔案樣表.doc
評論
0/150
提交評論