《操作系统 二、操作系统的发展.PPT》由会员分享,可在线阅读,更多相关《操作系统 二、操作系统的发展.PPT(39页珍藏版)》请在三一办公上搜索。
1、操作系统,二、操作系统的发展,1、“需求推动发展”2、操作系统的历史在某种意义上来说也是计算机的历史。目标:管理控制、充分利用硬件 并提供更好的服务,操作系统也随之经历了各个不同的阶段。,操作系统,第一台数字计算机,英国数学家Charles Babbage(1792-1871)设计Babbage投入了毕生精力,但却没能让它成功地运行起来因为纯机械,当时的技术不可能达到需要的精度当然,这个分析机没有操作系统,操作系统,注释A:她预言了通用计算机的作用,认为分析机可以接受各种各样的穿孔卡:“控制卡”、“数据卡”、“操作卡”,它们如何使计算机自动地对输入的数据完成正确的操作。换句话说,计算机能“分析
2、数据”。她还提议数字和其他符号如字母都可以“编码”成数字数据,机器可以处理它们,并给出写成的数据。她甚至要为分析机能产生音乐而奋斗。注释B:ada讨论了分析机的记忆能力,她把记忆装置称为“仓库”。她提出了存储位置或地址的想法。她指出插入“注解或备忘”的可能性,计算机不会执行它们,但可以让人们简明地了解程序将走向何方。注释C:ada引入“返回”(backing)的概念,制作一个操作卡返回到某个位置,而它就是将要工作的下一个数据卡。这个思想我们今天称为”循环”。注释D:ada解释了如何使用操作卡、返回、仓库以及各种控制卡,以写成一个指令序列,去完成一个特定的操作集合。注释E:她解释了机器如何拥有三
3、角函数和其他函数。这就在计算机内部引入了内建函数(built-in function)的思想。注释F:ada警告读者,如果输入“不真实”的信息,那么计算机就不能做任何事今天我们把这称为“输入垃圾,输出垃圾”(Garbage in,Garbage out)。,第一位计算机程序员Ada,操作系统,二战对武器设计的需要,美国、英国和德国等国家开始了电子数字计算机的研究工作哈佛大学的Howard Aiken普林斯顿高等研究院的John von Neumann宾夕法尼亚大学的J.Presper Eckert和William Mauchley德国电话公司的Konraad Zuse以及其他一些人都使用真空管
4、成功地建造了运算机器,第一代 真空管计算机(1945年-1955年)时期,操作系统,没有程序设计语言(甚至没有汇编),更谈不上操作系统程序员提前预约一段时间,然后到机房将他的插件板插到计算机里期盼着在接下来的时间中几万个真空管不会烧断从而可以计算自己的题目,ENIAC计算机(美国宾夕法尼亚大学),运算速度:5000次/每秒,18000个真空管,占地182平方米,重量30吨,操作系统,50年代早期出现了穿孔卡片程序写在卡片上然后读入计算机但计算过程则依然如旧,操作系统,第二代 晶体管计算机(1955年-1965年)时期,50年代晶体管发明,计算机比较可靠,可成批生产用户可指望计算机长时间运行,完
5、成一些工作FORTRAN 1954年提出,1956年设计完成ALGOL 1958年引入,COBOL 1959年引入;设计人员、生产人员、操作人员、程序人员和维护人员之间第一次有了明确的分工,机时在走来走去时被浪费,操作系统,为了解决人机矛盾以及CPU和I/O设备间速度的不匹配引入了I/O 处理机概念,即:脱机输入输出方式 P6其思想是:在输入室收集全部的作业,用一台相对便宜的计算机如IBM 1401计算机,将它们读到磁带上另外用较昂贵的计算机,如IBM7094来完成真正的计算,产生批处理操作系统-现代操作系统雏型,操作系统,(单道)批处理系统处理流程,常驻监控程序自动地装入程序,运行、撤出作业
6、,操作系统,第二代计算机典型的操作系统,FMS(FORTRAN Monitor System,FORTRAN监控系统)IBMSYS(IBM为7094机配备的操作系统)这些操作系统由监控程序,特权指令,存储保护和简单的批处理构成,操作系统,第三代集成电路计算机(1965年-1980年)时期,多数厂商有几条完全不同的生产线,生产不同的计算机(如ibm7094和1401)。开发和维护完全不同的产品,对厂商来说是昂贵的另外,新用户,在开始时只需要一台小计算机,后来可能需要一台大的计算机。而且希望能在新计算机上执行原有的程序,厂家和用户需要软件在不同型号的计算机之间兼容,操作系统,1964 年IBM 宣
7、布推出System/360计算机系统 第一个采用小规模集成电路的主流机型试图一次性地解决上述两个问题引入系列机的思想:同系列中,所有的计算机都有相同的体系结构和指令集。理论上,为一型号编写的程序可以在其他型号机器上运行,操作系统,OS/360,庞大的软件怪兽,数千名程序员写的数百万行汇编语言代码 系统自身占据了大量存储空间和一半的CPU时间数百万行汇编代码中有成千上万处错误IBM不断发行新的版本试图更正这些错误 每个新版本在更正老错误的同时又引入新错误所以随着时间的流逝,错误的数量大致保持不变,Fred brooks,Silberschatz et al,The Mythical Man-Mo
8、nth,操作系统,1)多道程序设计技术(multiprogramming),在IBM 7094机上,若当前作业因等待I/O而暂停,CUP只能踏步直至该I/O完成 对于CPU操作密集科学计算问题,浪费时间少;对于商业数据处理,I/O等待时间常占8090解决办法 将内存分几个部分,每部分放不同的作业,内存中可以同时存放多个作业。,操作系统,多道批处理系统,解决如下的问题处理机管理问题、内存管理问题、I/O管理问题、文件管理问题、作业管理问题,由此可见:操作系统是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度以及方便用户的程序的集合。,操作系统,2)Spooling 技术,SPOOLi
9、ng技术是在通道技术和多道程序设计基础上产生的,它由主机和相应的通道共同承担作业的输入输出工作,利用磁盘作为后援存储器,实现外围设备同时联机操作。Spooling技术假脱机技术(Simultaneous Peripheral Operation On Line)联机情况下的同时外围操作。,操作系统,3)分时系统,第三代计算机实质是批处理系统而从一作业提交到结果取回,往往长达数小时 一个逗号的误用会导致编译失败而可能浪费程序员半天时间问题的解决导致分时系统的流行,操作系统,分时系统的思想1959年在MIT提出 1961年在一改装的IBM 7090/94机上开发成功 当时有32个交互式用户是多道程
10、序设计的一个变种,每个用户有一个联机终端。在分时系统中,假设20个用户登录 其中17个在思考或谈论或喝咖啡 则CPU可分配给那三个需要的作业(轮流服务),第一个分时操作系统CTSS,操作系统,MULTICS的灾难,1965年在ARPA的支持下MIT、贝尔实验室和通用电气公司决定开发一种“公用计算服务系统”,希望能够同时支持整个波士顿所有的分时用户。该系统称作MULTICS(MULTiplexed Information and Computing Service)MULTICS设计目标是:便利的远程终端使用,大量终端通过电话线接入计算机主机,同时支持数百名分时用户。就象电器设备需要电能时,只需
11、将电器设备接到墙上的插座一样简单。,操作系统,MULTICS研制难度超出了所有人预料 长期研制工作达不到预期目标,1969年4月贝尔实验室退出,通用电气公司也退出了。MULTICS 于 1963 年开始,直至 1969 年才发布,最终,MULTICS成功地应用MULTICS引入了许多现代操作系统领域概念雏形,对随后操作系统特别是UNIX的成功有着巨大的影响 概念的回归:公共服务系统以因特网服务器形式回归,操作系统,小型计算机,电子游戏和UNIX的成功,1969年,在贝尔退出MULTICS研制项目后,Ken Thompson和Dennis Ritchie 想申请经费买计算机从事操作系统研究,但多
12、次申请得不到批准项目无着落,他们在一台无人用的PDP-7上,开始开发简化的单用户版MULTICS,并继续摆弄原来的“太空旅行”游戏。为了使游戏能够在PDP-7上顺利运行,他们陆续开发了浮点运算软件包、显示驱动软件,设计了文件系统、实用程序、shell 和汇编程序到了1970年,在一切完成后,给新系统起了个名字UNIX随后,UNIX用C语言全部重写,自此,UNIX诞生了,操作系统,UNIX,UNIX是现代操作系统的代表。Unix运行时的安全性、可靠性以及强大的计算能力赢得广大用户的信赖促使UNIX系统成功的因素:首先,由于UNIX是用C语言编写,因此它是可移植的,UNIX 是世界上唯一能在笔记本
13、计算机、PC机、工作站直至巨型机上运行的操作系统第二,系统源代码非常有效,系统容易适应特殊的需求最后,也是最重要的一点,它是一个良好的、通用的、多用户、多任务、分时操作系统,Ken Thompson,Dennis Ritchie1983年图灵奖获得者1999年4月 美国国家技术金奖,操作系统,操作系统,第四代大规模集成电路计算机(1980年-至今),随着大规模集成电路发展,硬件非常便宜,CPU 便宜到可在每台终端上安装,功能强大有效。而人力却异常昂贵。个人计算机时代到来了,各种类型的个人计算机和软件层出不穷。CP/M 操作系统1973 Intel 8080,请Gary Kildall设计操作系
14、统CP/M操作系统(Control Program/Microprocessor or Microcomputer)Gary Kildall看到了个人计算机操作系统的前景,要求CP/M版权digital researchCP/M操作系统有较好的层次结构。它的BIOS把操作系统的其他模块与硬件配置分隔开,所以它的可移植性好,具有较好的可适应性和易学易用性到了1981年,CP/M操作系统成为世界上流行最广的8位操作系统之一,操作系统,微软MS DOS,个人计算机的成功,逼得IBM采取紧急战略行动,决定要在1980年尽快生产出微型计算机,以应付挑战但没有操作系统不行。要想快就是找现成系统配套,IBM
15、公司洽谈 CP/M操作系统不顺利,机遇落到了微软公司在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的QDOS操作系统的协议当时西雅图公司并不知道QDOS将被转卖给IBM,否则历史将会怎样演变,谁也无法知晓,操作系统,IBM在1981年推出个人计算机,宣布了DOS操作系统随着IBM PC和MS DOS普及,CP/M逐渐走向下坡路MS DOS有优良的文件系统 但受到Intel x86体系结构的限制 缺乏以硬件为基础的存储保护机制它属于单用户单任务操作系统从1981的 1.0版到1998年在Windows 95/98之下的7.0版,
16、MS DOS历经了16个年头迄今仍有MS DOS爱好者继续开发各种DOS软件产品,操作系统,拯救苹果公司的Macintosh(MAC OS),在推出IBM PC机后,市场卷起一股龙卷风IBM自己也没有料到产品会有如此巨大的成功IBM的成功说明必有其他公司失败。甚至连苹果公司也遇到了问题,销售数量落到了兰色巨人的后面苹果公司推出Lisa机遭到失败,Apple III型也遭到失败分析家们认为,在微机市场上的战斗似乎兰色巨人要嬴了,操作系统,MAC OS、鼠标的新型个人计算机,1984年,人们看到一则广告:“What was that?”和对Macintosh的介绍,这是配有图形界面操作系统 MAC
17、 OS和鼠标的新型个人计算机MAC机一上市立即在市场上获得极大的成功当年比尔.盖茨都说,这是一台他的妈妈也能使用的计算机Macintosh把苹果公司从连续的失败中拯救出来 苹果公司又开始向前发展正是Mac先进图形界面操作系统技术,超前PC机若干年,造就了一批苹果的忠实追随者,操作系统,一波三折的微软Windows操作系统,1983年10月,PC机竞争厂家的图形界面相关产品上市面对市场压力,比尔.盖茨在1983年11月10日宣布推出Windows操作系统然而宣布容易,交货就不简单了,Windows交货期的灾难,成了当年计算机界的笑柄直到1985年11月20日,Windows1.0才正式上市,操作
18、系统,Windows的历史记录,Windows在当时微软历史上创了几个记录:延迟交货次数最多,投入开发人员最多,开发时间最长,更换主管人员最多不过几年之后,Windows终于创造了销售成绩最佳的历史记录1992年4月,推出Windows 3.1,1993年5月,发表Windows NTWindows 95,Windows CE,Windows 98,Windows 2000,Windows XP个人计算机采用Windows占90以上,微软公司成了垄断PC行业的同义词,操作系统,IBM大型计算机操作系统OS/390,90年代末期,电子商务发展刺激对计算能力的要求,导致大型机市场的再度升温三十年的
19、改进,IBM S/390已成为有高可靠性、可扩展性、及安全可用性的现代大型计算机系统在PC机时代,人们曾经估计大型计算机会衰亡IBM S/390是大型计算机复活的一个典型 那么,在21世纪的Internet和后PC的时代,大型机还会有什么演化,只有让时间来说明,操作系统,嵌入式操作系统的代表VxWorks,在“极地登陆者”号,“深空二号”和火星气候轨道器等登陆火星探测器上,就采用了VxWorks:VxWorks负责火星探测器全部飞行控制,包括飞行纠正、载体自旋和降落时的高度控制等,而且还负责数据收集和与地球的通信工作目前在国内也占据嵌入式开发系统市场主要份额,嵌入式系统泛指嵌入于宿主设备的计算
20、机系统,嵌入的目的主要是用智能化提升宿主设备的功能,操作系统,操作系统领域中新的操作系统,有线电视机顶盒领域,PowerTV移动通信领域,EPOC掌上计算机领域,Palm OS数字影像领域,Digita,操作系统,时代与Linux,1990年秋天,Linus在芬兰首都赫尔辛基大学学习操作系统课程,因为上机需要排队等待,Linus买了台PC机,开发了第一个程序,程序包括两个进程,向屏幕上写字母,然后用定时器来切换进程Linus需要终端仿真程序来存取Usenet新闻组的内容,于是他写了从调制解调器上接发信息的程序以及显示器、键盘和调制解调器的驱动程序然后写了磁盘驱动程序,文件系统,一旦有了进程切换
21、、文件系统和设备驱动程序,当然就拥有了一个操作系统原型,或者至少是它的一个内核Linux就以这样极其古怪但也极其自然式问世,操作系统,思考和回顾,个人计算机的兴起,结束了IBM的霸主地位Internet普及,Linux的成功,极大地推动了当代操作系统的研究发展活动据不完全统计,当前在Internet上,有超过100个操作系统的项目在14个国家中进行着一批批的程序设计员们自愿通过互联网组织成为研究小组,从事着各类操作系统的研究开发工作在一些影响全球的操作系统的诞生和发展过程中,大师们设计那些知名操作系统的初始动机真是各不相同的一个操作系统成功的缘由,似乎也在于某种机遇,往往是有心裁花花不开,无心
22、插柳柳成行,未来操作系统的发展是否还会是这个模式?在Internet时代,新概念、新思想、新原理和新技术层出不穷,谁又能预测,未来会有什么样的新型操作系统在国际互联网上问世呢!,操作系统,三、操作系统的类型,个人计算机操作系统、嵌入式操作系统,操作系统,四、操作系统的结构设计 P24,1、无结构操作系统2、模块化/分层式操作系统结构 结构化程序设计思想3、微内核操作系统结构微内核技术:操作系统的小核心,它将各种操作系统共同需要的核心功能提炼出来,形成微内核的基本功能。面向对象程序设计思想:客户/服务器模式:客户:用户进程。服务器:操作系统中提供服务的进程,操作系统,微内核操作系统模型,把操作系统的内核分为微内核与服务器两个层次:微内核提供各种操作系统的公共基础:如进程管理、进程间通信、存储管理以及I/O设备管理等,常驻内存。由服务器提供各种操作系统的子系统以及用户界面。,内存服务器,网络服务器,文件服务器,微内核,硬件,客户进程,客户进程,操作系统,小 结,如何学习操作系统原理?第一章 概述 一.什么是操作系统操作系统的地位操作系统定义操作系统的作用-几大功能操作系统的四大特征 二.操作系统的发展,