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

下载本文档

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

文档简介

1、2008-2009 第二学期主讲:冯荣俊南京邮电大学计算机科学与技术学院信息安全系操作系统结构分析课程性质及安排总32课时平时成绩:作业 + 点名答疑时间地点:课后最后成绩=考试60%+平时成绩40%课程特点及学习方法课程特点概念多、抽象、枯燥理论性强、难理解学习方式读课本,写提纲作标记,找答案做作业,应考试如何联系:第一章 操作系统概论1.1 操作系统概观1.2 操作系统的形成和发展1.3 操作系统提供的服务和用户接口1.4 操作系统的结构设计1.5 流行操作系统简介1.1 操作系统概观操作系统的定义和目标操作系统的作用和功能操作系统的主要特性随处可见的电子设备所有的电子设备都有操作系统电子

2、计算机(大型机,微型机)汽车电子控制部件火星漫步者手持设备(手机,PDA)洗衣机,微波炉本课讨论范围限于计算机OSAltair 8080最早的计算机操作系统最基本的计算机由CPU,存储器以及输入/输出设备组成。Source CodeCompilerObject CodeHardware在那个年代,人们是通过一个控制面板将Object Code输入内存并读出结果。0 x2A3B0 x20现在我们是怎么做的?每按一个键系统都要字符回显示至显示器,直至输入回车,数据就被写入指定地址的内存了。谁将字符显示到显示器上?(屏显处理程序)它如何得知我的指令结束?(键盘处理程序)它怎么知道我是要写而不是读?(

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

4、提供良好运行环境的一种系统软件 。(可以是硬件吗?) 硬件计算机系统 系统软件软件 应用软件计算机系统的层次结构用户1用户2用户3用户4用户n财务系统航空订票上网浏览电子商务科学计算(应用软件)编译程序汇编程序编辑程序数据库(系统软件)操作系统计算机硬件Interface接口 (边界)接口提供了一条合理的边界,使接口的两边可以很好的对话。接口可分成硬硬、软硬、软软几类, OS和硬件之间是软硬接口。 instruction setsoftwarehardware用户如何透过OS支配硬件(VM)OS向用户提供一个容易理解和使用的“计算机”(虚拟机),用户对这个“计算机”的操作都将被转化成OS对计算

5、机硬件的操作。E.g.在“我的电脑”中复制、粘贴文件。ApplicationOperating SystemHardwarePhysical Machine InterfaceVirtual Machine InterfaceOS能做些什么?(OS的功能)OS是一个协调者和交通警察管理资源硬件资源(处理机,存储器,设备)信息资源(文件)解决申请资源时产生的冲突阻止错误的产生和对计算机不正当的使用OS是一个便利店提供良好的用户界面标准的函数库使得编程更加方便并且不容易出错操作系统的主要功能处理器管理存储管理设备管理文件管理网络与通信管理用户接口OS接管计算机的过程打开电源CPU将控制权交给BIO

6、S (基本输入输出系统,存放在CMOS中)BIOS运行一个程序:通电自测试程序BIOS确认所有外部设备:硬盘或扩充卡BIOS找到磁盘的引导区(通常在磁盘的最开始的部分),将接下来的512Bytes主引导程序装入内存。(主引导程序是一段代码,它可以将OS余下部分装入内存)引导操作系统结束,操作系统接管计算机虚拟性:是指把物理实体变成逻辑对应物。如虚拟软驱、虚拟硬盘、虚拟光驱、虚拟内存、虚拟打印机、虚拟摄像头。并发:在计算机系统中同时存在多个程序宏观上:这些程序是同时在执行的微观上:任何时刻只有一个程序在执行,即微观上这些程序在CPU上轮流执行并行:与并发相似,但多指硬件支持共享:计算机系统资源可

7、被多个并发执行的程序共同使用。互斥共享如打印机、磁带机等同时访问如磁盘等异步性(随机性):ABBA终点操作系统的主要特性并发性共享性异步性虚拟性1.2 操作系统的形成和发展人工操作阶段管理程序阶段多道程序设计与操作系统的形成人工操作阶段(没有OS软件的时代)穿孔卡片程序写在卡片上然后读入计算机管理程序阶段(OS的软件雏形)操作员集中一批用户提交的作业,由管理程序将这批作业从纸带或卡片机输入到磁带上,每当一批作业输入完成后,管理程序自动把磁带上的第一个作业装入内存,并把控制权交给作业。当该作业执行完成后,作业又把控制权缴回管理程序,管理程序再调入磁带上的第二个作业到内存执行。例题 (p11)计算

8、某个数据处理问题,输入500个字符(花78ms),经CPU处理52ms后,将结果2000个字符存到磁带上(花20ms) ,重复进行,直至输入数据全部处理完毕。 单道算题运行时处理器的使用效率78输入机处理器磁带机130150228280300378430450时 间CPU利用率 = 52/(78+52+20) 35%多道程序设计多道程序设计是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。 从宏观上看: 并行从微观上看: 串行引入多道程序设计技术的根本目的:提高CPU的利用率实现该目标的硬件保证:处理器和外围设备具可以并行工作例题 (p11-12)接上题,计算机还接受了另一

9、算题:先从另一台磁带机上输入2000个字符(花20ms),经42毫秒的处理后,从行式打印机上输出两行(约花 88ms) 。两道算题运行时处理器的使用效率 78输入机处理器磁带机1130150228280300378430450时 间磁带机2打印机P2P2P1P2P1P1P2CPU利用率 = (52 + 42)/(78+52+20) 63% 例题 (p12)甲、乙两道程序,独占计算机单道运行时每道花一个小时,若此时处理器利用率为30,粗略地说,甲(或乙)程序执行时所需要的处理器时间为:1小时30 18分钟假定按多道程序设计方法运行,处理器的利用率达50,提供36分钟的CPU时间,约要运行72分钟

10、。加上系统开销,若共花80分钟。单道运行时,甲、乙依次执行完需120分钟,采用多道程序设计方法后可以提高效率: (120 - 80)120 33甲、乙两道程序,如果单道运行,它花60分钟就可得到结果,多道运行时,却要花80分钟才有结果,延长了20分钟,即延长了33的时间。(80 - 60)/60 33%多道程序设计产生的问题采用多道程序设计提高了效率,即增长了单位时间的算题量,但对每道程序来说,却延长了计算时间。多道程序设计技术提高资源利用率和系统吞吐率是以牺牲用户的响应时间为代价的。 多道程序设计的道数问题多道程序设计的道数多少不是任意的 (如两道程序都要用某一台打印机)内存储器的容量和用户

11、的响应时间等因素也影响多道程序道数的多寡。一道程序等待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=

12、87%,第二个1MB内存提高了47%的系统吞吐量。增加第三个1MB内存只将CPU的利用率从87%提高到96%,吞吐量仅提高了10%。多道程序设计的优缺点优点:提高了CPU的利用率,提高了内存和I/O设备的利用率,改进了系统的吞吐率,充分发挥了系统的并行性。缺点作业周转时间延长。复习什么操作系统?OS是一套提供多种服务的系统软件!计算机系统是一个层次结构的系统,层与层之间都存在一个界面接口(Interface)操作系统有哪些功能?管理硬件资源和信息资源可以扩充至各种未知的功能操作系统有哪些特性?并发性:与并行性之间的区别共享性:互斥共享和同时访问异步性:即随机性,与同步之间的区别虚拟性三个关键促

13、成了操作系统的形成中断技术实现了多道程序的切换通道技术实现了硬件之间的并行性磁盘的问世高速高容量的存储器充当虚拟存储器教材【作者】任满杰 刘树刚 李军红 等【丛 书 名】 新编计算机类本科规划教材 【出 版 社】电子工业出版社 【书 号】 7121022656 【出版日期】 2006 年1月 【开 本】 16开 【页 码】 257 【版 次】1-1 操作系统发展简史“微芯片上集成的晶体管数目每18个月翻一番”戈登摩尔 硬件发展带动操作系统的发展0.24,00025,000 0.1 110s23216110,0001 Gb/s9600 b/s100,0001TB10MB32,7684GB128K

14、B1,2803200 x410 倍数20061981价格人力/机器时间总线位数网络带宽磁盘容量内存容量CPU MHzENIAC: (19451955) 这个家伙重30吨,并且要消耗200KW的电力http:/history/ENIAC.Richey.html第1阶段 (19481970)人机矛盾突显用户在机器前操作一次只一个用户使用当用户在机器面前思考计算机空闲(浪费严重)批处理系统一次性处理多个作业如果其中一个作业出错,将导致人工干预硬件昂贵, 人力便宜磁心存储器 (1950s & 60s)Core Memory将数据存储在被磁化的铁环中http:/acis/history/core.htm

15、l第1阶段(60年代末70年代初)通道和中断: 提供了I/O和计算的并行多道程序设计复杂性变得难以控制:Multics:耗费了1866 人力()图灵奖得主 Fernando Corbat的获将演说: “On building systems that will fail”OS 360: 发布时就存在1000个已知bugs (APARs)“Anomalous Program Activity Report”OS逐渐形成一门重要的学科:如何处理硬件的复杂性?UNIX 基于Multics系统开发,但已经大大的简化。Multics System由MIT、通用电气公司以及贝尔实验室三家于1969年推出了

16、著名的MULTICS,即多路信息计算系统(Multiplexed Information and Computer System)。作为一种通用的操作系统,MULTICS能有效地把计算机资源分配给多个远程用户程序,同时解决了安全和保密等问题。/multics-stories.html磁盘的发展1973:1. 7 Mbit/sq. in140 MBytes1979:7. 7 Mbit/sq. in2,300 MBytes第2阶段 (1970 1985)OS 技术不断成熟和稳定分时操作系统:多个用户可以通过自己的终端同时与系统会话每个用户可以获得相同的CPU处理时间用户可以在线进行编程,调试以及其

17、它操作第一个分时系统CTSS在1962年由MIT开发成功UsersResponsetime硬件成本下降, 人力资源费用上升第3阶段 (1981 )人均拥有计算机数量1微机操作系统单用户单任务:CP/M,DOS多用户多任务:windows,OS2,MAC OS,LinuxOS之间的战争(见附录)硬件十分便宜, 人力资源费用昂贵第4阶段 (1989 )分布式操作系统不同的机器共享资源打印服务,文件服务,WEB服务客户-服务器模式提供计算和文件存储等服务第5阶段 (1995 )嵌入式操作系统随处可见的移动设备:笔记本,PDA,手机等硬件设备CPU,内存容量有限对无线环境要求高1.3 操作系统提供的服

18、务和用户接口操作系统的主要功能(OS部件)处理器管理存储管理设备管理文件管理网络与通信管理用户接口操作系统提供哪些服务?程序的创建和执行程序是如何进入内存并得以执行?I/O操作用户如何通过OS来操作IO设备?文件的操作建立、读写、修改、删除和查找文件通信服务机器之间的网络通信以及同台机器中不同程序之间的通信其它服务错误的检测和恢复资源的分配帐户管理保护用户如何使用OS提供的服务?操作系统提供了许多服务,底层服务通过系统调用来实现,可被用户程序直接使用。高层的服务通过系统程序来实现,用户不必自己编写程序而是借助命令来请求执行完成各种功能。用户和操作系统之间的两种接口 系统调用 操作命令或 JCL

19、操作系统的服务 裸 机操作接口(系统程序)程序接口API系统调用系统调用(广义指令)是由操作系统在机器指令(访管指令)基础上实现的,是能完成特定功能的过程或子程序。程序接口又称应用编程接口API,允许运行程序调用操作系统的服务和功能。程序接口由一组系统调用(System Call)组成,用户程序使用“系统调用”就可获得操作系统的底层服务,使用或访问系统的各种软硬件资源。UNIX/Linux系统程序、库函数、系统调用的分层关系操作系统(进程管理、存储管理、文件管理、设备管理等)标准库函数(打开、关闭、读、写、创建、撤销等) 标准系统程序(实用程序)(汇编、编译、编辑、Shell等)用户用户接口库

20、函数(程序)接口系统调用接口硬件(处理器、存储器、磁盘、打印机、终端等)用户态核心态系统调用与函数调用的区别系统调用函数调用调用形式无入口地址,仅仅按功能号调用有调用指令和转向地址被调用位置被调用代码在操作系统中调用程序和被调用代码一般在同一程序内提供方式由操作系统提供由编译系统提供实现方式通过中断实现由跳转指令调用总结(你应该了解什么)操作系统的定义和特点多道程序设计思想操作系统的功能以及用户是如何使用的系统调用(程序接口)系统程序(操作接口)操作系统的结构设计方法附录:OS之间的战争个人计算机操作系统CP/M:8位MS-DOS:设备管理、文件系统功能WINDOWS图形用户界面多任务、多线程

21、可剥夺式调度段页式虚拟存储管理技术动态连接MAC OS个人计算机操作系统1 CP/M 操作系统随着大规模集成电路发展,个人计算机时代到来了各种类型的个人计算机和软件层出不穷1973年Gary Kildall看到对个人计算机操作系统的需求,设计了CP/M操作系统(Control Program/Microprocessor or Microcomputer)CP/M操作系统有较好的层次结构。它的BIOS把操作系统的其他模块与硬件配置分隔开,所以它的可移植性好, 具有较好的可适应性和易学易用性到了1981年,CP/M操作系统成为世界上流行最广的8位操作系统之一个人计算机操作系统2 微软MS DOS

22、个人计算机的成功,逼得IBM采取紧急战略行动,决定要在1980年尽快生产出微型计算机,以应付挑战但没有操作系统不行。要想快就是找现成系统配套,IBM公司洽谈 CP/M操作系统不顺利,机遇落到了微软在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的QDOS操作系统的协议当时西雅图公司并不知道QDOS将被转卖给IBM,否则历史将会怎样演变,谁也无法知晓个人计算机操作系统IBM在1981年推出PC,宣布了PC-DOS操作系统随着IBM PC和MS DOS普及,CP/M逐渐走向下坡路MS DOS有优良的文件系统,但受到Intel x86

23、体系结构的限制,缺乏以硬件为基础的存储保护机制。它属于单用户单任务操作系统,从1981的 1.0版到1998年在Windows 95/98之下的7.0版,MS DOS历经了16个年头。拯救苹果公司的Macintosh(MAC OS)在推出IBM PC机后,市场卷起一股龙卷风,IBM自己也没有料到产品会有如此巨大的成功,IBM的成功说明必有其他公司失败。甚至连苹果公司也遇到了问题,销售数量落到了兰色巨人的后面。苹果公司推出Lisa机遭到失败,Apple III型也遭到失败,分析家们:微机市场上的战斗似乎兰色巨人要嬴了施乐Palo Alto研究中心-70年代的计算机研究思想库世界上第一台个人计算机Alto,1972年在这里出现。图形界面,手持鼠标,面向对象程序设计,微机网络,桌面出版和激光打印等等很多先进概念和技术的原型都首次出现在这里。施乐Palo Alto研究中心(cont)1979年苹果公司允许施乐公司购买一百万股的苹果公司股票, 作为回报,施乐公司允许苹果公司的少数人员,包括乔布斯,在有限的时间内考察施乐公司Palo Alto研究中心内部,并同该思想库的研究人员交谈。苹果公司对Palo Alto研究中心内的技术大感吃惊,他们更吃惊的是,施乐公司在拥有这些宝贵技术

温馨提示

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

评论

0/150

提交评论