【课件】操作系统概述.ppt

上传人:本田雅阁 文档编号:3030862 上传时间:2019-06-27 格式:PPT 页数:81 大小:926.01KB
返回 下载 相关 举报
【课件】操作系统概述.ppt_第1页
第1页 / 共81页
【课件】操作系统概述.ppt_第2页
第2页 / 共81页
【课件】操作系统概述.ppt_第3页
第3页 / 共81页
【课件】操作系统概述.ppt_第4页
第4页 / 共81页
【课件】操作系统概述.ppt_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《【课件】操作系统概述.ppt》由会员分享,可在线阅读,更多相关《【课件】操作系统概述.ppt(81页珍藏版)》请在三一文库上搜索。

1、操作系统的基本概念 操作系统的特征 研究操作系统的几种观点 操作系统的技术发展过程 著名的操作系统 操作系统的分类 操作系统的功能,第一章 操作系统概述,http:/ 操作系统在硬件基础上的第一层软件 是其他软件和硬件之间的接口,http:/ 是一些程序模块的集合,它们能以尽量有效、合理的方式组织和管理计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能高效地运行,http:/ (如:CPU利用的充足与否,内存、外部设备是否忙碌),合理: 公平与否,如果不公平则会产生“死锁”或“饥饿”,方便:两种角

2、度: 用户界面 编程接口,http:/ 在计算机系统中同时存在多个程序 宏观上:这些程序是同时在执行的 微观上:任何时刻只有一个程序在执行 即微观上这些程序在CPU上轮流执行 并发(单机) vs 并行(多CPU或多机),http:/ 操作系统与多个用户的程序共同使用计算机系统中的资源(共享有限的系统资源) 操作系统要对系统资源进行合理分配和使用 资源在一个时间段内交替被多个进程所用,互斥共享(如音频设备) 同时访问(如可重入代码,磁盘文件) 资源分配难以达到最优化,http:/ 一个物理实体映射为若干个对应的逻辑实体分时或分空间。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率,操作系统

3、特征(补充),CPU每个用户(进程)的“虚处理机“ 存储器每个进程都占有的地址空间(指令数据堆栈) 显示设备多窗口或虚拟终端,http:/ 操作系统必须随时对以不可预测的次序发生的事件进行响应 如何考虑周密、设计适当,操作系统特征(补充),进程的运行速度不可预知:分时系统中,多个进程并发执行,“走走停停”,无法预知每个进程的运行推进快慢 难以重现系统在某个时刻的状态(包括重现运行中的错误) 性能保证:实时系统与分时系统相似,但通过资源预留以保证性能,http:/ 外在特性: 软件是种语言,是界面 界面:使用方式 (命令,系统调用等) 内在特性: 软件的结构 a.由有几部分组成 b.每个部分的功

4、能 c.部分之间的关系,http:/ 硬件资源: CPU,内存,外部设备(I/O设备,外存,时钟,网络接口等) 软件资源: 硬盘上的文件,信息,http:/ 如 哪些资源空闲,好坏与否,被谁使用,使用多长时间等 合理的分配资源 静态分配策略 (在程序运行前分配,但效率不高) 动态分配策略 (在程序运行过程中何时用资源,何时分配。其缺点是会出现死锁) 具体完成分配 回收资源,http:/ 提高资源利用率,操作系统功能,CPU(进程)管理,存储管理,文件管理,设备管理,作业管理,-操作系统学习的主线索,http:/ 从这个观点来看: 操作系统是由一些可同时独立运行的进程和一个对这些进程进行协调的核

5、心组成,http:/ 把操作系统分成若干层 每一层完成其特定功从而构成一个虚机器,并对上一层提供支持 通过逐层功能扩充,最终完成整个操作系统虚机器 而操作系统虚机器向用户提供各种功能, 完成用户请求,http:/ 服务提供者的观点,从用户角度来看: 操作系统为用户提供一组功能强大的、方便易用的命令或系统调用,用户接口,操作系统对外提供两种接口: 系统命令:供用户用于组织和控制自己的作业运行。命令行、菜单式或GUI(联机);命令脚本(脱机) 编程接口:供用户程序和系统程序调用操作系统功能。系统调用和高级语言库函数,http:/ 仲裁者(协调者) 使多个应用程序/用户高效,公平地一起工作 保护用户

6、不互相干扰 例子:并发,存储保护,文件系统,网络,操作系统作为 管理程序 硬件平台扩展为运行平台 运行平台是承载应用程序的载体,平台之争 企业竞争的范围已经超出了市场、 资本和技术 竞争的焦点: 表面上:平台(标准) 实质上:争夺产业的制高点,http:/ 幻觉制造者(illusionist) 提供硬件的高层界面,取消硬件限制 操作系统提供无限的内存、无限的CPU,操作系统作为 管理者(government) 有效合理地分配资源,保护用户不受侵犯 提供安全、保密措施,http:/ 历史教员 学习过去,预测未来,操作系统作为 标准服务提供者 提供每个用户需要的标准工具 如标准库、窗口系统,程序创

7、建和执行 存取I/O设备 控制对文件的存取 系统存取 错误检测和回应 统计,http:/ 发展的方向:充分利用硬件 提供更好的服务,1.概述 操作系统历史划分为4个阶段,http:/ 一个用户,一次完成一个功能(计算,I/O,用户思考/反应),程序通过卡片装入 用户在控制台前调试程序,第 1 阶段 硬件非常昂贵,没有操作系统,http:/ 每一用户都要自行编写涉及到硬件的源代码 工作量大,难度高,易出错,需要大量人力和物力,http:/ 2 阶段 硬件昂贵,人力便宜 简单批处理:装入程序、运行、打印结果、撤出、再重复 用户把程序(卡片或磁带)交给负责调度的操作员(系统管理员) 常驻监控程序自动

8、地装入程序、运行、撤出作业,http:/ 在磁盘上多个作业等待运行 多道程序 - 同时运行多个作业 - 选择若干作业准备运行(调度) 并装入内存(存储管理) - 运行一个作业,当它等待时切换至内存中的另一个作业(如需安装磁带,等键按下),http:/ 多个用户共享系统,增加:存储保护,重定位 利用率高(多个作业) 有必要采用并发程序设计技术 操作系统成为研究焦点: 需要处理复杂性,http:/ MULTICS 于 1963 年开始, 直至 1969 年才发布,- IBM 的 OS/360 发布时, 带着已知的 1000 个错误,http:/ CPU负责计算,也负责传输,早期计算机的使用方式,-

9、 一个用户独占全部资源,- 浪费:CPU与外设速度不匹配 手工操作方式和高速机器之间的不匹配,http:/ 多部件并行,多任务共享,通道引入:传输和CPU相对独立 中断引入:各部件的协调动作成为可能,体系结构的发展可以支持OS,多道程序运行模式,http:/ 3 阶段 硬件较以前便宜,人力昂贵,交互式分时处理,一台计算机,多个便宜终端,- 所有用户可与系统立即交互,- 调试比较方便,http:/ 1 张穿孔卡片 = 100个字节,- 1 MB = 10K卡片,- OS/360 有若干英尺长度的卡片,http:/ 易于使用,提高人的生产力,- 合理的响应时间,- 引入文件系统,使用户可存取数据,

10、http:/ 需要抢占式调度以便保持 适当的响应时间,- 需要避免抖动(程序在内存中 过于频繁的对换),- 需要提供适用的安全检测,http:/ ( Tomson, Ritchie ) 在贝尔实验室发展出了UNIX。 (这样他们可以在一台无人使用的DEC PDP-7 小型计算机上玩星际探险游戏),http:/ Thompson,Dennis Ritchie 1983年图灵奖获得者 1999年4月 美国国家技术金奖,http:/ 4 阶段 硬件非常便宜,人力昂贵,目标: 充分利用人和时间,个人计算雏形,CPU 便宜到可在每台终端上安装,功能强大有效 - 成为大众的计算机,http:/ OS 回归

11、简单,使用户再次与系统交互,增强文件系统,响应时间、保护更为重要,网络:允许不同机器很容易共享资源 共享,安全,http:/ 变化!,意味着技术总在改变 要适应、折衷权衡,http:/ 真空管时代(1946年-1955年) 晶体管时代(1955年-1965年) 集成电路时代(1965年-1980年) 大规模集成电路时代(1980年-至今),http:/ Babbage(1792-1871)设计 Babbage投入了毕生精力 但却没能让它成功地运行起来 因为当时的技术不可能达到需要的精度 当然,这个分析机没有操作系统,http:/ 美国、英国和德国等国家 开始了电子数字计算机的研究工作 哈佛大学

12、的Howard Aiken 普林斯顿高等研究院的John Neumann(冯 诺依曼) 宾夕法尼亚大学的J.Presper Eckert和William Mauchley 德国电话公司的Konraad Zuse以及其他一些人 都使用真空管成功地建造了运算机器,真空管计算机(1945年-1955年)时期,http:/ 程序员提前预约一段时间,然后到机房将他的插件板插到计算机里 期盼着在接下来的时间中 几万个真空管不会烧断 从而可以计算自己的题目,ENIAC计算机(美国宾夕法尼亚大学),运算速度:5000次/每秒, 18000个真空管, 占地182平方米,重量130吨,功耗140kW,http:/

13、 出现了穿孔卡片 程序写在卡片上然后读入计算机 但计算过程则依然如旧,http:/ 计算机比较可靠,可成批地生产 用户可指望计算机长时间运行,完成一些工作 FORTRAN 1954年提出,1956年设计完成 ALGOL 1958年引入 COBOL 1959年引入 设计人员、生产人员、操作人员、程序人员和维护人员之间第一次有了明确的分工,http:/ 然后穿孔成卡片,再将卡片盒交给操作员 计算结果从打印机上输出 操作员到打印机上撕下运算结果送到输出室 程序员稍后可从取到结果 然后,操作员从输入室的卡片盒中读入另一个任务 如果需要FORTRAN编译器,还要把它取来读入计算机 机时在走来走去时被浪费

14、,http:/ - 现代操作系统雏型,为了改进主存和I/O设备之间的吞吐量 IBM 7094机引入了I/O 处理机概念 其思想是:在输入室收集全部的作业,用一台相对便宜的计算机 如IBM 1401计算机,将它们读到磁带上 另外用较昂贵的计算机,如IBM7094来完成真正的计算,http:/ Monitor System,FORTRAN监控系统) IBMSYS(IBM为7094机配备的操作系统) 这些操作系统由监控程序,特权指令,存储保护和简单的批处理构成,http:/ 多数厂商有几条完全不同的生产线,生产不同的计算机 开发和维护完全不同的产品,对厂商来说是昂贵的 另外,新用户,在开始时只需要一

15、台小计算机 后来可能需要一台大的计算机 而且希望能在新计算机上执行原有的程序 这样,厂家和用户需要软件在不同型号的计算机之间兼容,http:/ 年IBM 宣布推出System/360计算机系统 第一个采用小规模集成电路的主流机型 试图一次性地解决上述两个问题 由于所有的计算机 都有相同的体系结 构和指令集 在理论上,为一型 号编写的程序可以 在其他型号机器上 运行,http:/ System/360的若干问题,IBM无法写出同时满足互冲突需要的操作系统 其实别人也一样不能完成这项工作任务 IBM OS/360文件系统中有类型字段,定义文件的类型,有定长、不定长记录、块状和非块状文件 用户对于输

16、出文件的大小,只有通过猜测 存储管理有基地址寄存器寻址方式,程序也可以访问和修改基地址寄存器,但是CPU生成的却是绝对地址,虽然不用进行动态再分配 但程序却被钉死在调入内存时的物理地址上,http:/ System/360, 庞大的软件怪兽,数千名程序员写的数百万行汇编语言代码 系统自身占据了大量存储空间和一半的CPU时间 数百万行汇编代码中有成千上万处错误 IBM不断发行新的版本试图更正这些错误 每个新版本在更正老错误的同时又引入新错误 所以随着时间的流逝,错误的数量大致保持不变,http:/ 7094机上,若当前作业因等待I/O而暂停, CUP只能踏步直至该I/O完成 对于CPU操作密集科

17、学计算问题,浪费时间少 对于商业数据处理,I/O等待时间常占8090 解决办法 将内存分几个部分,每部分放不同的作业 当一个作业等待I/O时,另一个作业可以使用CPU 在主存中同时驻留多个作业需要硬件进行保护 以避免信息被窃取或攻击,http:/ 技术,程序卡片被拿到机房后 能够很快将一作业从卡片读入磁盘 任何时刻当一作业运行结束 操作系统就将一新作业从磁盘读出 装入空出的内存区运行 Spooling技术 (Simultaneous Peripheral Operation On Line) 该技术也用于输出,http:/ 而从一作业提交到结果取回, 往往长达数小时 一个逗号的误用会导致编译失

18、败 而可能浪费程序员半天时间 问题的解决导致分时系统的出现 (CTSS,Compatible Time Sharing System) 分时系统实际上是多道程序的一个变种,http:/ 每个用户有一个联机终端 在分时系统中,假设20个用户登录 其中17个在思考或谈论或喝咖啡 则CPU可给那三个需要的作业轮流分配服务 调试程序的用户常常只发出简短的命令 而很少有长的费时命令 所以计算机能够为许多用户提供交互式快速服务 同时在CPU空闲时还能在后台运行大作业,http:/ MIT的Fernando Corbato 等 1961年在一改装的IBM 7090/94机上开发成功 当时有32个交互式用户

19、IBM 7090/94计算机有32K内存,系统用5K,用户用27K,用户存储映象在内存和一台磁鼓之间切换 1962年Manchester大学的Atlas计算机投入运行 运行速度200 kFLOPS 第一个有虚拟存储器(virtual memory)和页面调度(paging) 的机器 指令执行是管道式(pipelined)的,http:/ 希望能够同时支持整个波士顿所有的分时用户。该系统称作MULTICS (MULTiplexed Information and Computing Service ) MULTICS设计目标是:便利的远程终端使用,大量终端通过电话线接入计算机主机 高可靠的大型文

20、件系统;大容量的用户信息共享;存储和构造层次化信息结构的能力,http:/ 长期研制工作达不到预期目标,1969年4月贝尔实验室退出,通用电气公司也退出了 但最终,经过多年的努力,MULTICS成功地应用 运行MULTICS的计算机系统在九十年代中陆续被关闭 MULTICS引入了许多现代操作系统领域概念雏形,对随后操作系统特别是UNIX的成功有着巨大的影响,http:/ Thompson和Dennis M. Ritchie 想申请经费买计算机从事操作系统研究,但多次申请得不到批准 项目无着落,他们在一台无人用的PDP-7上,重新摆弄原先在MULTICS项目上设计的“空间旅行”游戏 为了使游戏能

21、够在PDP-7上顺利运行,他们陆续开发了浮点运算软件包、显示驱动软件,设计了文件系统、实用程序、shell 和汇编程序 到了1970年,在一切完成后,给新系统起了个同MULTICS发音相近的名字UNIX 随后,UNIX用C语言全部重写,自此,UNIX诞生了,http:/ 促使UNIX系统成功的因素: 首先,由于UNIX是用C语言编写,因此它是可移植的,UNIX 是世界上唯一能在笔记本计算机、PC机、工作站直至巨型机上运行的操作系统 第二,系统源代码非常有效,系统容易适应特殊的需求 最后,也是最重要的一点,它是一个良好的、通用的、多用户、多任务、分时操作系统,http:/ 操作系统 随着大规模集

22、成电路发展,个人计算机时代到来了各种类型的个人计算机和软件层出不穷 1973年Gary Kildall看到对个人计算机操作系统的需求,设计了CP/M操作系统(Control Program/Microprocessor or Microcomputer) CP/M操作系统有较好的层次结构。它的BIOS把操作系统的其他模块与硬件配置分隔开,所以它的可移植性好, 具有较好的可适应性和易学易用性 到了1981年,CP/M操作系统成为世界上流行最广的8位操作系统之一,http:/ DOS,个人计算机的成功,逼得IBM采取紧急战略行动,决定要在1980年尽快生产出微型计算机,以应付挑战 但没有操作系统不

23、行。要想快就是找现成系统配套,IBM公司洽谈 CP/M操作系统不顺利,机遇落到了微软公司 在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的QDOS操作系统的协议 当时西雅图公司并不知道QDOS将被转卖给IBM,否则历史将会怎样演变,谁也无法知晓,http:/ 随着IBM PC和MS DOS普及,CP/M逐渐走向下坡路 MS DOS有优良的文件系统 但受到Intel x86体系结构的限制 缺乏以硬件为基础的存储保护机制 它属于单用户单任务操作系统 从1981的 1.0版到1998年在Windows 95/98之下的7.0版,MS

24、 DOS历经了16个年头 迄今仍有MS DOS爱好者继续开发各种DOS软件产品,http:/ OS),在推出IBM PC机后,市场卷起一股龙卷风 IBM自己也没有料到产品会有如此巨大的成功 IBM的成功说明必有其他公司失败。甚至连苹果公司也遇到了问题,销售数量落到了兰色巨人的后面 苹果公司推出Lisa机遭到失败,Apple III型也遭到失败 分析家们认为,在微机市场上的战斗似乎兰色巨人要嬴了,http:/ Alto研究中心 -70年代的计算机研究思想库,世界上第一台个人计算机Alto,1972年在这里出现 图形界面,手持鼠标,面向对象程序设计 微机网络,桌面出版和激光打印等等 具有先进概念和

25、技术的原型都首次出现在这里,http:/ 作为回报,施乐公司允许苹果公司的少数人员,包括乔布斯,在有限的时间内考察施乐公司Palo Alto研究中心内部,并同该思想库的研究人员交谈 苹果公司对Palo Alto研究中心内的技术大感吃惊 他们更吃惊的是,施乐公司在拥有这些宝贵技术的同时竟然什么也没有做!,http:/ Alto研究中心这些科学家们而言,苹果公司的人是他们第一次遇到真正理解他们技术的人 这些科学家们后来有的去了苹果公司,微软公司,有的最终创办了自己的公司 在访问的基础上,苹果决定立即开发采用这些新技术的个人计算机 苹果公司已看到 IBM PC机的技术有多么糟糕,但他们卖得又是特别的

26、好,http:/ OS、鼠标的新型个人计算机,1984年,人们看到一则广告:“What was that?”和对Macintosh的介绍, 这是配有图形界面操作系统 MAC OS和鼠标的新型个人计算机 MAC机一上市立即在市场上获得极大的成功 当年比尔.盖茨都说,这是一台他的妈妈也能使用的计算机 Macintosh把苹果公司从连续的失败中拯救出来 苹果公司又开始向前发展 正是Mac先进图形界面操作系统技术,超前PC机若干年,造就了一批苹果的忠实追随者,http:/ 面对市场压力,比尔.盖茨在1983年11月10日宣布推出Windows操作系统 然而宣布容易,交货就不简单了,Windows交货期

27、的灾难,成了当年计算机界的笑柄 直到1985年11月20日,Windows 1.0才正式上市,http:/ 不过几年之后,Windows终于创造了销售成绩最佳的历史记录 1992年4月,推出Windows 3.1, 1993年5月,发表Windows NT Windows 95,Windows CE,Windows 98,Windows 2000,Windows XP,.net 个人计算机采用Windows占90以上,微软公司成了垄断PC行业的同义词,http:/ 操作系统 系统设计者之一Richard Rashid 移居到CMU后,在DARPA支持下,1984年开始了Mach的开发 希望Ma

28、ch能与UNIX兼容,运行线程,更好的进程通信机制,支持多处理机及好的虚拟存储系统 Mach第一个版本是1986年为VAX 11/784四CPU多处理机发布 1988年的Mach 2.5版包含了大量的BSD UNIX的代码 1989年,Mach 内核中去掉了所有的BSD UNIX的代码,剩下了一个纯的Mach微内核,这就是Mach 3.0版本,它是OSF发布的基础,http:/ 微内核、线程、进程间消息传递和面向对象的设计方法等等 在Mach的基础上,有不少用于微处理器、多处理器以及超级计算机的操作系统和实时嵌入式操作系统陆续设计和开发出来,如OSF/1,DCE Unix, NeXT等等,ht

29、tp:/ 三十年的改进,IBM S/390已成为有高可靠性、可扩展性、及安全可用性的现代大型计算机系统 支持即UNIX 95标准,UNIX应用程序可在IBM OS/390上运行 同时还可继续运行S/390应用程序,包括S/370上开发的应用程序 包括TCP/IP的多种通信协议,具有高网络安全性 采用面向对象程序设计、并行处理、分布式处理以及客户机/服务器技术,具有较强的互操作性、可移植性与可扩展性,http:/ S/370本机模式,支持原先在S/370运行的程序 ESA/390模式,支持到10个240M处理器内存和256个通道 ESA/390 LPAR模式,系统可分成最多十个部分,每个部分有自

30、己的CPU,存储器和通道,且分别运行不同的操作系统,如S/370, ESA/370 和ESA/390等 在PC机时代,人们曾经估计大型计算机会衰亡 IBM S/390是大型计算机复活的一个典型 那么,在21世纪的Internet和后PC的时代,大型机还会有什么演化,只有让时间来说明,http:/ ANSI C和TCP/IP网络协议 VxWorks运行系统的核心是一高效率的微内核 微内核支持各种实时功能,包括快速多任务处理,中断支持,抢占式和轮转式调度 微内核设计减轻了系统负载并可快速响应外部事件 从只需几千字节存储器的深嵌式产品设计到复杂高端实时系统设计,开发人员有八十多个选件并可构成上百个不

31、同的配置,http:/ 9x,Windows NT, Sun Solaris, SunOS, HP-UX等 支持目标微处理器:86, 68k, PPC, CPU 32, i960, SPARC, SPARCLite, SH, ColdFire, R3000, R4000, C16X, ARM, MIPS等 在“极地登陆者”号,“深空二号”和火星气候轨道器等登陆火星探测器上,就采用了VxWorks VxWorks负责火星探测器全部飞行控制,包括飞行纠正、载体自旋和降落时的高度控制等,而且还负责数据收集和与地球的通信工作 目前在国内也占据嵌入式开发系统市场主要份额,http:/ Linus需要终端

32、仿真程序来存取Usenet新闻组的内容,于是他写了从调制解调器上接发信息的程序以及显示器、键盘和调制解调器的驱动程序 然后写了磁盘驱动程序,文件系统,一旦有了进程切换、文件系统和设备驱动程序,当然就拥有了一个操作系统原型,或者至少是它的一个内核 Linux就以这样极其古怪但也极其自然式问世,http:/ PowerTV 移动通信领域,EPOC 掌上计算机领域,Palm OS 数字影像领域, Digita,http:/ 犹他州大学的OSKit,提供构造操作系统所需的基础构件,也提供高层次构件。OSKit可用来构造新的OS MIT Exokernel,该系统只有一个极小的核。系统抽象通过Libra

33、ry Operating System完成 加州大学伯克利分校NOW集群操作系统,100台Ultra SPARC-I处理机集群,排名于世界最快的200台超级计算机之内 NASA空间飞行中心(GSFC)研制Beowulf项目开始于1994年,用商业化的微型计算机,Linux和以太网等构造集群。已有世界各地的约六十个大学和研究机构在使用,http:/ Internet普及,Linux的成功,极大地推动了当代操作系统的研究发展活动 据不完全统计,当前在Internet上,有超过100个操作系统的项目在14个国家中进行着 一批批的程序设计员们自愿通过互联网组织成为研究小组,从事着各类操作系统的研究开发工作,http:/ 一个操作系统成功的缘由,似乎也在于某种机遇,往往是有心裁花花不开,无心插柳柳成行 未来操作系统的发展是否还会是这个模式? 在Internet时代,新概念、新思想、新原理和新技术层出不穷 谁又能预测,未来会有什么样的新型操作系统在国际互联网上问世呢!,思考和回顾(续1),http:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1