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

下載本文檔

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

文檔簡介

1、Operating SystemLecture OneIntroduction to OSSchool of SoftwareNanjing University1關(guān)于操作系統(tǒng)課程2教學(xué)材料Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall, http:/WilliamS/OS/OS5e.html操作系統(tǒng)教程(第三版),孫鐘秀等,高等教育出版社,推薦學(xué)有余力的同學(xué)自行閱讀:關(guān)于MINIX,LINUX,UNIX內(nèi)核分析的書籍 3課程學(xué)習(xí)目標(biāo)明確計算機操作系統(tǒng)的作用與功能掌握操作系

2、統(tǒng)實現(xiàn)的基本原理與方法在微觀上,掌握設(shè)計實現(xiàn)各個操作系統(tǒng)模塊的方法、策略與算法在宏觀上,掌握操作系統(tǒng)的結(jié)構(gòu)和設(shè)計實現(xiàn)方法,進一步了解大型軟件系統(tǒng)的結(jié)構(gòu)和設(shè)計實現(xiàn)方法掌握并發(fā)程序設(shè)計的基本方法4操作系統(tǒng)教學(xué)內(nèi)容的三種方案講授具體操作系統(tǒng)的使用與編程電子信息類非計算機專業(yè)常用計算機專業(yè)應(yīng)具備自學(xué)該類知識的能力學(xué)院會開設(shè)此類選修課程分析操作系統(tǒng)的設(shè)計與實現(xiàn)原理計算機專業(yè)主流教學(xué)方法目標(biāo)明確,系統(tǒng)性強,基礎(chǔ)扎實,實用性顯不足分析一個小型操作系統(tǒng)的實現(xiàn)部分工科學(xué)校計算機專業(yè)采用實踐性強,系統(tǒng)性不夠,易造成以偏概全5操作系統(tǒng)課程的教學(xué)方法方法一分析操作系統(tǒng)的設(shè)計與實現(xiàn)原理鼓勵學(xué)有余力的學(xué)生自行閱讀具體操作

3、系統(tǒng)分析書籍,或設(shè)置此類選修課方法二分析一個小型操作系統(tǒng)的實現(xiàn)教師必須有較強的知識傳授把握能力,解決大多數(shù)學(xué)生編程能力不足的情況6操作系統(tǒng)課程的教學(xué)原則用系統(tǒng)的觀點、全局的觀點、整體的觀點來看待操作系統(tǒng)的實現(xiàn)理解軟硬件協(xié)同解決問題的方法理解分而治之、分層實現(xiàn)在復(fù)雜軟件系統(tǒng)實現(xiàn)中的重要作用用工程師的立場來看待操作系統(tǒng)的實現(xiàn)理解文化在操作系統(tǒng)實現(xiàn)中的重要作用7本主題教學(xué)目標(biāo)8本主題教學(xué)目標(biāo)了解操作系統(tǒng)的主要類型和主流產(chǎn)品掌握什么是操作系統(tǒng)掌握操作系統(tǒng)管理的資源掌握操作系統(tǒng)的用戶接口了解計算機系統(tǒng)的組成和具體計算的實施過程了解計算機操作方式及其演化過程掌握多道程序設(shè)計的概念與應(yīng)用了解操作系統(tǒng)的主要成

4、就了解操作系統(tǒng)的分類與發(fā)展了解操作系統(tǒng)課程的學(xué)習(xí)方法 9你知道哪些操作系統(tǒng)?10工業(yè)化的硬件與OS產(chǎn)品IBM巨型機/大型機/中型機/小型機1980年CRAY巨型機DEC小型機蘇聯(lián)法語世界MAC微型機獨立發(fā)展的UNIXIBM PCPC DOSPS2/OS2PC與開放結(jié)構(gòu)MS-DOS/MS-WINDOWSINTELHP/DELLHP/DEC /COMPAQSUN小型機服務(wù)器HP/DELLHP/DEC /COMPAQUNIXIBM各種硬件大型機巨型機IBM機群UNIX/專用各種硬件11OS Examples Dos & Windows Unix & Solaris & Linux OS provid

5、ed by IBM Macintosh Netware 12DOSDOS:單用戶單任務(wù)的微機操作系統(tǒng)DOS的歷史:始于1981年的1.0版,至1994年的最后版本DOS 6.22DOS的主要功能有:命令處理、文件管理、設(shè)備管理、及簡單的CPU調(diào)度和內(nèi)存管理DOS的主要特點:系統(tǒng)開銷小,運行效率高,適用于微型機DOS的主要缺點:無法發(fā)揮硬件能力,缺乏對數(shù)據(jù)庫、網(wǎng)絡(luò)通信的支持,沒有通用的應(yīng)用程序接口,用戶界面不友善13Windows操作系統(tǒng)Xerox公司的圖形用戶接口(GUI)系統(tǒng)Apple公司的Lisa和Macintosh85年推出Windows 1.0, 87年推出Windows 2.090年

6、推出Windows 3.0, 92年推出Windows 3.193年推出Windows NT 3.1, 94年3.5, 96年4.095年推出Windows 95, 98年推出Windows 982000年推出Windows 20002000年推出Windows MeWindows XP/2003Windows Vista, 2005年14Windows早期版本的技術(shù)特點(1) 依賴于DOS操作系統(tǒng)(2) 友好、直觀、高效的面向?qū)ο蟮膱D形用戶界面(3)豐富的與設(shè)備無關(guān)的圖形操作(4)多任務(wù)的操作環(huán)境(5)實現(xiàn)了虛擬內(nèi)存管理,突破640KB限制(6)提供各種系統(tǒng)管理工具(7)允許裝入和運行DOS

7、下開發(fā)的程序(8)提供數(shù)據(jù)庫接口、網(wǎng)絡(luò)通信接口,ODBC, Winsock(9)豐富的軟件開發(fā)工具, Visual C+, SQL Server(10)面向?qū)ο蟮某绦蛟O(shè)計思想, MFC,COM組件15Windows95/98的技術(shù)特點獨立的32位操作系統(tǒng),同時能運行16位程序真正的多任務(wù)操作系統(tǒng),在32位的方式下具有搶先多任務(wù)能力即插即用和電源管理支持新的硬件配置具有內(nèi)置的網(wǎng)絡(luò)功能,直接支持聯(lián)網(wǎng)和網(wǎng)絡(luò)通信,并提供對Internet的訪問工具 新的圖形界面,更加高級的多媒體支持支持FAT32文件系統(tǒng)16Windows NT的技術(shù)特點(1) 支持對稱多處理(SMP)和多線程(2) 支持搶先的可重入

8、多任務(wù)處理(3) 32位頁式授權(quán)虛擬存儲管理(4) 支持多種API,提供源碼級兼容性(5) 支持多種可裝卸文件系統(tǒng)(6) 具有各種容錯功能,C2安全級(7) 可移植性好(8) 集成網(wǎng)絡(luò)計算(9) 能與Microsoft SQL Server結(jié)合,提供基于C/S、B/S架構(gòu)的數(shù)據(jù)庫應(yīng)用系統(tǒng)的最好組合 17Windows 2000/XPServersProfessional2CPU, 4GAdvanced Server8CPU, 8GServer4CPU, 4GDatacenter Server32CPU, 64GWorkstation18Windows 2000/XP技術(shù)特征Provides f

9、ull multitasking in a single-user environmentClient/Server computingThreads and SMPModified microkernel architecture to Client/Server Model19設(shè)備驅(qū)動Windows執(zhí)行體窗口和圖形系統(tǒng)對象管理即插即用管理器電源管理安全引用監(jiān)控器虛存進程和線程配置管理器本地過程調(diào)用文件系統(tǒng)內(nèi)核硬件抽象層特殊系統(tǒng)支持進程服務(wù)進程用戶應(yīng)用程序環(huán)境子系統(tǒng)20Unix美國電報電話公司 (AT&T)的貝爾實驗室于1969年在DEC公司的小型系列機PDP-7上開發(fā)成功73年開發(fā)出C語言

10、并改寫Unix,從而使得Unix具有高度易讀性、可移植性,為迅速推廣和普及走出了決定性的一步74年7月,”Unix分時系統(tǒng)”一文在美國權(quán)威雜志CACM上發(fā)表,引起了廣泛注意75年發(fā)布的Unix第6版是最早可獲得的Unix78年的Unix第7版,可以看作當(dāng)今Unix的祖先,該版為Unix走進商界奠定了基礎(chǔ)。21UnixUnix商業(yè)版本的出現(xiàn)源于1977年的IS/1 AT&T:81年的System ,83年的System,84年的SVR2,87年的SVR3 78年起,SCO Unix和Microsoft的XENIXXENIX與AT&T Unix在使用標(biāo)準(zhǔn)上會合于SVR3.2Unix BSD:78年

11、的1BSD和2BSD、79年3BSD、80年之后的4/4.1/4.2/4.3/4.4BSD4BSD的商業(yè)代表Sun OS及其SolarisSun OS和SVR3.2在使用標(biāo)準(zhǔn)上會合于SVR4.0 22UnixUnix取得成功的最重要原因是系統(tǒng)的開放性,公開源代碼,用戶可以方便地向Unix系統(tǒng)中逐步添加新功能和工具,從而使得Unix越來越完善,成為有效的程序開發(fā)支撐平臺Unix是目前唯一可以安裝和運行在從微型機、工作站直到大型機和巨型機上的操作系統(tǒng) 23UNIX Architecture24Unix(1) Unix的結(jié)構(gòu)分核心部分和應(yīng)用子系統(tǒng),便于做成開放系統(tǒng)(2) 分層可裝卸卷的文件系統(tǒng),提供

12、文件保護功能(3) 提供I/O緩沖技術(shù),系統(tǒng)效率高(4) 剝奪式動態(tài)優(yōu)先的CPU調(diào)度,支持分時操作(5) 命令語言豐富齊全(6) 具有強大的網(wǎng)絡(luò)與通信功能(7) 支持多用戶、多任務(wù)(8) 請求分頁式虛擬存儲管理25Modern Unix Systems實際上Unix已不是指一個具體操作系統(tǒng),許多公司和大學(xué)都推出了自己的Unix系統(tǒng)AT&T的SVR ,SUN的Solaris,Berkeley的Unix BSD ,DEC的Digital Unix(并入Compaq稱Tru64 Unix),HP的HP UX,SGI的Irix,CMU的Mach,SCO公司的SCO UnixWare, IBM的AIXU

13、nix的國際標(biāo)準(zhǔn)POSIXIEEE擬定了一個Unix標(biāo)準(zhǔn),稱作POSIX POSIX定義了相互兼容的Unix系統(tǒng)必須支持的最少系統(tǒng)調(diào)用接口。該標(biāo)準(zhǔn)已被多數(shù)Unix支持其他一些操作系統(tǒng)也在支持POSIX標(biāo)準(zhǔn)。26SolarisSUN Microsystem公司開發(fā)的Solaris是具有完全對稱多處理和多線程支持的32位分布式計算環(huán)境的Unix操作系統(tǒng)變種 Solaris2.x基于SPARC和Intel平臺,是一個可移植操作系統(tǒng),可移植到任何新的主流平臺上SUN公司推出64位操作系統(tǒng)Solaris2.7和2.8,在網(wǎng)絡(luò)特性、可靠性、兼容性、互操作性、易于配置和管理方面均有很好改進27SUN NFS

14、SUN NFS(Network File System)是1984年推出的一個網(wǎng)絡(luò)文件系統(tǒng)產(chǎn)品NFS提供了在異種機、異種操作系統(tǒng)的網(wǎng)絡(luò)環(huán)境下共享文件的簡單有效的方法NFS基于C/S模式實現(xiàn),使用UDP協(xié)議和RPC(Remote Procedure Call)機制NFS的主要特點有:提供透明的文件訪問和文件傳送,用戶使用本地或遠程的文件沒有區(qū)別,真正實現(xiàn)了分布式數(shù)據(jù)處理易于擴充新的資源,不需改變現(xiàn)有工作環(huán)境性能高、可靠性好、具有可伸縮性28MINIXMinix是荷蘭計算機教授Tanenbaum開發(fā)的一個與Unix兼容,然而內(nèi)核全新的操作系統(tǒng),它非常簡潔,短小,故稱MinixMinix用C編寫,可

15、讀性好,學(xué)生可以通過它來剖析一個操作系統(tǒng),研究其內(nèi)部如何運作Minix具有多任務(wù)處理能力,支持TCP/IP Minix版權(quán)屬于Prentice Hall,可免費下載用于教學(xué)http:/www.cs.vu.nl/ast/29自由軟件與Linux70年代后期起很多軟件不再提供源碼,使用戶無法修改軟件中的錯誤,使用尤為不便。為此在1984年,Stallman啟動了GNU計劃,并成立了自由軟件基金會自由軟件(Free Software or Freeware)是指遵循通用公共許可證GPL(General public License)規(guī)則,保證您有使用上的自由、獲得源程序的自由,可以自己修改的自由,可

16、以復(fù)制和推廣的自由,也可以有收費的自由的一種軟件30自由軟件與LinuxGNU的含義是GNU is not Unix的意思,由Richard stallman指導(dǎo)并啟動的一個組織Stallman先生通過GNU推出一套和Unix兼容,但同時又是自由軟件的Unix系統(tǒng),GNU 完成了大部分外圍工作,包括gcc/ gcc+, shell等現(xiàn)在GNU的所有工作在繼續(xù)向前發(fā)展。目前人們熟悉的一些軟件如C+編譯器、Objective C、FORTRAN77、C 庫、BSD email、BIND、Perl、Apache、TCP/IP、IP accounting、HTTP server、Lynx Web都是自

17、由軟件的經(jīng)典之作31LinuxLinux是由芬蘭藉科學(xué)家Linus Torvalds于1991年編寫完成的一個操作系統(tǒng)內(nèi)核,當(dāng)時他還是芬蘭赫爾辛基大學(xué)計算機系的學(xué)生,在學(xué)習(xí)操作系統(tǒng)課程中,自己動手編寫了一個操作系統(tǒng)原型,并把這個系統(tǒng)放在Internet上,允許自由下載許多人對這個系統(tǒng)進行改進、擴充、完善,Linux由最初一個人寫的原型變化成在Internet上由無數(shù)志同道合的程序高手參與的一場運動32Linux(1) 繼承了Unix的優(yōu)點,又有了許多更好的改進(2) 通用的操作系統(tǒng),可作為Internet服務(wù)器、網(wǎng)關(guān)路由器、文件和打印服務(wù)器、個人使用(3) 內(nèi)置通信聯(lián)網(wǎng)功能,可讓異種機聯(lián)網(wǎng)(4

18、) 開放的源代碼,有利于發(fā)展各種操作系統(tǒng)(5) 符合POSIX標(biāo)準(zhǔn),各種Unix應(yīng)用可方便地移植(6) 提供龐大的管理功能和遠程管理功能(7) 支持大量外部設(shè)備(8) 支持32種文件系統(tǒng)(9) 提供GUI,有多種窗口管理器(10) 支持并行處理/實時處理,充分發(fā)揮硬件性能(11)可自由獲得源代碼,開發(fā)軟件成本低33IBM系列操作系統(tǒng)IBM:國際商業(yè)機器公司IBM操作系統(tǒng)的發(fā)展歷程目前IBM的主要操作系統(tǒng)RS/6000系列服務(wù)器及SP結(jié)點群集計算機,運行AIX操作系統(tǒng) S/390企業(yè)級服務(wù)器,運行OS/390、VM和DOS/VSE操作系統(tǒng)AS/400服務(wù)器運行OS/400操作系統(tǒng)PC機等運行Wi

19、ndows/OS2/DOS等操作系統(tǒng)34AIXAIX(Advanced Interactive executive, AIX)操作系統(tǒng),于1990年推出的,最新版本是AIX 5L運行在IBM RS/6000系列服務(wù)器及其IBM高端子產(chǎn)品線SP服務(wù)器集群產(chǎn)品上 AIX是一個超強重負載Unix操作系統(tǒng),具有可伸縮性、高安全性、高可靠性的軟實時操作系統(tǒng),可以全年不停機工作AIX提供了一個安全的圖形化界面的多用戶環(huán)境,支持多線程、動態(tài)裝卸設(shè)備驅(qū)動程序、網(wǎng)絡(luò)特性出色、管理工具多樣,支持各種語言、商用Unix軟件大都可在其上運行35OS/390, VM, and DOS/VSE目前全世界商用數(shù)據(jù)處理70%

20、以上都運行S/390企業(yè)級服務(wù)器最新一代S/390 G6是世界上第一個使用銅質(zhì)互聯(lián)芯片技術(shù)的企業(yè)級服務(wù)器OS/390前身是MVS (多虛擬存儲),1996年IBM宣布OS390 1.1版,1998年IBM宣布OS/390 2.5版,目前最新版本是OS/390 2.7版S/390 上還可以運行VM和DOS/VSE操作系統(tǒng)00年12月推出的IBM z900系列大型主機,01年3月發(fā)布了OS/390操作系統(tǒng)的更新版zOS 36OS/390,VM, and DOS/VSEOS/390有幾種不同的運行方式:S/370模式支持原S/370下運行的程序;MVS/ESA390(Enterprise Syste

21、m Architecture,ESA)模式可支持10個240MB內(nèi)存和256個通道的多處理器系統(tǒng)ESA/390LPAR模式:可把系統(tǒng)從邏輯上分成(Logical Partitioning)最多十個部分,有些多CPU型號甚至可分成20個LPAR,每個部分有自己的CPU、內(nèi)存和通道,且分別運行不同操作系統(tǒng)也可以運行IBM虛擬機操作系統(tǒng)VM和虛存擴充操作系統(tǒng)DOS/VSE37OS/400AS/400服務(wù)器是IBM開發(fā)的中型商用機器,AS/400上配置OS/400操作系統(tǒng),在硬件之上自底向上共設(shè)置了四層軟件:許可證內(nèi)部代碼(Licensed Internal Code, LIC) 是由IBM提供,并在

22、提交系統(tǒng)之前預(yù)先安裝在AS/400上的一組用戶不可見指令,用戶程序需經(jīng)硬件自動轉(zhuǎn)換成LIC才能被CPU執(zhí)行OS/400主要提供以下功能:控制語言和菜單、系統(tǒng)操作員服務(wù)、程序員服務(wù)、工作管理、設(shè)備管理、數(shù)據(jù)管理、消息處理、通信和安全性保證程序設(shè)計支持層提供C、C+、Cobol、RPG、Java應(yīng)用支持層提供網(wǎng)絡(luò)管理、工業(yè)應(yīng)用、數(shù)控庫和系統(tǒng)管理服務(wù)38OS/2采用圖形化用戶接口,操作直觀方便可以在16位和32位兩種CPU上工作使用虛存可擴充到4GB引入會話、進程、線程的概念,實現(xiàn)多任務(wù)控制提供高性能文件系統(tǒng),采用長文件名和擴展文件屬性提供應(yīng)用程序設(shè)計接口,可以支持多任務(wù)、多線程和動態(tài)連接。具有和M

23、S-DOS的向上兼容性,MS-DOS的文件可在OS/2下讀寫39Mac OS美國Apple公司推出,運行在Macintosh計算機上MAC OS是較早的圖形化界面的操作系統(tǒng),由于擁有全新的窗口系統(tǒng)、強有力的多媒體開發(fā)工具和操作簡便的網(wǎng)絡(luò)結(jié)構(gòu)而風(fēng)光一時Mac OS操作系統(tǒng)的主要特點: 采用面向?qū)ο蠹夹g(shù) 全圖形化界面 虛擬存儲管理技術(shù) 應(yīng)用程序間的相互通信 強有力的多媒體功能 簡便的分布式網(wǎng)絡(luò)支持 豐富的應(yīng)用軟件40NetwareNetware是Novell公司開發(fā)的網(wǎng)絡(luò)操作系統(tǒng)Netware具有高性能文件系統(tǒng)、支持DOS、OS/2、MAC、及Unix文件格式Netware具有三級容錯,可靠性高;

24、安全保密性好,具有開放性,提供開放的開發(fā)環(huán)境41操作系統(tǒng)及其功能42What is Operating SystemOperating System is a program that is executed in the computer hardware. (just as ordinary software)A program that controls the execution of application programsA program that manages the resources of computer systemAn interface between appli

25、cations and hardware操作系統(tǒng)是計算機系統(tǒng)最基礎(chǔ)的系統(tǒng)軟件,它管理軟硬件資源、控制程序執(zhí)行,改善人機界面,合理組織計算機工作流程,為用戶使用計算機提供良好運行環(huán)境43Operating System ObjectivesConvenienceMakes the computer more convenient to useEfficiencyAllows computer system resources to be used in an efficient mannerAbility to evolvePermit effective development, testin

26、g, and introduction of new system functions without interfering with service44The OS as a User/Computer InterfaceServices Provided by the OS(1) Program creation: such as editors and debuggers(2) Program execution(3) Access to I/O devices(4) Controlled access to files(5) System access(6) Error detect

27、ion and responseInternal/external hardware errors(memory,device)software errors (arithmetic overflow,access forbidden memory locations)(7) Accounting45操作系統(tǒng)的用戶接口程序接口系統(tǒng)調(diào)用(System Call) 由操作系統(tǒng)實現(xiàn)的完成某種特定功能的過程;它是程序與操作系統(tǒng)的接口操作接口系統(tǒng)程序(System Program) 操作系統(tǒng)為用戶提供的解決使用計算機和計算共性問題的所有服務(wù)的集合;它可以看作是操作系統(tǒng)提供給用戶的功能級接口46系統(tǒng)調(diào)用的

28、實現(xiàn)陷入處理機制(異常處理機制):操作系統(tǒng)中為控制和實現(xiàn)系統(tǒng)調(diào)用的機制由于系統(tǒng)調(diào)用而引起處理器中斷的指令稱訪管指令(Supervisor) ,陷入指令(Trap) 或異常中斷指令(Interrupt) 每個系統(tǒng)調(diào)用都事先規(guī)定了編號,還附帶有傳遞給內(nèi)部處理程序的參數(shù)47系統(tǒng)調(diào)用的實現(xiàn)要點編寫系統(tǒng)調(diào)用處理程序設(shè)計一張系統(tǒng)調(diào)用入口地址表,每個入口地址指向一個系統(tǒng)調(diào)用的處理程序,有的系統(tǒng)還包含系統(tǒng)調(diào)用自帶參數(shù)的個數(shù)陷入處理機制需開辟現(xiàn)場保護區(qū),以保存發(fā)生系統(tǒng)調(diào)用時的處理器現(xiàn)場48系統(tǒng)調(diào)用的實現(xiàn)過程System Call用戶程序A0SUB0SUB1SUBiSUBnA1AiAn系統(tǒng)調(diào)用處理子程序取系統(tǒng)功能

29、號找入口地址表相應(yīng)入口地址結(jié)束處理恢復(fù)現(xiàn)場入口地址表A0A1AiAn保護CPU現(xiàn)場系統(tǒng)調(diào)用陷入機構(gòu)陷入指令49系統(tǒng)調(diào)用與函數(shù)調(diào)用調(diào)用形式:過程(函數(shù)) 使用一般調(diào)用指令,其轉(zhuǎn)向地址是固定不變的,包含在跳轉(zhuǎn)語句中系統(tǒng)調(diào)用中不包含處理程序入口,而僅僅提供功能號,按功能號調(diào)用被調(diào)用代碼的位置:過程(函數(shù)) 調(diào)用是一種靜態(tài)調(diào)用,程序和被調(diào)代碼在同一程序內(nèi),經(jīng)過連接編輯后作為目標(biāo)代碼的一部份;當(dāng)過程(函數(shù)) 升級或修改時,必須重新編譯連接系統(tǒng)調(diào)用是一種動態(tài)調(diào)用,系統(tǒng)調(diào)用的處理代碼在調(diào)用程序之外(在操作系統(tǒng)中) ,系統(tǒng)調(diào)用處理代碼升級或修改時,與調(diào)用程序無關(guān)50系統(tǒng)調(diào)用與函數(shù)調(diào)用提供方式:過程(函數(shù)) 往

30、往由編譯系統(tǒng)提供,不同編譯系統(tǒng)提供的過程(函數(shù)) 可以不同系統(tǒng)調(diào)用由操作系統(tǒng)提供,一旦操作系統(tǒng)設(shè)計好,系統(tǒng)調(diào)用的功能、種類與數(shù)量便固定不變了調(diào)用的實現(xiàn):程序使用一般機器指令轉(zhuǎn)子指令來調(diào)用過程(函數(shù)) ,是在用戶態(tài)運行的程序執(zhí)行系統(tǒng)調(diào)用,是通過中斷機構(gòu)來實現(xiàn),需要從用戶態(tài)轉(zhuǎn)變到核心態(tài),在管理狀態(tài)下運行51操作接口-系統(tǒng)程序操作系統(tǒng)提供了兩個作業(yè)級的接口:脫機作業(yè)控制方式聯(lián)機作業(yè)控制方式脫機作業(yè)控制接口作業(yè)控制語言聯(lián)機作業(yè)控制接口操作控制命令 命令行方式 批命令方式 圖形化方式52命令解釋程序命令解釋程序:接受和執(zhí)行一條用戶提出的對作業(yè)的加工處理要求當(dāng)一個新的批作業(yè)被啟動,或新的交互型用戶登錄進系

31、統(tǒng)時,系統(tǒng)就自動地執(zhí)行命令解釋程序,它負責(zé)讀入控制卡或命令行,并作出相應(yīng)解釋和執(zhí)行自帶命令處理代碼的命令解釋程序不帶命令處理代碼的命令解釋程序53命令解釋程序的處理過程操作系統(tǒng)做完準(zhǔn)備工作后便啟動命令解釋程序,它輸出命令提示符,等待鍵盤中斷到來每當(dāng)用戶打入一條命令(暫存在命令緩沖區(qū))并按回車換行時,申請鍵盤中斷CPU響應(yīng)后,將控制權(quán)交給命令解釋程序,接著讀入命令緩沖區(qū)內(nèi)容,分析命令、接受參數(shù)。若為簡單命令立即轉(zhuǎn)向命令處理代碼執(zhí)行;否則查找命令處理文件,裝入主存,傳遞參數(shù),將控制權(quán)交給其執(zhí)行命令處理結(jié)束后,再次輸出命令提示符,等待下一條命令54The OS as Resources Manage

32、rTypes of resourcesHardware resource: processor,memory,deviceInformation resource: data, programWays of sharing resources: Sequential sharingConcurrent sharingStrategies of resource allocationStatic allocation: Partitioning of resources to allocateDynamic allocation: Allocation resources from a pool

33、Resource preempting: forceful deallocation of a sequential sharing resource5556Evolution of an Operating SystemHardware upgrades and new types of hardwareNew servicesFixes57OS在計算機系統(tǒng)中的定位58計算機系統(tǒng)的視圖計算機系統(tǒng):普通用戶的視圖計算機系統(tǒng)的普通使用者計算機硬件系統(tǒng) + 附加的外圍設(shè)備操作系統(tǒng)與實用程序程序設(shè)計語言工具軟件應(yīng)用軟件59語言處理程序高級語言計算機系統(tǒng)的視圖計算機系統(tǒng):程序員的視圖程序員工具軟件計算

34、機硬件系統(tǒng)機器指令數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫語言擴展機器指令操作系統(tǒng)與實用程序60計算機系統(tǒng)的視圖計算機系統(tǒng):軟件系統(tǒng)開發(fā)的視圖需求調(diào)查分析設(shè)計與建模分析設(shè)計工具開發(fā)與實現(xiàn)編程語言系統(tǒng)運行可執(zhí)行代碼數(shù)據(jù)庫管理系統(tǒng)操作系統(tǒng)61軟件開發(fā)的不同層次計算機硬件系統(tǒng):機器語言操作系統(tǒng)之資源管理:機器語言+廣義指令(擴充了硬件資源管理)操作系統(tǒng)之文件系統(tǒng):機器語言+系統(tǒng)調(diào)用(擴充了信息資源管理)數(shù)據(jù)庫管理系統(tǒng):+數(shù)據(jù)庫語言(擴充了功能更強的信息資源管理)語言處理程序:面向問題的語言62系統(tǒng)軟件平臺高級語言源程序匯編語言源程序轉(zhuǎn)換程序高級語言源程序編譯程序目標(biāo)代碼程序匯編程序解釋程序連接程序可執(zhí)行程序裝入程序內(nèi)存

35、執(zhí)行程序數(shù)據(jù)庫管理系統(tǒng)進程管理內(nèi)存管理文件系統(tǒng)設(shè)備管理操作系統(tǒng)63系統(tǒng)軟件平臺Operating System (操作系統(tǒng)OS)Data Base Management System (數(shù)據(jù)庫管理系統(tǒng)DBMS)語言處理程序編譯程序Compiler解釋程序Interpreter匯編程序Assembler64如何來操作計算機?65Evolution of Operating SystemsSerial ProcessingSimple Batch SystemsMulti-programmed Batch SystemsTime-Sharing Systems66Serial Processing

36、No operating systemMachines run from a console with display lights and toggle switches, input device, and printerSchedule: one by oneSetup: included loading the compiler, source program, saving compiled program, loading and linking, and executing target program67機器語言與機器指令機器指令面向目標(biāo)機器,最終可執(zhí)行機器指令格式: 編制機器

37、指令程序:機器指令的序列機器指令程序裝入內(nèi)存指定起始指令,運行程序處理器自動執(zhí)行程序68計算機的手工操作方式開關(guān)表示,按鈕控制,亮燈顯示開關(guān)置內(nèi)存地址,按裝入地址按鈕開關(guān)置程序始址,按運行按鈕開關(guān)置機器指令,按裝入數(shù)據(jù)按鈕69裝入程序的引進裝入程序(Loader)自動化執(zhí)行程序裝入,必要時進行地址轉(zhuǎn)換通常存放在ROM中機器語言程序裝入程序內(nèi)存儲器70匯編語言匯編語言:機器語言的符號化匯編語句形式:符號化的字符串匯編語句格式: LABEL ,匯編語言源程序:匯編語句的序列匯編程序面向目標(biāo)機器,經(jīng)匯編后方可執(zhí)行71引入?yún)R編語言后的計算機控制匯編過程和程序執(zhí)行匯編程序目標(biāo)代碼計算機匯編語言程序目標(biāo)代

38、碼運行結(jié)果計算機數(shù)據(jù)72Evolution of Operating SystemsSerial ProcessingSimple Batch SystemsMulti-programmed Batch SystemsTime-Sharing Systems73Simple Batch Systems第二代計算機的出現(xiàn),手工操作的效率問題日益突出簡單批處理系統(tǒng)成批控制程序的執(zhí)行與輸入輸出作業(yè)控制卡與作業(yè)控制語言資源管理程序和磁帶文件系統(tǒng)的引入分類聯(lián)機批處理系統(tǒng)脫機批處理系統(tǒng)74MonitorsSoftware that controls the running programsBatch jo

39、bs togetherProgram branches back to monitor when finishedResident monitor is in main memory and available for executionBoundaryInterrupt ProcessingDevice DriversJob SequencingControl LanguageInterpreterUserProgramAreaMonitorResident monitor (常駐監(jiān)控程序)中斷處理設(shè)備驅(qū)動程序作業(yè)序列控制語言解釋器用戶程序區(qū)域75Job Control Language (

40、JCL)Special type of programming languageProvides instruction to the monitorwhat compiler to usewhat data to use$JOB$FTN$LOAD$RUN$ENDFORTRAN instructionsData76Hardware FeaturesMemory protectiondo not allow the memory area containing the monitor to be alteredTimerprevents a job from monopolizing the s

41、ystemPrivileged instructionsCertain instructions are designated privileged and can be executed only by the monitorinterrupts77Evolution of Operating SystemsSerial ProcessingSimple Batch SystemsMulti-programmed Batch SystemsTime-Sharing Systems78操作系統(tǒng)出現(xiàn)前的問題計算機硬件性能的不斷提高導(dǎo)致CPU速度與I/O速度不匹配的矛盾日益突出只有讓多道程序同時進

42、入內(nèi)存爭搶CPU運行才能夠使得CPU和外圍設(shè)備充分并行,從而提高計算機系統(tǒng)的使用效率79Uni-programmingUni-programming: Processor must wait for I/O instruction to complete before precedingMulti-programming: When one job needs to wait for I/O, the processor can switch to the other job80Multi-programming單道算題工作78輸入機處理器磁帶機130150228280300378430450

43、時 間處理器利用率:52/(78+52+20)35%989881Multi-programming 兩道程序同時工作處理器利用率: (52+42)/(78+52+20)63%78輸入機處理器磁帶機130150228280300378430450時 間磁帶機打印機206217032082Multi-programming 甲、乙兩道程序獨占計算機單道運行時均需1小時,其中占用CPU時間18分鐘,CPU利用率為30按多道程序設(shè)計方法同時運行,CPU利用率達50,由于要提供36分鐘的CPU時間,大約要運行72分鐘。考慮到OS調(diào)度開銷,實際花費的時間可能還要長些,如80分鐘就處理兩道作業(yè)而言,提高效率

44、(120-80)/120=33就單道作業(yè)而言,延長執(zhí)行時間20分鐘,即延長了(80-60)/60=33的時間83Multi-programming 多道程序設(shè)計是指讓多個程序同時進入計算機的主存儲器進行計算多道程序設(shè)計的特點 CPU與外部設(shè)備充分并行 外部設(shè)備之間充分并行 發(fā)揮CPU的使用效率 提高單位時間的算題量缺點: 延長了作業(yè)的周轉(zhuǎn)時間84Multi-programming 處理器的管理和調(diào)度 主存儲器的管理和調(diào)度 其他資源的管理和調(diào)度85多道程序系統(tǒng)的實現(xiàn)要點如何使用資源:調(diào)用操作系統(tǒng)提供的服務(wù)例程(如何陷入操作系統(tǒng))如何復(fù)用CPU:調(diào)度程序(在CPU空閑時讓其他程序運行)如何使CPU

45、與I/O設(shè)備充分并行:通道(一種獨立控制設(shè)備進行I/O的專用處理器)如何讓正在運行的程序讓出CPU:中斷(中斷正在執(zhí)行的程序,讓操作系統(tǒng)處理突發(fā)事件)86操作系統(tǒng)出現(xiàn)前的問題通過程序來控制內(nèi)存中多道程序的執(zhí)行在理論上是可行的調(diào)度程序:必須引入調(diào)度功能程序切換和中斷:占有CPU運行的程序可以被打斷,且在以后適當(dāng)時候能夠被恢復(fù)運行資源分配與保護效率是導(dǎo)致管理程序不能全自動控制計算機系統(tǒng)運行的根本原因磁盤的出現(xiàn):操作系統(tǒng)出現(xiàn)的基礎(chǔ)87操作系統(tǒng)的形成磁盤的出現(xiàn)為操作系統(tǒng)形成奠定了基礎(chǔ)操作系統(tǒng)給資源管理和操作自動化帶來了革命性的變化:實現(xiàn)了計算機操作過程的自動化資源管理水平有了很大提高提供虛存管理功能支

46、持分時操作文件管理功能有改進,數(shù)據(jù)庫系統(tǒng)出現(xiàn)多道程序設(shè)計趨于完善88Evolution of Operating SystemsSerial ProcessingSimple Batch SystemsMulti-programmed Batch SystemsTime-Sharing Systems89Time SharingUsing multiprogramming to handle multiple interactive jobsProcessors time is shared among multiple usersMultiple users simultaneously a

47、ccess the system through terminals90Batch Multiprogramming versus Time Sharing Batch Multiprogramming Time Sharing Principal objective Maximize processor use Minimize response time Source of directives to operating system Job control language commands provided with the job Commands entered at the te

48、rminal 91JOB1: 15000 JOB2: 20000JOB3: 5000 JOB4: 1000092操作系統(tǒng)的主要成就93Major AchievementsProcessesMemory ManagementInformation protection and securityScheduling and resource managementSystem structure94ProcessesA program in executionAn instance of a program running on a computerThe entity that can be as

49、signed to and executed on a processorA unit of activity characterized by a single sequential thread of execution, a current state, and an associated set of system resources95Difficulties with Designing Concurrent SoftwareImproper synchronizationFailed mutual exclusionNondeterminate program operation

50、Deadlocks96ProcessConsists of three componentsAn executable programAssociated data needed by the programExecution context of the program (All information the operating system needs to manage the process)97Major AchievementsProcessesMemory ManagementInformation protection and securityScheduling and r

51、esource managementSystem structure98Memory ManagementProcess isolationAutomatic allocation and managementSupport for modular programmingProtection and access controlLong-term storage99File SystemImplements long-term storeInformation stored in named objects called files100Virtual MemoryAllows program

52、mers to address memory from a logical point of viewWhile one process is written out to secondary store and the successor process read in there in no hiatus101PagingAllows process to be comprised of a number of fixed-size blocks, called pagesVirtual address is a page number and an offset within the p

53、ageEach page may be located any where in main memoryReal address or physical address in main memory102103Virtual Memory Addressing104Major AchievementsProcessesMemory ManagementInformation protection and securityScheduling and resource managementSystem structure105Information Protection and Security

54、AvailabilityProtecting the system against interruptionConfidentialityAssures that users cannot read data for which access is unauthorizedData integrityProtection of data from unauthorized modificationAuthenticity: The Proper verification of the identity of users and the validity of messages or data1

55、06Major AchievementsProcessesMemory ManagementInformation protection and securityScheduling and resource managementSystem structure107Scheduling and Resource ManagementFairnessgive equal and fair access to all processesDifferential responsivenessdiscriminate between different classes of jobsEfficien

56、cymaximize throughput, minimize response time, and accommodate as many uses as possible108Major Elements of Operating System109Major AchievementsProcessesMemory ManagementInformation protection and securityScheduling and resource managementSystem structure110System StructureView the system as a seri

57、es of levelsEach level performs a related subset of functionsEach level relies on the next lower level to perform more primitive functionsThis decomposes a problem into a number of more manageable subproblems111Operating System Design HierarchyLevelNameObjectsExample Operations4InterruptsInterrupt-h

58、andlingInvoke, mask, unmask, retryprogramsProceduresProcedures, call stack, Mark stack, call, returndisplay2Instruction SetEvaluation stack, micro-Load, store, add, subtractprogram interpreter,branchscalar and array data1Electronic circuitsRegisters, gates, buses,Clear, transfer, activate,plement112

59、Operating System Design HierarchyLevelNameObjectsExample Operations7Virtual MemorySegments, pagesRead, write, fetch6Local secondaryBlocks of data, deviceRead, write, allocate, freestorechannels5Primitive processesPrimitive process,Suspend, resume, wait, signalsemaphores, readylist113Operating System

60、 Design HierarchyLevelNameObjectsExample Operations13ShellUser programmingStatements in shell languageenvironment12User processesUser processesQuit, kill, suspend, resume11DirectoriesDirectoriesCreate, destroy, attach, detach,search, list10DevicesExternal devices, suchOpen, close,as printer, display

溫馨提示

  • 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論