chapter 01 操作系统概论_第1页
chapter 01 操作系统概论_第2页
chapter 01 操作系统概论_第3页
chapter 01 操作系统概论_第4页
chapter 01 操作系统概论_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章操作系统概论1.1操作系统概观1.2操作系统的形成和发展1.3操作系统提供的服务和用户接口1.4操作系统的结构设计1.5流行操作系统简介1.1操作系统概观操作系统的定义和目标操作系统的作用和功能操作系统的主要特性随处可见的电子设备所有的电子设备都有操作系统电子计算机(大型机,微型机…)汽车电子控制部件火星漫步者手持设备(手机,PDA)洗衣机,微波炉本课讨论范围限于计算机OSAltair8080如果我们没有操作系统…最基本的计算机由CPU,存储器以及输入/输出设备组成。SourceCodeCompilerObjectCodeHardware在没有操作系统的时代,人们是通过一个控制面板将ObjectCode输入内存并读出结果。0x2A3B0x20现在我们是怎么做的?每按一个键系统都要字符回显示至显示器,直至输入回车,数据就被写入指定地址的内存了。谁将字符显示到显示器上?(屏显处理程序)它如何得知我的指令结束?(键盘处理程序)它怎么知道我是要写而 不是读?(命令处理程序)Write0x2A3B0x20

Write0x2A3B0x20

操作系统是什么?OS是屏显处理程序+键盘处理程序+命令处理程序?这样的OS太过简单,无法管理文件,无法上网,无法…OS是屏显处理程序+键盘处理程序+命令处理程序+文件管理程序+网络接入程序…?OS是N个提供服务程序的集合人们希望OS完成哪些工作?方便地操作计算机使计算机的功能得到扩充有效管理我的文档尽可能地快速完成我下达的任务自己可以在其之上开发新功能OS就是一套能完成上述工作的软件操作系统的定义操作系统是管理系统资源、控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程和为用户有效使用计算机提供良好运行环境的一种系统软件

(可以是硬件吗?)。 硬件计算机系统 系统软件 软件 应用软件计算机系统的层次结构用户1用户2用户3用户4用户n财务系统航空订票上网浏览电子商务科学计算(应用程序)编译程序汇编程序编辑程序数据库(系统程序)操作系统计算机硬件………Interface--接口(边界)接口提供了一条合理的边界,使接口的两边可以很好的对话。接口可分成硬-硬、软-硬、软-软几类,OS和硬件之间是软-硬接口。instructionsetsoftwarehardware操作系统设计者系统软件设计者应用软件设计者OS接管计算机的过程打开电源CPU将控制权交给BIOS(基本输入输出系统,存入于CMOS中)BIOS运行一个程序:通电自测试程序BIOS确认所有外部设备:硬盘或扩充卡BIOS找到磁盘的引导区(通常在磁盘的最开始的部分),将接下来的512Bytes主引导程序装入内存。(主引导程序是一段代码,它可以将OS余下部分装入内存)引导操作系统结束,操作系统接管计算机用户如何透过OS支配硬件(VM)OS向用户提供一个容易理解和使用的“计算机”,用户对这个“计算机”的操作都将被转化成OS对计算机硬件的操作。E.g.在“我的电脑”中复制、粘贴文件。ApplicationOperatingSystemHardwarePhysicalMachineInterfaceVirtualMachineInterfaceOS能做些什么?(OS的功能)OS是一个协调者和交通警察管理资源硬件资源(处理机,存储器,设备)信息资源(文件)解决申请资源时产生的冲突阻止错误的产生和对计算机不正当的使用OS是一个便利器提供良好的用户界面标准的函数库使得编程更加方便并且不容易出错操作系统的主要功能处理器管理存储管理设备管理文件管理网络与通信管理用户接口虚拟性: 是指把物理实体变成逻辑对应物。 如虚拟软驱、虚拟硬盘、虚拟光驱、虚拟内存、虚拟打印机、虚拟摄像头。操作系统的主要特性并发性共享性异步性虚拟性并发:在计算机系统中同时存在多个程序宏观上:这些程序是同时在执行的微观上:任何时刻只有一个程序在执行,即微观上这些程序在CPU上轮流执行并行:与并发相似,但多指硬件支持共享: 计算机系统资源可被多个并发执行的程序共同使用。互斥共享 如打印机、磁带机等同时访问 如磁盘等异步性(随机性):

AB终点BA1.2操作系统的形成和发展人工操作阶段管理程序阶段多道程序设计与操作系统的形成人工操作阶段(没有OS的时代)穿孔卡片 程序写在卡片上然后读入计算机管理程序阶段(OS的软件雏形)操作员集中一批用户提交的作业,由管理程序将这批作业从纸带或卡片机输入到磁带上,每当一批作业输入完成后,管理程序自动把磁带上的第一个作业装入内存,并把控制权交给作业。当该作业执行完成后,作业又把控制权缴回管理程序,管理程序再调入磁带上的第二个作业到内存执行。例题(p11)计算某个数据处理问题,输入500个字符(花78ms),经CPU处理52ms后,将结果2000个字符存到磁带上(花20ms),重复进行,直至输入数据全部处理完毕。单道算题运行时处理器的使用效率78输入机处理器磁带机130150228280300378430450时间CPU利用率=52/(78+52+20)≈35%

多道程序设计多道程序设计是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。从宏观上看:并行从微观上看:串行引入多道程序设计技术的根本目的:提高CPU的利用率实现该目标的硬件保证:处理器和外围设备具可以并行工作例题(p11-12)接上题,计算机还接受了另一算题:先从另一台磁带机上输入2000个字符(花20ms),经42毫秒的处理后,从行式打印机上输出两行(约花88ms)。两道算题运行时处理器的使用效率

78输入机处理器磁带机1130150228280300378430450时间磁带机2打印机P2P2P1P2P1P1P2CPU利用率=(52+42)/(78+52+20)≈63%例题(p12)甲、乙两道程序,独占计算机单道运行时每道花一个小时,若此时处理器利用率为30%,粗略地说,甲(或乙)程序执行时所需要的处理器时间为:

1小时×30%=18分钟假定按多道程序设计方法运行,处理器的利用率达50%,提供36分钟的CPU时间,约要运行72分钟。加上系统开销,若共花80分钟。单道运行时,甲、乙依次执行完需120分钟,采用多道程序设计方法后可以提高效率:

(120-80)/120≈33%甲、乙两道程序,如果单道运行,它花60分钟就可得到结果,多道运行时,却要花80分钟才有结果,延长了20分钟,即延长了33%的时间。(80-60)/60≈33%

多道程序设计产生的问题采用多道程序设计提高了效率,即增长了单位时间的算题量,但对每道程序来说,却延长了计算时间。多道程序设计技术提高资源利用率和系统吞吐率是以牺牲用户的响应时间为代价的。多道程序设计的道数问题多道程序设计的道数多少不是任意的(如两道程序都要用某一台打印机)内存储器的容量和用户的响应时间等因素也影响多道程序道数的多寡。一道程序等待I/O操作的时间占其运行时间的比例为p,当内存中有n道程序时,所有程序都等待I/O的概率是pn,那么,

CPU利用率=1-pn

其中n称多道程序的道数或度数,可见CPU的利用率是n的函数。注:解题时是否使用该公式请依题意内存数量对CPU利用率的影响若计算机有1MB内存,操作系统占200KB,其余空间允许4道用户程序共享,每个占用200KB,如果进程平均花费80%的时间等待I/O操作。则(忽略操作系统开销时):

CPU利用率=1-(0.8)4=59%当增加1MB内存后,多道程序可从4道增加到9道,因而,CPU的利用率=1-(0.8)9=87%,第二个1MB内存提高了28%的系统吞吐量。增加第三个1MB内存只将CPU的利用率从87%提高到96%,吞吐量仅提高了10%。多道程序设计的优缺点优点:提高了CPU的利用率,提高了内存和I/O设备的利用率,改进了系统的吞吐率,充分发挥了系统的并行性。其主要缺点是:作业周转时间延长。三个关键促成了操作系统的形成中断技术 实现了多道程序的切换通道技术 实现了硬件之间的并行性磁盘的问世 高速高容量的存储器充当虚拟存储器如何获得课件和资料?U盘拷贝后续发布网站(可能)操作系统发展简史“微芯片上集成的晶体管数目每18个月翻一番”

--戈登·摩尔硬件发展带动操作系统的发展0.24,00025,0000.1110s23216110,0001Gb/s9600b/s100,0001TB10MB32,7684GB128KB1,2803200x410倍数20061981价格人力/机器时间总线位数网络带宽磁盘容量内存容量CPUMHzENIAC:(1945—1955)这个家伙重30吨,并且要消耗200KW的电力/~history/ENIAC.Richey.html第1阶段(1948—1970)人机矛盾突显用户在机器前操作一次只一个用户使用当用户在机器面前思考计算机空闲(浪费严重)批处理系统一次性处理多个作业如果其中一个作业出错,将导致人工干预硬件昂贵,人力便宜磁心存储器(1950s&60s)CoreMemory将数据存储在被磁化的铁环中/acis/history/core.html第1½阶段(60年代末70年代初)通道和中断:提供了I/O和计算的并行多道程序设计复杂性变得难以控制:Multics:耗费了1866people人力()图灵奖得主FernandoCorbató的获将演说:“Onbuildingsystemsthatwillfail”OS360:发布时就存在1000个已知bugs(APARs)“AnomalousProgramActivityReport”OS逐渐形成一门重要的学科:如何处理硬件的复杂性?UNIX基于Multics系统开发,但已经大大的简化。MulticsSystem由MIT、通用电气公司以及贝尔实验室三家于1969年推出了著名的MULTICS,即多路信息计算系统(MultiplexedInformationandComputerSystem)。作为一种通用的操作系统,MULTICS能有效地把计算机资源分配给多个远程用户程序,同时解决了安全和保密等问题。/multics-stories.html磁盘的发展1973:1.7Mbit/sq.in140MBytes1979:7.7Mbit/sq.in2,300MBytes第2阶段(1970–1985)OS技术不断成熟和稳定分时操作系统:多个用户可以通过自己的终端同时与系统会话每个用户可以获得相同的CPU处理时间用户可以在线进行编程,调试以及其它操作第一个分时系统CTSS在1962年 由MIT开发成功UsersResponsetime硬件成本下降,人力资源费用上升第3阶段(1981—)人均拥有计算机数量>1微机操作系统单用户单任务:CP/M,DOS多用户多任务:windows,OS2,MACOS,LinuxOS之间的战争(见附录)硬件十分便宜,人力资源费用昂贵第4阶段(1989—)分布式操作系统不同的机器共享资源打印服务,文件服务,WEB服务客户-服务器模式提供计算和文件存储等服务第5阶段(1995—)嵌入式操作系统随处可见的移动设备:笔记本,PDA,手机等硬件设备CPU,内存容量有限对无线环境要求高操作系统迁移图操作系统的分类批处理操作系统分时操作系统实时操作系统微机操作系统并行操作系统网络操作系统分布式操作系统嵌入式操作系统1.3操作系统提供的服务和用户接口操作系统的主要功能(OS部件)处理器管理存储管理设备管理文件管理网络与通信管理用户接口操作系统提供哪些服务?程序的创建和执行程序是如何进入内存并得以执行?I/O操作用户如何通过OS来操作IO设备?文件的操作建立、读写、修改、删除和查找文件通信服务机器之间的网络通信以及同台机器中不同程序之间的通信其它服务错误的检测和恢复资源的分配帐户管理保护用户如何使用OS提供的服务?操作系统提供了许多服务,底层服务通过系统调用来实现,可被用户程序直接使用。高层的服务通过系统程序来实现,用户不必自己编写程序而是借助命令来请求执行完成各种功能。用户和操作系统之间的两种接口

系统调用

操作命令或

JCL操作系统的服务

裸机操作接口(系统程序)程序接口API系统调用系统调用(广义指令)是由操作系统在机器指令(访管指令)基础上实现的,是能完成特定功能的过程或子程序。程序接口又称应用编程接口API,允许运行程序调用操作系统的服务和功能。程序接口由一组系统调用(SystemCall)组成,用户程序使用“系统调用”就可获得操作系统的底层服务,使用或访问系统的各种软硬件资源。UNIX/Linux系统程序、库函数、系统调用的分层关系

操作系统(进程管理、存储管理、文件管理、设备管理等)

标准库函数(打开、关闭、读、写、创建、撤销等)

标准系统程序(实用程序)(汇编、编译、编辑、Shell等)

用户用户接口库函数(程序)接口系统调用接口

硬件

(处理器、存储器、磁盘、打印机、终端等)用户态核心态系统调用的实现机制(陷入/异常)系统调用与函数调用的区别调用形式不同被调用代码的位置不同提供方式不同调用的实现不同操作接口提供两种作业控制方式:联机操作控制命令=命令+命令解释程序命令解释程序脱机作业控制语言(JobControlLanguage)自身包含执行代码调用系统程序实现1.4操作系统的结构设计操作系统的构件操作系统的设计结构操作系统的运行模型整体式结构(简单结构)操作系统的整体式结构又叫模块组合法,它按照功能划分模块,模块间可以互相调用,最后把所有的模块连接起来构成一个完整的系统。优点:结构紧密,组合方便,执行效率高。缺点:模块独立性差,可靠性低,系统功能增减十分困难。层次式结构它把操作系统划分为内核和若干模块(或进程),这些模块(或进程)按功能的调用次序排列成若干层次,各层之间只能是单向依赖或单向调用关系,这样不但系统结构清晰,而且不构成循环。部分功能无法很分清谁上谁下,如进程调度和存储管理。该结构很适合平台和硬件的移植,此设计思想很值得借鉴。进程管理硬件存储管理设备管理文件管理作业管理内核模式虚拟机结构程序设计接口进程内核虚机器硬件进程内核进程内核

CMSCMSCMS

370虚拟机系统调用陷入陷入I/O指令运行CMS的VM370虚拟机器虚拟机概念结构370裸机VM370客户/服务器及微内核结构

由两类进程和微内核组成每个进程实现一类服务,称服务器进程(如文件服务、进程管理服务、存储管理服务、网络通信服务等)。它的任务是检查是否有客户提出服务请求,如果有请求则在满足客户的要求后返回结果,于是,客户进程与服务器进程形成了C/S关系。与层次结构相似,但更加灵活微内核硬件客户进程安全服务虚存管理器文件服务器设备驱动程序用户模式总结(你应该了解什么)操作系统的定义和特点多道程序设计思想操作系统的功能以及用户是如何使用的系统调用(程序接口)系统程序(操作接口)操作系统的结构设计方法附录:OS之间的战争个人计算机操作系统CP/M:8位MS-DOS:设备管理、文件系统功能WINDOWS图形用户界面多任务、多线程可剥夺式调度段页式虚拟存储管理技术动态连接MACOS

个人计算机操作系统1CP/M操作系统随着大规模集成电路发展,个人计算机时代到来了各种类型的个人计算机和软件层出不穷1973年GaryKildall看到对个人计算机操作系统的需求,设计了CP/M操作系统(ControlProgram/MicroprocessororMicrocomputer)CP/M操作系统有较好的层次结构。它的BIOS把操作系统的其他模块与硬件配置分隔开,所以它的可移植性好,具有较好的可适应性和易学易用性到了1981年,CP/M操作系统成为世界上流行最广的8位操作系统之一个人计算机操作系统2微软MSDOS个人计算机的成功,逼得IBM采取紧急战略行动,决定要在1980年尽快生产出微型计算机,以应付挑战但没有操作系统不行。要想快就是找现成系统配套,IBM公司洽谈CP/M操作系统不顺利,机遇落到了微软在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的QDOS操作系统的协议当时西雅图公司并不知道QDOS将被转卖给IBM,否则历史将会怎样演变,谁也无法知晓个人计算机操作系统IBM在1981年推出PC,宣布了PC-DOS操作系统随着IBMPC和MSDOS普及,CP/M逐渐走向下坡路MSDOS有优良的文件系统,但受到Intelx86体系结构的限制,缺乏以硬件为基础的存储保护机制。它属于单用户单任务操作系统,从1981的1.0版到1998年在Windows95/98之下的7.0版,MSDOS历经了16个年头。拯救苹果公司的Macintosh(MACOS)在推出IBMPC机后,市场卷起一股龙卷风,IBM自己也没有料到产品会有如此巨大的成功,IBM的成功说明必有其他公司失败。甚至连苹果公司也遇到了问题,销售数量落到了兰色巨人的后面。苹果公司推出Lisa机遭到失败,AppleIII型也遭到失败,分析家们:微机市场上的战斗似乎兰色巨人要嬴了施乐PaloAlto研究中心

-70年代的计算机研究思想库世界上第一台个人计算机Alto,1972年在这里出现。图形界面,手持鼠标,面向对象程序设计,微机网络,桌面出版和激光打印等等很多先进概念和技术的原型都首次出现在这里。施乐PaloAlto研究中心(cont)1979年苹果公司允许施乐公司购买一百万股的苹果公司股票,作为回报,施乐公司允许苹果公司的少数人员,包括乔布斯,在有限的时间内考察施乐公司PaloAlto研究中心内部,并同该思想库的研究人员交谈。苹果公司对PaloAlto研究中心内的技术大感吃惊,他们更吃惊的是,施乐公司在拥有这些宝贵技术的同时竟然什么也没有做!施乐PaloAlto研究中心(cont)对PaloAlto研究中心这些科学家们而言,苹果公司的人是他们第一次遇到真正理解他们技术的人,这些科学家们后来有的去了苹果公司,微软公司,有的最终创办了自己的公司。在访问的基础上,苹果决定立即开发采用这些新技术的个人计算机,苹果公司已看到IBMPC机的技术有多么糟糕,但他们卖得又是特别的好。MACOS、鼠标的新型个人计算机1984年,人们看到一则广告:“Whatwasthat?”和对Macintosh的介绍,这是配有图形界面操作系统MACOS和鼠标的新型个人计算机。MAC机一上市立即在市场上获得极大的成功。当年比尔.盖茨都说,这是一台他的妈妈也能使用的计算机。Macintosh把苹果公司从连续的失败中拯救出来,苹果公司又开始向前发展。正是Mac先进图形界面操作系统技术,超前PC机若干年,造就了一批苹果的忠实追随者一波三折的Windows操作系统1983年10

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论