《Linux操作系统分析与实践操作系统概述.pptx》由会员分享,可在线阅读,更多相关《Linux操作系统分析与实践操作系统概述.pptx(106页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、几个问题几个问题 什么是操作系统?解决什么问题?什么是操作系统?解决什么问题? 学到哪些原理?学到哪些原理? 设计处理器时,如何对操作系统支持?设计处理器时,如何对操作系统支持? 有硬件、软件(应用软件),实现一个功能有硬件、软件(应用软件),实现一个功能应该放在哪里?如果放在操作系统中,应该应该放在哪里?如果放在操作系统中,应该放在何处?内核或库?放在何处?内核或库? UNIXUNIX的缺点?如果你要重新设计,怎么做?的缺点?如果你要重新设计,怎么做? 一个一个WebWeb请求是怎么走的?(请求是怎么走的?(OSOS怎样接?)怎样接?)几个问题(续)几个问题(续) 描述中断响应过程,说明操作
2、系统对这描述中断响应过程,说明操作系统对这一过程的支持。一过程的支持。 谈谈谈谈TLBTLB的作用、特点和内容。的作用、特点和内容。 为什么引入工作集模型?软件开发人员为什么引入工作集模型?软件开发人员在编程时怎样考虑?在编程时怎样考虑? 设计一个多级目录结构,要求目录检索设计一个多级目录结构,要求目录检索速度快,请给出设计方案。速度快,请给出设计方案。操作系统做什么?操作系统做什么? #include int main(int argc, char *argv) puts(hello world); return 0; 用户告诉操作系统执行用户告诉操作系统执行hellohello程序程序 操
3、作系统找到该程序,检查其类型操作系统找到该程序,检查其类型 检查程序首部,找出正文和数据的地址检查程序首部,找出正文和数据的地址 文件系统找到第一个磁盘块文件系统找到第一个磁盘块 父进程需要创建一个新的子进程,执行父进程需要创建一个新的子进程,执行hellohello程序程序 操作系统需要将执行文件映射到进程结构操作系统需要将执行文件映射到进程结构 操作系统设置操作系统设置CPUCPU上下文环境,并跳到程序开始处上下文环境,并跳到程序开始处 程序的第一条指令执行,失败,缺页中断发生程序的第一条指令执行,失败,缺页中断发生 操作系统分配一页内存,并将代码从磁盘读入,继续执行操作系统分配一页内存,
4、并将代码从磁盘读入,继续执行 更多的缺页中断,读入更多的页面更多的缺页中断,读入更多的页面 操作系统检查字符串的位置是否正确操作系统检查字符串的位置是否正确 操作系统找到字符串被送往的设备操作系统找到字符串被送往的设备 设备是一个伪终端,由一个进程控制设备是一个伪终端,由一个进程控制 操作系统将字符串送给该进程操作系统将字符串送给该进程 该进程告诉窗口系统它要显示字符串该进程告诉窗口系统它要显示字符串 窗口系统确定这是一个合法的操作,然后将字符串转换窗口系统确定这是一个合法的操作,然后将字符串转换成像素成像素 窗口系统将像素写入存储映像区窗口系统将像素写入存储映像区 视频硬件将像素表示转换成一
5、组模拟信号控制显示器视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕)(重画屏幕) 显示器发射电子束显示器发射电子束 你在屏幕上看到你在屏幕上看到hello worldhello world 程序执行系统调用,在文件描述符中写一字符串程序执行系统调用,在文件描述符中写一字符串本讲主要内容本讲主要内容 操作系统在计算机系统中的地位操作系统在计算机系统中的地位 操作系统的定义、特征和功能操作系统的定义、特征和功能 操作系统的发展历史及分类操作系统的发展历史及分类 操作系统的内核体系结构模型操作系统的内核体系结构模型 Linux的特点及发展简史的特点及发展简史 Linux内核的结构及主要组成
6、部分内核的结构及主要组成部分 一、操作系统在计算机系统中的地位一、操作系统在计算机系统中的地位 计算机系统包括计算机系统包括硬件(子)系统硬件(子)系统和和软件(子)系统软件(子)系统。 操作系统属于计算机系统软件(子)系统中的系操作系统属于计算机系统软件(子)系统中的系统软统软件件,是紧密接近硬件的,是紧密接近硬件的第一层软件第一层软件,是对硬件功能的,是对硬件功能的首次扩充,其他软件则是建立在操作系统之上的。首次扩充,其他软件则是建立在操作系统之上的。 各种软件在操作系统的统一管理和支持下运行。各种软件在操作系统的统一管理和支持下运行。 计算机系统计算机系统 操作系统是计算机系统中软件技术
7、含量最大、操作系统是计算机系统中软件技术含量最大、附加值最高的部分,是软件(子)系统的核心,附加值最高的部分,是软件(子)系统的核心,是是软件的基础运行平台软件的基础运行平台。操作系统实际上是一个计算机系统中操作系统实际上是一个计算机系统中硬、软件资源硬、软件资源的总指挥部的总指挥部 。操作系统的性能高低,决定了整个计算机的操作系统的性能高低,决定了整个计算机的潜在硬潜在硬件性能件性能能否发挥出来。能否发挥出来。 操作系统本身的安全可靠程度,决定了整个计算机操作系统本身的安全可靠程度,决定了整个计算机系统的系统的安全性和可靠性安全性和可靠性。 操作系统设计者操作系统设计者应用软件设计者应用软件
8、设计者二、操作系统的定义、特征和功能二、操作系统的定义、特征和功能 操作系统的定义操作系统的定义 操作系统的特征操作系统的特征 操作系统的功能操作系统的功能2.1 操作系统的定义操作系统的定义 定义:定义:操作系统是计算机系统中的一个系统软件,它是这操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合样一些程序模块的集合它们能它们能有效有效地组织和管地组织和管理计算机系统中的硬件及软件资源,理计算机系统中的硬件及软件资源,合理合理地组织计地组织计算机工作流程,控制程序的执行,并向用户提供各算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、种服务功能,使得用户
9、能够灵活、方便方便、有效地使、有效地使用计算机,并使整个计算机系统能高效地运行。用计算机,并使整个计算机系统能高效地运行。 操作系统的任务之一是操作系统的任务之一是组织和管理计算机系统组织和管理计算机系统中的硬件及软件资源中的硬件及软件资源。 操作系统另一项重要任务是操作系统另一项重要任务是向用户提供各种服向用户提供各种服务功能务功能。 2.2 操作系统的特征操作系统的特征并发(并发(concurrencyconcurrency):): 处理多个同时性活动的能力处理多个同时性活动的能力在计算机系统中同时存在多个程序在计算机系统中同时存在多个程序宏观上:这些程序是同时在执行的宏观上:这些程序是同
10、时在执行的微观上:任何时刻只有一个程序在执行(单微观上:任何时刻只有一个程序在执行(单CPUCPU) 即微观上这些程序在即微观上这些程序在CPUCPU上轮流执行上轮流执行并行(并行(parallelparallel):( (与并发相似,但多指硬件支与并发相似,但多指硬件支持)持)由并发引起的问题由并发引起的问题:活动切换、保护、相互依赖:活动切换、保护、相互依赖的活动间的同步的活动间的同步操作系统特征(续)操作系统特征(续)共享(共享(sharingsharing):): 操作系统与多个用户的程序共同使用计算操作系统与多个用户的程序共同使用计算机系统中的资源(共享有限的系统资源)机系统中的资源
11、(共享有限的系统资源) 操作系统要对系统资源进行合理分配和使用操作系统要对系统资源进行合理分配和使用 资源在一个时间段内交替被多个进程所用资源在一个时间段内交替被多个进程所用 互斥共享(如音频设备)互斥共享(如音频设备) 同时访问(如可重入代码,磁盘文件)同时访问(如可重入代码,磁盘文件) 资源分配难以达到最优化资源分配难以达到最优化虚拟(虚拟(VirtualVirtual):): 一个物理实体映射为若干个对应的逻辑实体一个物理实体映射为若干个对应的逻辑实体分时或分空间。虚拟是操作系统管理系统资分时或分空间。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率源的重要手段,可提高资源利用率操
12、作系统特征(续)操作系统特征(续) CPU CPU每个用户(进程)的每个用户(进程)的 虚处理机虚处理机 存储器每个进程都占有的地址空间(指令存储器每个进程都占有的地址空间(指令数据堆栈)数据堆栈) 显示设备多窗口或虚拟终端显示设备多窗口或虚拟终端随机性:随机性: 操作系统必须随时对以不可预测的次操作系统必须随时对以不可预测的次序发生的事件进行响应序发生的事件进行响应操作系统特征(续)操作系统特征(续) 进程的运行速度不可预知:分时系统中,多个进程并发进程的运行速度不可预知:分时系统中,多个进程并发执行,执行,“走走停停走走停停”,无法预知每个进程的运行推进快慢,无法预知每个进程的运行推进快慢
13、 难以重现系统在某个时刻的状态(包括重现运行中的错难以重现系统在某个时刻的状态(包括重现运行中的错误)误)不确定性:不确定性: 由共享和并发引起由共享和并发引起 在操作系统中可运行多道用户程序,而每个用户程序在操作系统中可运行多道用户程序,而每个用户程序的运行时间、要使用哪些系统资源、使用多长时间、使的运行时间、要使用哪些系统资源、使用多长时间、使用的资源是共享还是独占的,操作系统在程序运行前是用的资源是共享还是独占的,操作系统在程序运行前是不知道的不知道的 要求操作系统的设计要很好地解决并发和共享的问题,要求操作系统的设计要很好地解决并发和共享的问题,否则,将会产生不可重现的错误,这种不可重
14、现的错误否则,将会产生不可重现的错误,这种不可重现的错误称为不确定性称为不确定性 例子:两个用户共享一台打印机例子:两个用户共享一台打印机操作系统特征(续)操作系统特征(续)2.3 操作系统的功能操作系统的功能 进程管理进程管理进程管理的实质是对进程管理的实质是对CPUCPU进行管理,所以进程管理往往又被称进行管理,所以进程管理往往又被称为处理器管理。为处理器管理。 存储管理存储管理 存储管理的任务是管理计算机内存的资源。存储管理的任务是管理计算机内存的资源。 文件管理文件管理有效地支持文件的存储、检索和修改等操作,解决文件的共有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护
15、问题,以使用户方便、安全地访问文件。享、保密和保护问题,以使用户方便、安全地访问文件。 设备管理设备管理 负责外部设备的分配、启动和故障处理,用户不必详细了解负责外部设备的分配、启动和故障处理,用户不必详细了解设备及接口的技术细节,就可以方便地通过操作系统提供的设备及接口的技术细节,就可以方便地通过操作系统提供的设备管理手段,对设备进行操作。设备管理手段,对设备进行操作。 三、操作系统的发展历史及分类三、操作系统的发展历史及分类 操作系统如同任何其他事物一样,也有它的操作系统如同任何其他事物一样,也有它的诞诞生、成长和发展生、成长和发展的过程。的过程。手工操作手工操作; ;监控程序(早期批处理
16、)监控程序(早期批处理) ; ;多道批处理多道批处理 ; ;分时与实时系统分时与实时系统 ; ;UNIXUNIX通用操作系统通用操作系统 ; ;个人计算机操作系统个人计算机操作系统 ; ;当代操作系统的两大发展方向当代操作系统的两大发展方向宏观应用与微观宏观应用与微观应用应用 . .操作系统的发展操作系统的发展操作系统发展是随着计算机硬件技术、应用软操作系统发展是随着计算机硬件技术、应用软件的发展而发展的件的发展而发展的目标:充分利用硬件目标:充分利用硬件 提供更好的服务提供更好的服务大型机 PC机 后PC时代历史上的操作系统历史上的操作系统随历史线索,介绍一些重要的操作系统随历史线索,介绍一
17、些重要的操作系统 FMSFMS(FORTRAN Monitor SystemFORTRAN Monitor System)和)和IBSYSIBSYS (IBMIBM为为70947094配备的操作系统)配备的操作系统) OS/360OS/360(IBMIBM为系列机为系列机360360配备的操作系统)配备的操作系统) CTSSCTSS(Compatible Time Sharing SystemCompatible Time Sharing System) MULTICSMULTICS(MULTiplexed Information and MULTiplexed Information and
18、 Computer ServiceComputer Service) UNIXUNIX类、类、LinuxLinux CP/M CP/M 历史上的操作系统历史上的操作系统 MS-DOSMS-DOS、Windows 3.1/95/98/MeWindows 3.1/95/98/Me、Windows Windows NTNT、Windows 2000/XPWindows 2000/XP、 Windows CEWindows CE、 Windows Server 2003Windows Server 2003 MacintoshMacintosh OS/390OS/390 MachMach VxWork
19、sVxWorks 嵌入式领域嵌入式领域 国产操作系统国产操作系统 研究型操作系统研究型操作系统卡片卡片早期批处理系统早期批处理系统IBM1401IBM7094IBM1401输入磁带输入磁带磁带机磁带机卡片阅读机卡片阅读机输出磁带输出磁带打印机打印机典型的操作系统典型的操作系统FMSFMS(FORTRAN Monitor SystemFORTRAN Monitor System,FORTRANFORTRAN监控监控系统)系统)IBMSYSIBMSYS(IBMIBM为为70947094机配备的操作系统)机配备的操作系统)这些操作系统由监控程序,特权指令,存储保这些操作系统由监控程序,特权指令,存储
20、保护和简单的批处理构成护和简单的批处理构成OS/360OS/360操作系统操作系统 2020世纪世纪6060年代初期,计算机开始采用集成电路,多年代初期,计算机开始采用集成电路,多数厂商有几条完全不同的生产线,生产不同的计算数厂商有几条完全不同的生产线,生产不同的计算机机 开发和维护完全不同的产品,对厂商来说是昂贵的开发和维护完全不同的产品,对厂商来说是昂贵的 新的用户在开始时只需要一台小计算机,后来可能新的用户在开始时只需要一台小计算机,后来可能需要一台大的计算机,并希望能在新计算机上执行需要一台大的计算机,并希望能在新计算机上执行原有的程序原有的程序 厂家和用户需要软件在不同型号的计算机之
21、间兼容厂家和用户需要软件在不同型号的计算机之间兼容 1964 1964 年年IBM IBM 宣布推出宣布推出System/360System/360计算机系统计算机系统 第一个采用小规模集成电路的主流机型第一个采用小规模集成电路的主流机型 试图一次性地解决上述问题试图一次性地解决上述问题 由于所有的计算机由于所有的计算机 都有相同的体系结都有相同的体系结 构和指令集构和指令集 在理论上,为一型在理论上,为一型 号编写的程序可以号编写的程序可以 在其他型号机器上在其他型号机器上 运行运行OS/360操作系统IBM System/360IBM System/360的若干问题的若干问题 IBMIBM
22、无法写出同时满足互冲突需要的操作系统无法写出同时满足互冲突需要的操作系统 其实别人也一样不能完成此项任务其实别人也一样不能完成此项任务 IBM OS/360IBM OS/360文件系统中有类型字段,定义文件的类文件系统中有类型字段,定义文件的类型,有定长、不定长记录、块状和非块状文件型,有定长、不定长记录、块状和非块状文件 用户对于输出文件的大小,只有通过猜测用户对于输出文件的大小,只有通过猜测 存储管理有基地址寄存器寻址方式,程序也可以访存储管理有基地址寄存器寻址方式,程序也可以访问和修改基地址寄存器,但是问和修改基地址寄存器,但是CPUCPU生成的却是绝对生成的却是绝对地址,虽然不用进行动
23、态再分配地址,虽然不用进行动态再分配 但程序却被但程序却被“钉死钉死”在调入内存时的物理地址上在调入内存时的物理地址上IBM System/360, IBM System/360, 庞大的软件怪兽庞大的软件怪兽 数千名程序员写的数百万行汇编数千名程序员写的数百万行汇编语言代码语言代码 系统自身占据了大量存储空间和系统自身占据了大量存储空间和一半的一半的CPUCPU时间时间 数百万行汇编代码中有成千上万数百万行汇编代码中有成千上万处错误处错误 IBMIBM不断发行新的版本试图更正不断发行新的版本试图更正这些错误这些错误 每个新版本在更正老错误的同时每个新版本在更正老错误的同时又引入新错误又引入新
24、错误 随着时间的流逝,错误的数量大随着时间的流逝,错误的数量大致保持不变致保持不变 分时系统的思想分时系统的思想19591959年在年在MITMIT提出提出 每个用户有一个联机终端每个用户有一个联机终端 在分时系统中,假设在分时系统中,假设2020个用户登录个用户登录 其中其中1717个在思考或谈论或喝咖啡个在思考或谈论或喝咖啡 则则CPUCPU可分配给那三个需要的作业(轮流服务)可分配给那三个需要的作业(轮流服务) 调试程序的用户常常只发出简短的命令调试程序的用户常常只发出简短的命令 很少有长的费时命令很少有长的费时命令 计算机能够为许多用户提供交互式、快速服务计算机能够为许多用户提供交互式
25、、快速服务 同时在同时在CPUCPU空闲时还能在后台运行大作业空闲时还能在后台运行大作业第一个分时操作系统第一个分时操作系统CTSSCTSS 第一个分时系统(第一个分时系统(CTSSCTSS)由)由 MITMIT的的Fernando Fernando Corbato Corbato 等等19611961年在一改装的年在一改装的IBM 7090/94IBM 7090/94机上开机上开发成功(有发成功(有3232个交互式用户)个交互式用户) IBM 7090/94IBM 7090/94计算机有计算机有32K32K内存,系统用内存,系统用5K5K,用户用,用户用27K27K,用户存储映象在内存和一台
26、磁鼓之间切换,用户存储映象在内存和一台磁鼓之间切换 19621962年年ManchesterManchester大学的大学的AtlasAtlas计算机投入运行计算机投入运行 运行速度运行速度200 kFLOPS200 kFLOPS 第一个有虚拟存储器第一个有虚拟存储器(virtual memory)(virtual memory)和页面调度和页面调度(paging) (paging) 的机器的机器 指令执行是指令执行是 pipelined pipelined 的的MULTICSMULTICS的灾难的灾难 19651965年在年在ARPAARPA的支持下的支持下MITMIT、贝尔实验室和、贝尔实
27、验室和通用电气公司决定开发一种通用电气公司决定开发一种“公用公用计算服务计算服务系统系统”, 希望能够同时支持整个波士顿所希望能够同时支持整个波士顿所有的分时用户。该系统称作有的分时用户。该系统称作MULTICS MULTICS (MULTiplexed Information and (MULTiplexed Information and Computing Service )Computing Service ) MULTICSMULTICS设计目标是:设计目标是: 便利的终端使用便利的终端使用大量远程终端通过电话大量远程终端通过电话线接入计算机主机线接入计算机主机 高可靠的大型文件系统
28、高可靠的大型文件系统大容量的用户信大容量的用户信息共享;存储和构造层次化信息结构的能力息共享;存储和构造层次化信息结构的能力 MULTICSMULTICS研制难度超出所有人的预料(研制难度超出所有人的预料(PL/1PL/1语言)语言) 长期研制工作达不到预期目标,长期研制工作达不到预期目标,19691969年年4 4月贝尔实月贝尔实验室退出,通用电气公司也退出验室退出,通用电气公司也退出 最终,最终,MITMIT坚持下来,坚持下来,MULTICSMULTICS成功运行,成为商业成功运行,成为商业产品(通用汽车、福特、美国国家安全局等)产品(通用汽车、福特、美国国家安全局等) 运行运行MULTI
29、CSMULTICS的计算机系统在九十年代中陆续被关的计算机系统在九十年代中陆续被关闭(闭(加拿大国防部于加拿大国防部于2000年年10月月30日日17:08) MULTICSMULTICS的意义的意义 引入了许多现代操作系统领域概念雏形,对随后的引入了许多现代操作系统领域概念雏形,对随后的操作系统特别是操作系统特别是UNIXUNIX的成功有着巨大的影响的成功有着巨大的影响 MULTICSMULTICS小型计算机,电子游戏和小型计算机,电子游戏和UNIXUNIX的成功的成功 19691969年,在贝尔退出年,在贝尔退出MULTICSMULTICS研制项目后,研制项目后,Ken ThompsonK
30、en Thompson和和Dennis M. Ritchie Dennis M. Ritchie 想申请经费买计算机从事操作系统研想申请经费买计算机从事操作系统研究,但多次申请得不到批准究,但多次申请得不到批准 项目无着落,他们在一台无人用的项目无着落,他们在一台无人用的PDP-7PDP-7上,重新摆弄原先上,重新摆弄原先在在MULTICSMULTICS项目上设计的项目上设计的“空间旅行空间旅行”游戏游戏 为了使游戏能够在为了使游戏能够在PDP-7PDP-7上顺利运行,他们陆续开发了浮点上顺利运行,他们陆续开发了浮点运算软件包、显示驱动软件,设计了文件系统、实用程序、运算软件包、显示驱动软件,
31、设计了文件系统、实用程序、shell shell 和汇编程序和汇编程序 到了到了19701970年,在一切完成后,给新系统起了个同年,在一切完成后,给新系统起了个同MULTICSMULTICS发发音相近的名字音相近的名字UNIXUNIX 随后,随后,UNIXUNIX用用C C语言全部重写,自此,语言全部重写,自此,UNIXUNIX诞生了诞生了UNIXUNIX UNIXUNIX是现代操作系统的代表。是现代操作系统的代表。UnixUnix运行时的安全性、可靠性运行时的安全性、可靠性以及强大的计算能力赢得广大用户的信赖以及强大的计算能力赢得广大用户的信赖促使促使UNIXUNIX系统成功的因素:系统成
32、功的因素: 首先,由于首先,由于UNIXUNIX是用是用C C语言编写,因此它是可移植的,语言编写,因此它是可移植的,UNIX UNIX 是世界上唯一能在笔记本计算机、是世界上唯一能在笔记本计算机、PCPC机、工作站直至巨型机机、工作站直至巨型机上运行的操作系统上运行的操作系统 第二,系统源代码非常有效,系统容易适应特殊的需求第二,系统源代码非常有效,系统容易适应特殊的需求 最后,也是最重要的一点,它是一个良好的、通用的、多用最后,也是最重要的一点,它是一个良好的、通用的、多用户、多任务、分时操作系统户、多任务、分时操作系统UNIXUNIX 两个版本系列两个版本系列 AT&T System V
33、AT&T System V BSD BSD(Berkeley Software DistributionBerkeley Software Distribution) MINUXMINUX VAX VAX (DECDEC公司)公司) 其他其他CP/M CP/M 操作系统操作系统 随着大规模集成电路发展,个人计算机时代到来随着大规模集成电路发展,个人计算机时代到来 各种类型的个人计算机和软件层出不穷各种类型的个人计算机和软件层出不穷 19731973年年Gary KildallGary Kildall看到对个人计算机操作系统的看到对个人计算机操作系统的需求需求, ,设计了设计了CP/MCP/M操
34、作系统操作系统(Control (Control Program/Microprocessor or Microcomputer)Program/Microprocessor or Microcomputer) CP/MCP/M操作系统有较好的层次结构。它的操作系统有较好的层次结构。它的BIOSBIOS把操作把操作系统的其他模块与硬件配置分隔开,所以它的可移系统的其他模块与硬件配置分隔开,所以它的可移植性好植性好, , 具有较好的可适应性和易学易用性具有较好的可适应性和易学易用性 到了到了19811981年,年,CP/MCP/M操作系统成为世界上流行最广的操作系统成为世界上流行最广的8 8位操
35、作系统之一位操作系统之一微软微软MS DOSMS DOS 个人计算机的成功,逼得个人计算机的成功,逼得IBMIBM采取紧急战略行动采取紧急战略行动, ,决决定要在定要在19801980年尽快生产出微型计算机,以应付挑战年尽快生产出微型计算机,以应付挑战 但没有操作系统不行。要想快就是找现成系统配套,但没有操作系统不行。要想快就是找现成系统配套,IBMIBM公司洽谈公司洽谈 CP/MCP/M操作系统不顺利,机遇落到了微操作系统不顺利,机遇落到了微软公司软公司 在关键时刻,开发新操作系统时间和人手上已经不在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微可能,
36、微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的软经销西雅图计算机产品公司的QDOSQDOS操作系统的协操作系统的协议议 当时西雅图公司并不知道当时西雅图公司并不知道QDOSQDOS将被转卖给将被转卖给IBMIBM,否,否则历史将会怎样演变,谁也无法知晓则历史将会怎样演变,谁也无法知晓 IBMIBM在在19811981年推出个人计算机,宣布了年推出个人计算机,宣布了DOSDOS操作系操作系统统 随着随着IBM PCIBM PC和和MS DOSMS DOS普及,普及,CP/MCP/M逐渐走向下坡路逐渐走向下坡路 MS DOSMS DOS有优良的文件系统有优良的文件系统 但受到但
37、受到Intel x86Intel x86体系结构的限制体系结构的限制 缺乏以硬件为基础的存储保护机制缺乏以硬件为基础的存储保护机制 它属于它属于单用户单任务操作系统单用户单任务操作系统 从从19811981的的 1.01.0版到版到19981998年在年在Windows 95/98Windows 95/98之下的之下的7.07.0版,版,MS DOSMS DOS历经了历经了1616个年头个年头 迄今仍有迄今仍有MS DOSMS DOS爱好者继续开发各种爱好者继续开发各种DOSDOS软件产品软件产品拯救苹果公司的拯救苹果公司的Macintosh(MAC OS)Macintosh(MAC OS)
38、在推出在推出IBM PCIBM PC机后,市场卷起一股龙卷风,机后,市场卷起一股龙卷风,IBMIBM自自己也没有料到产品会有如此巨大的成功己也没有料到产品会有如此巨大的成功 IBMIBM的成功说明必有其他公司失败。甚至连苹果公的成功说明必有其他公司失败。甚至连苹果公司也遇到了问题,销售数量落到了兰色巨人的后司也遇到了问题,销售数量落到了兰色巨人的后面面 苹果公司推出苹果公司推出LisaLisa机遭到失败,机遭到失败,Apple IIIApple III型也遭型也遭到失败到失败 分析家们认为,在微机市场上的战斗似乎兰色巨分析家们认为,在微机市场上的战斗似乎兰色巨人要嬴了人要嬴了施乐施乐Palo
39、AltoPalo Alto研究中心研究中心7070年代的计算机研究思想库年代的计算机研究思想库 世界上第一台个人计算机世界上第一台个人计算机AltoAlto,19721972年在这里年在这里出现出现 图形界面,手持鼠标,面向对象程序设计图形界面,手持鼠标,面向对象程序设计 微机网络,桌面出版和激光打印等等微机网络,桌面出版和激光打印等等 具有先进概念和技术的原型都首次出现在这里具有先进概念和技术的原型都首次出现在这里 19791979年苹果公司允许施乐公司购买一百万股的苹果年苹果公司允许施乐公司购买一百万股的苹果公司股票公司股票 作为回报,施乐公司允许苹果公司的少数人员,包作为回报,施乐公司允
40、许苹果公司的少数人员,包括乔布斯,在有限的时间内考察施乐公司括乔布斯,在有限的时间内考察施乐公司Palo Palo AltoAlto研究中心内部,并同该思想库的研究人员交谈研究中心内部,并同该思想库的研究人员交谈 苹果公司对苹果公司对Palo AltoPalo Alto研究中心内的技术大感吃惊研究中心内的技术大感吃惊 他们更吃惊的是,施乐公司在拥有这些宝贵技术的他们更吃惊的是,施乐公司在拥有这些宝贵技术的同时竟然什么也没有做!同时竟然什么也没有做! 对对Palo AltoPalo Alto研究中心这些科学家们而言,苹果公研究中心这些科学家们而言,苹果公司的人是他们第一次遇到真正理解他们技术的人
41、司的人是他们第一次遇到真正理解他们技术的人 这些科学家们后来有的去了苹果公司,微软公司,这些科学家们后来有的去了苹果公司,微软公司,有的最终创办了自己的公司有的最终创办了自己的公司 在访问的基础上,苹果决定立即开发采用这些新在访问的基础上,苹果决定立即开发采用这些新技术的个人计算机技术的个人计算机 苹果公司已看到苹果公司已看到 IBM PCIBM PC机的技术有多么糟糕,但他们卖得又是特别机的技术有多么糟糕,但他们卖得又是特别的好的好MAC OSMAC OS、鼠标的新型个人计算机、鼠标的新型个人计算机 19841984年,人们看到一则广告:年,人们看到一则广告:“What was that?W
42、hat was that?”和和对对MacintoshMacintosh的介绍的介绍, , 这是配有图形界面操作系统这是配有图形界面操作系统 MAC OSMAC OS和鼠标的新型个人计算机和鼠标的新型个人计算机 MACMAC机一上市立即在市场上获得极大的成功机一上市立即在市场上获得极大的成功 当年比尔当年比尔. .盖茨都说,这是一台他的妈妈也能使用的盖茨都说,这是一台他的妈妈也能使用的计算机计算机 MacintoshMacintosh把苹果公司从连续的失败中拯救出来把苹果公司从连续的失败中拯救出来 苹果公司又开始向前发展苹果公司又开始向前发展 正是正是MacMac先进图形界面操作系统技术,超前
43、先进图形界面操作系统技术,超前PCPC机若干机若干年,造就了一批苹果的忠实追随者年,造就了一批苹果的忠实追随者一波三折的微软一波三折的微软WindowsWindows操作系统操作系统 19831983年年1010月,月,PCPC机竞争厂家的图形界面相关产机竞争厂家的图形界面相关产品上市品上市 面对市场压力,比尔面对市场压力,比尔. .盖茨在盖茨在19831983年年1111月月1010日日宣布推出宣布推出WindowsWindows操作系统操作系统 直到直到19851985年年1111月月2020日,日,Windows 1.0Windows 1.0才正式上才正式上市市 19921992年年4
44、4月,推出月,推出Windows 3.1Windows 3.1,19931993年年5 5月,发表月,发表Windows NTWindows NT Windows 95/98Windows 95/98,Windows CEWindows CE,Windows 2000/XPWindows 2000/XP,Windows Server 2003Windows Server 2003() LonghornLonghorn基于微内核的基于微内核的MachMach操作系统操作系统 19751975年年RochesterRochester大学开发了大学开发了RIG RIG 操作系统操作系统 系统设计者之
45、一系统设计者之一Richard Rashid Richard Rashid 移居到移居到CMUCMU后,在后,在DARPADARPA支持下,支持下,19841984年开始了年开始了MachMach的开发的开发 希望希望MachMach能与能与UNIXUNIX兼容,运行线程,更好的进程通信机兼容,运行线程,更好的进程通信机制,支持多处理机及好的虚拟存储系统制,支持多处理机及好的虚拟存储系统 MachMach第一个版本是第一个版本是19861986年为年为VAX 11/784VAX 11/784四四CPUCPU多处理机多处理机发布发布 19881988年的年的Mach 2.5Mach 2.5版包含
46、了大量的版包含了大量的BSD UNIXBSD UNIX的代码的代码 19891989年,年,Mach Mach 内核中去掉了所有的内核中去掉了所有的BSD UNIXBSD UNIX的代码,的代码,剩下了一个纯的剩下了一个纯的MachMach微内核,这就是微内核,这就是Mach 3.0Mach 3.0版本,它版本,它是是OSFOSF发布的基础发布的基础 MachMach中采用了许多当代操作系统使用的技术中采用了许多当代操作系统使用的技术, , 微内核、线程、进程间消息传递和面向对象微内核、线程、进程间消息传递和面向对象的设计方法的设计方法等等等等 在在MachMach的基础上,有不少用于微处理器
47、、多的基础上,有不少用于微处理器、多处理器以及超级计算机的操作系统和实时嵌处理器以及超级计算机的操作系统和实时嵌入式操作系统陆续设计和开发出来,如入式操作系统陆续设计和开发出来,如OSF/1OSF/1,DCE Unix, NeXTDCE Unix, NeXT等等等等IBMIBM大型计算机操作系统大型计算机操作系统OS/390OS/390 9090年代末期,电子商务发展刺激对计算能力的要求,导致年代末期,电子商务发展刺激对计算能力的要求,导致大型机市场的再度升温大型机市场的再度升温 三十年的改进三十年的改进,IBM S/390,IBM S/390已成为有高可靠性、可扩展性、已成为有高可靠性、可扩
48、展性、及安全可用性的现代大型计算机系统及安全可用性的现代大型计算机系统 支持即支持即UNIX 95UNIX 95标准,标准,UNIXUNIX应用程序可在应用程序可在IBM OS/390IBM OS/390上运行上运行 同时还可继续运行同时还可继续运行S/390S/390应用程序,包括应用程序,包括S/370S/370上开发的应上开发的应用程序用程序 包括包括TCP/IPTCP/IP的多种通信协议,具有高网络安全性的多种通信协议,具有高网络安全性 采用面向对象程序设计、并行处理、分布式处理以及客户采用面向对象程序设计、并行处理、分布式处理以及客户机机/ /服务器技术,具有较强的互操作性、可移植性
49、与可扩展服务器技术,具有较强的互操作性、可移植性与可扩展性性 由于历史渊源,由于历史渊源,OS/390OS/390有不同的系统运行方式有不同的系统运行方式: S/370: S/370本机本机模式,支持原先在模式,支持原先在S/370S/370运行的程序运行的程序 ESA/390ESA/390模式,支持到模式,支持到1010个个240M240M处理器内存和处理器内存和256256个通道个通道 ESA/390 LPARESA/390 LPAR模式,系统可分成最多十个部分,每个部分有模式,系统可分成最多十个部分,每个部分有自己的自己的CPUCPU,存储器和通道,且分别运行不同的操作系统,存储器和通道
50、,且分别运行不同的操作系统,如如S/370, ESA/370 S/370, ESA/370 和和ESA/390ESA/390等等 在在PCPC机时代,人们曾经估计大型计算机会衰亡机时代,人们曾经估计大型计算机会衰亡 IBM S/390IBM S/390是大型计算机复活的一个典型是大型计算机复活的一个典型 那么,在那么,在2121世纪的世纪的InternetInternet和后和后PCPC的时代,大型机还会有什的时代,大型机还会有什么演化,只有让时间来说明么演化,只有让时间来说明嵌入式操作系统的代表嵌入式操作系统的代表VxWorksVxWorks WindRiverWindRiver公司公司 V