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

下载本文档

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

文档简介

第二章操作系统概述 2 1操作系统的目标与作用2 2操作系统的发展2 3操作系统的主要功能2 4操作系统的结构 2 1操作系统的设计目标和作用 1 OS的设计目标现代OS的主要设计目标有以下几点 1 方便性 方便用户使用 2 有效性 提高资源利用率和吞吐量 3 可扩充性 根据硬件和系统体系结构的发展对操作系统的功能进行扩充 4 开放性 遵循世界标准规范 2 OS在计算机系统中的作用 1 接口作用命令的方式 OS提供一组联机命令 用户可以通过键盘或鼠标来操纵计算机 图形用户接口也属于命令接口 包括窗口 图标 菜单和对话框等 命令接口分为 联机命令 用户可以通过终端键入命令脱机命令 用户通过作业说明书提交的命令 系统调用方式 用户程序通过系统调用来与操作系统进行通信 获操作系统提供的服务 2 资源管理硬件资源 CPU 内存 外部设备 I O设备 外存 时钟 网络接口等 软件资源 硬盘上的文件 信息 2 OS在计算机系统中的作用 系统中有哪些资源 如何管理这些资源 资源管理 记录资源使用状况如 系统中哪些资源空闲 状态是好还是坏 目前被谁使用 已被使用多长时间等 资源分配静态分配策略 在程序运行前分配 但效率不高 动态分配策略 在程序运行过程中何时用资源 何时分配 其缺点是会出现死锁 回收资源 操作系统在下面这个程序的执行中做了些什么 includeintmain intargc char argv puts helloworld return0 程序执行系统调用 在文件描述符中写一字符串 用户告诉操作系统执行hello程序 操作系统找到该程序 检查其类型 检查程序首部 找出正文和数据的地址 文件系统找到第一个磁盘块 父进程需要创建一个新的子进程 执行hello程序 操作系统需要将执行文件映射到进程结构 操作系统设置CPU上下文环境 并跳到程序开始处 程序的第一条指令执行 失败 缺页中断发生 操作系统分配一页内存 并将代码从磁盘读入 继续执行 更多的缺页中断 读入更多的页面 操作系统检查字符串的位置是否正确 操作系统找到字符串被送往的设备 设备是一个伪终端 由一个进程控制 操作系统将字符串送给该进程 该进程告诉窗口系统它要显示字符串 窗口系统确定这是一个合法的操作 然后将字符串转换成像素 窗口系统将像素写入存储映像区 视频硬件将像素表示转换成一组模拟信号控制显示器 重画屏幕 显示器发射电子束 你在屏幕上看到helloworld 3 OS用作扩充机器 虚拟机观点 从操作系统内部结构来看 操作系统可分为若干个层次 每一层完成特定功能 并对上一层提供支持 通过逐层的功能扩充 最终完成整个操作系统虚机器 操作系统虚机器向用户提供各种功能 完成用户请求 2 2操作系统的发展过程 1 推动操作系统发展的主要动力 不断提高计算机系统的资源利用率 方便用户 元器件的不断发展 计算机体系结构的发展 2 2操作系统的发展过程 操作系统的发展是随着计算机硬件和软件的发展而发展的 目标 充分发挥硬件潜能为用户提供更好的服务 操作系统历史划分为4个阶段 硬件非常昂贵 没有操作系统控制台 一个用户一次完成一个功能 计算 I O 用户思考 反应 程序通过卡片装入用户在控制台前调试程序 2 2 1无OS时代 缺点 用户独占全机 各部件串行工作 人的手工操作与计算机的运行以及CPU与I O设备之间都是按串行方式工作的 需要人工干预 1946年2月14日 世界上第一台电脑ENIAC在美国宾夕法尼亚大学诞生 18000多个真空管 占地1500平方英尺 重达30吨 每秒可从事5000次的加法运算 运作了九年之久 几乎每15分钟就可能烧掉一支真空管 操作人员须花15分钟以上的时间才能找出坏掉的管子 脱机输入输出方式阶段原理 输入 将用户程序和数据装入纸带或卡片输入机 然后通过一台外围机将纸带或卡片上的程序或数据输入到磁带或磁盘上 当CPU需要这些程序或数据时 直接从高速的磁带或磁盘上调入 输出 CPU直接将数据送到磁带或磁盘 然后再通过外围机将磁带或磁盘上的数据输出 图示如下 2 2操作系统的发展过程 脱机输入输出的示意图 优点 减少了CPU等待I O的时间 提高了I O的速度 2 2 2单道 单任务 批处理系统 50年代末 60年代中期 1 什么是单道批处理系统 单道批处理系统是指系统通过作业控制语言将作业组织成批 使其能自动连续运行 但是 在内存中任何时候只有一道作业的系统 FMS FortranMonitorSystem 是它的一个典型代表 作业控制语言JCL JobControlLanguage 是用户与操作系统的接口 JCL为被执行的任务引导操作系统 并说明所需要的全部 设备 三个基本JCL语句 JCLStatement 作业语句 JOB 标识一个作业的开始 提供必要的运行参数 执行语句 EXEC 标识一个作业步的开始 定义本作业步所要执行的程序或过程 数据定义语句 DD 用于描述应用程序所需要的数据文件 2 单道批处理系统的自动处理流程 监督程序 系统配置一监督程序 由监督程序管理作业的运行 完成作业的自动过渡 3 单道批处理系统的特征顺序性单道性自动性 在t1和t2两个时间段内 CPU处于空闲状态 一个单道程序的运行时间关系图 4 单道批处理系统的运行特点 在系统运行过程中 内存中只有一个用户作业存在 把存储于卡片上的一批作业脱机输入到磁带上 系统配备监督程序 在监督程序的控制下使这批作业能一个接一个地连续运行 处理机使用权在监督程序和用户程序间转换 优点 节省了人工操作的时间 提高了机器的利用率 缺点 内存中只有一道作业 系统中仍存在空闲资源 单道程序运行情况 时间t 例 下表是单任务环境下一个代表性的计算程序 求CPU的利用率 CPU运行时间与实际花费时间的百分比 从文件读一条记录15 s执行100条指令1 s向文件写一个记录15 s CPU的利用率 1 31 3 2 假如有如下两道作业A和B 如何提高CPU的利用率 如何缩短多道作业的运行时间 2 2 3多道批处理系统 60年代中期 70年代末 1 概念系统对作业的处理成批进行 在主存中能同时保留多道作业的系统 2 工作过程在多道批处理系统中 用户提交的作业在外存上排成一列 称 后备队列 先由作业调度程序从后备队列中选择若干个作业调入内存 然后由进程调度程序选择一个作业运行 将处理器分配给它 宏观上并行 微观上串行 多道批处理系统的主要目标 提高系统吞吐率和各种资源的利用率 2 多道批处理系统 程序A完成 单道批处理系统与多道批处理系统的运行情况比较 CPU运行 设备运行 硬件方面的通道技术和中断技术的出现推动了多道技术的产生和发展 通道引入 使数据传输相对独立于CPU 中断引入 使各部件能够协调工作 内存中允许同时有多个用户程序驻留假脱机工作方式 SPOOLing系统后备作业队列 作业调度程序调度运行有I O操作或完成作业时 调入另一个作业形成源源不断的作业流需要作业 处理 说明书 3 多道批处理系统的运行特点 4 特征无序性多道性调度性 5 多道批处理系统需要解决的问题 CPU分配问题存储器管理问题I O设备管理问题文件管理问题作业管理问题 几个概念 作业调度 是指按一定的作业调度算法 从外存的后备作业队列中选择若干个作业调入主存的过程 进程调度 按一定的进程调度算法 从已在内存的进程中选择一个进程并把CPU分配给它的过程 作业周转时间 从作业提交进入系统到结束退出系统所经历的一段时间 平均周转时间 多道作业周转时间的平均值 系统吞吐量 吞吐率 单位时间系统所完成的总工作量 一般用作业数表示 例 多道程序设计中的资源利用情况分析 某计算机系统 有250MB可用的存储空间 一个磁盘 一个终端和一台打印机 同时提交三个作业 JOB1 JOB2 JOB3 各个作业需要的资源如下表所示 优点 1 提高了系统的资源利用率 2 提高了系统的吞吐量 4 多道批处理系统的优缺点 缺点 1 延长了作业的平均周转时间 2 缺乏交互能力 如何解决多道批处理系统的缺点 回顾 操作系统的作用 系统调用 单道批处理 特点 优点 缺点 多道批处理 特点 优点 缺点 课堂作业 设内存中有三道程序A B C 它们按A B C的优先次序执行 它们的计算和I O操作时间如右表所示 单位 ms 假设三道程序使用相同的设备进行I O操作 即程序以串行方式使用设备 问题 1 试画出单道运行和多道运行的时间关系图 调度程序的执行时间忽略不计 2 计算在两种情况下完成这三道程序各要花多少时间 2 2 4分时操作系统 60年代中后期至今 1 分时操作系统产生的主要原因满足用户需求 提高交互性 具体包括 人 机交互共享主机方便用户上机 2 分时操作系统概念分时操作系统是指在一台主机上连接了多个联机终端 并允许多个用户通过终端以交互的方式使用主计算机 共享主机资源的系统 如下图 分时系统的主要目标是实现人与系统的交互性 世界上第一个分时系统CTSS CompatibleTime SharingSystem 于1962年在美国麻省理工学院开发完成 运行于IBM7094上 分时系统的响应时间与系统中的终端用户数 时间片大小 任务切换开销等有关 系统开销 用户数量 时间片 信息对换量 2 2 4分时操作系统 60年代中后期至今 影响分时系统响应时间的主要因素 分时系统设计的目标是保证用户响应时间的及时性 时间片是影响分时系统性能的一个关键因素 一般设为几十毫秒 3 分时操作系统实现中的关键问题 1 及时接收问题 2 及时处理问题4 解决的方法作业直接进入主存 避免抖动 每个作业以时间片的方式轮转运行 不允许一个作业长期占用CPU 需要抢占式调度以便保持适当的响应时间 5 分时系统的特征 1 多路性 2 独立性 3 及时性 满足用户对响应时间的要求 4 交互性 多道程序设计和分时系统的出现标志着操作系统的正式形成 2 2 5实时操作系统 引入实时操作系统主要是为了解决两个问题 实时控制问题 智能驾驶系统 卫星控制系统 实时信息处理问题 如火车票预定售票系统 银行系统1 概念实时操作系统是指系统能够及时响应外部 随机 事件的请求 并能在规定的时间内完成对该事件的处理 控制系统中所有的实时任务协调一致地工作 2 实时任务按任务执行的周期性 实时任务划可分为 周期性实时任务 任务按指定的周期循环执行 非周期性实时任务 任务的执行无明显的周期 但必须联系一个截止时间 根据对截止时间的要求 可以把任务划分为 硬实时任务 系统必须满足任务对截止时间的要求 软实时任务 任务对截止时间的要求不太严格 2 2 5实时操作系统 3 截止时间实时操作系统的截止时间分为两种 完成截止时间 指任务必须在某时间之前完成 这个时间就是完成截止时间 开始截止时间 指任务必须在某时间之前开始执行 这个时间就是开始截止时间 4 实时操作系统的特征多路性独立性及时性 满足实时任务截止时间的要求 交互性可靠性 5 分时系统与实时系统的比较及时性 实时控制系统一般以开始或完成截止时间来确定 对及时性要求更高 可靠性 实时系统要求高度可靠 交互性 实时系统中的交互仅限于访问系统中特定的专用服务程序 课堂问题 判断对错 1 在单CPU的多道批处理系统和分时系统中都能实现多道程序的同时执行 2 在分时系统中 时间片越小 系统的响应时间就越小 系统的效率越高 3多道批处理系统的出现既提高了计算机的工作效率 又提供了良好的人机交互界面 4 在多道批处理系统中 作业的道数越多越好 5 在分时系统中影响分时系统响应时间的主要因素是时间片和终端用户数 6 从响应时间看 分时系统与实时系统的要求相似 7 民航局的飞机订票系统是一个实时控制系统 8 在单处理器的多道批处理系统中任何一个时刻都有多个程序在处理器上运行 2 2 6操作系统的进一步发展 1 通用操作系统指具有多种类型操作系统特征的操作系统 可以同时兼有多道批处理 分时 实时处理的功能 或拥有其中两种以上的功能 如实时批处理系统 UNIX操作系统是一个通用的多用户分时操作系统 2 2 6操作系统的进一步发展 2 微机操作系统微机上运行的操作系统 单用户单任务操作系统 只允许一个用户上机 并且允许用户程序作为一个任务运行 CP M DigitalResearch公司开发的8位操作系统 MS DOS 微软开发的一个主流的16位操作系统 单用户多任务操作系统 只允许一个用户上机 但允许用户将程序分成若干任务并行执行 如Windows操作系统 多用户多任务操作系统 允许各个用户通过各自的终端使用同一台机器 共享主机资源 每个用户程序可以进一步分成若干个任务 代表性的操作系统有UNIXOS及其变型 SolarisOS LinuxOS AIX 3 网络操作系统 计算机网络通过通信设施 将地理上分散的 具有自治功能的多个计算机互连起来 以实现信息交换和资源共享 网络操作系统在微机操作系统上 按照网络体系结构的各个协议标准增加网络管理模块 主要包括 网络数据通信 资源共享 系统安全和各种网络应用服务等 目前常用的网络操作系统有 UNIX系统 Netware系统和WindowsNT系统 其中 UNIX系统是唯一的跨平台操作系统 WindowsNT可以运行微型计算机和工作站上 Netware主要面向微型计算机 4 分布式操作系统 分布式系统是相对于集中式系统而提出的 在集中式系统中 系统所有的控制和处理功能都集中在一台计算机上 而在分布式系统中 多台分散的计算机通过网络连接在一起 每台计算机既高度自治 又协同工作 并通过运行分布式程序在系统范围内进行资源管理和任务分配 分布式系统要求一个统一的操作系统 以实现系统操作的统一性 分布式操作系统管理系统中的所有资源 它负责全系统资源的分配和调度 任务划分 信息传输和控制协调等工作 并为用户提供一个统一的界面 分布式系统更强调分布式计算和处理 5 嵌入式操作系统 具有操作系统的通用功能 但由于系统硬件的局限性和应用环境的多样性 它与常规的操作系统相比具有 可裁剪性 易移植性和微型化等特点 嵌入式操作系统一般属于实时控制系统 嵌入式操作系统可分为通用型和专用型两种 通用型嵌入式系统可以应用于不同领域 主要产品有 WindowsCE 嵌入式Linux和VxWorks 专用型嵌入式系统用于特定的应用环境 如用于移动电话的Symbian和用于掌上电脑的PalmOS等 课后拓展题 作业1 查阅相关文献或借助于网络 了解现代主流的操作系统各有哪些 各有什么特点 适合应用于什么样的环境中 1 什么是计算机操作系统 不同的用户对操作系统的感受不同 对操作系统的理解也不相同 对操作系统的定义一般可分为两大类 作为扩展机器的操作系统 虚拟机观点 作为资源管理者的操作系统 2 2 7操作系统的概念及基本特征 操作系统定义 操作系统是一组控制和管理计算机软 硬件资源 合理地对各类作业进行调度 以及方便用户的程序集合 操作系统 内核 与硬件相关 与应用无关 硬件相关 应用程序 虚机器界面操作系统 物理机器界面硬件 假如没有操作系统 怎样将目标代码送给硬件 怎样输出打印结果 人们将对二进制程序操作从二极发光管读答案 共享性 指系统资源可供多个并发执行的进程共同使用 共享的方式分为 互斥共享和同时访问两种 虚拟性 将一个物理实体可通过虚拟技术转变成多个逻辑上的对应物 异步性 随机性 在多道程序环境中 程序的执行是以一种 走走停停 的方式进行的 内存中的多个进程可以按照各自独立的 不可预知的速度向前推进 现代OS具备以下四个基本特征 并发性 指在一段时间内许两个或两个以上的事件发生 2 OS的基本特征 操作系统的不确定性主要是指 异步性和不可再现性 并发与共享是操作系统的两个最基本特征 并行与并发 并行性 在同一时刻同时发生 微观上并行 并发性 宏观上在同一时间段内同时运行 宏观上并行 微观上串行 CPU与各个I O设备之间的并行各应用程序 进程 之间的并发 串行使用CPU 并行与并发 问题 单个CPU的计算机系统能否实现多个程序的并行执行 计算机资源从使用方式上分可为两类 独占资源和共享资源 独占资源 临界资源 在一段时间内只允许一个进程访问的资源 如 打印机 磁带机等 共享资源 允许多个进程同时访问的资源 如 磁盘 内存等 CPU为可抢占的独占资源 但不是临界资源 虚拟对象类型 虚拟处理器 分时系统 CPU的共享使用 虚拟内存 虚存管理技术虚拟设备 SPOOLing技术 打印机的共享 虚拟信道 分时复用 分频复用 空分复用技术 虚拟磁盘技术和虚拟存储器技术 2 3操作系统的功能 从资源管理角度 OS的主要功能有 处理器管理 CPU管理 存储器管理设备管理文件管理接口管理 CPU管理的主要任务是对处理器进行合理分配 并对进程进行有效的控制和管理 包括 进程控制进程同步 对各进程进行协调 协调的方式分为进程同步方式和进程互斥方式两种 进程通信 进程通信的方式分为直接通信和间接通信两种 调度 分为作业调度 进程和线程调度 1 CPU管理 进程管理 存储器管理主要包括 内存分配 内存保护 地址映射和虚拟存储器管理等功能 主存的分配与回收 内存分配分为静态分配和动态分配两种方式 内存分配机制通过相应的数据结构来实现内存的分配和回收 存储保护 确保每道程序在自己的主存空间中运行 互不干扰 地址映射 将用户程序地址空间中的有效地址转换成内存空间中的物理地址 主存扩充 使用虚拟技术 从逻辑上扩充内存容量 2 存储器管理 设备分配 根据用户的请求 分配相应的设备 设备处理 通过设备处理程序 设备驱动程序 来实现CPU和设备控制器之间的通信 缓冲管理 管理好各种类型的缓冲区 设备独立性 通过设备独立性程序可使应用程序独立于具体的物理设备 虚拟设备 通过虚拟技术 把一次只允许一个进程访问的物理设备改造成可同时供多个进程共享的设备 3 设备管理设备管理的主要任务是完成用户提出的I O请求 为用户分配I O设备 以提高CPU和I O设备的利用率和系统的吞吐量 主要包括 文件管理的主要任务是对用户文件和系统文件进行有效的管理 方便用户使用 并保证文件的安全和提高外存的利用率 主要功能包括 4 文件管理 文件存储空间的管理 为每个文件分配存储空间 包括外存空间的分配和回收 并尽可能地提高外存的利用率和文件系统的工作速度 目录管理 目录管理的主要任务是为每个文件建立目录项 并对系统中所有的目录项进行合理的组织 以提高文件的查询速度和方便文件的按名存取 文件的读 写管理 文件的读写是文件系统的基本功能 它的主要任务是根据用户的请求从外存读取数据 或将数据写入外存 文件的存取控制 为保证文件的安全 须对文件的存取进行有效的控制 在一个完善的文件系统中 文件的存取控制通常分为三级 系统级 用户级和文件级 4 文件管理 命令接口联机命令接口脱机命令接口系统调用接口 4 接口管理 2 4操作系统的结构设计 1 传统的操作系统结构无结构操作系统模块化操作系统结构分层式操作系统结构 操作系统 进程管理 存储器管理 文件管理 进程控制 进程调度 内存分配 内存保护 磁盘管理 目录管理 划分模块必须充分考虑模块的独立性 衡量模块独立性的两个标准 内聚性 模块内部各个部分之间联系的紧密程度 内聚性越高 独立性越强 耦合度 模块之间相互联系和相互影响的程度 耦合度越低 模块的独立性越强 模块化操作系统的优缺点 优点 提高了OS设计的正确性和可维护性提高了OS的适应性加速了OS的开发过程缺点 模块划分和接口的规定不能做到完全精确模块间存在复杂的依赖关系 分层式OS的结构示意图 裸机 A1层 A2层 An层 OS 物理部件 分层式OS结构设计的原则 OS的每一层只能使用在其下的各层所提供的功能和服务 OS的每个独立的层次都必须经过几乎是穷尽测试认为正确后才能在其上添加新的层次 例 Denning P 和Brown R的操作系统层次模型 1 客户 服务器模式 2 面向对象的程序设计技术 3 微内核技术 2 微内核操作系统结构 1 客户 服务器模式 OS程序分成两部分 服务器 进程 和内核 服务器运行在用户态 完成OS提供的基本功能 如进程管理 存储器管理 文件管理等 内核主要处理用户进程和服务器之间的通信功能 在核心态运行 OS 请求 应答 内核 用户态 核心态 客户 服务器模式OS的结构示意图 客户进程与服务器进程之间的请求与应答是以发送消息的方式进行的 操作系统内核在执行上的共同特征 内核运行在核心态 内核是中断驱动的 当用户程序在执行过程中发生中断和异常时 在硬件的帮助下切换到操作系统内核执行 内核是不可抢占的 在传统的操作系统中 在内核中运行的程序是不允许被抢占的 除非它自愿放弃CPU 内核的部分程序在中断屏蔽状态下执行 内核允许被中断 但为了避免中断嵌套可能引起的错误 通常屏蔽这级中断 有时甚至会暂时屏蔽其他的中断 正因为如此 内核执行的时间越长 屏蔽中断的时间就越长 对计算机系统运行效率的影响就越大 提高了系统的灵活性和可扩充性提高了系统的可靠性便于集中管理可运行于分布式系统中 数据分布处理和存储 客户 服务器模式的优点 3 微内核技术 1 兴起的原因超大规模集成电路的迅速发展减少OS的复杂性 增强其可扩展性和可维护性 2 概念能实现OS核心功能的小型内核 即将操作系统中与硬件相关的部分放到内核中 而把操作系统的绝大部分放在内核外的一组服务器进程中 3 微内核技术 3 特点足够小的内核 常驻主存 不是一个完整的操作系统 运行在系统态 基于客户 服务器模式采用 机制与策略分离 原理 机制放在微内核中 策略放在微内核外 采用面向对象技术 4 微内核包括的主要功能 中断和异常处理机制 中断现场保护 中断和陷入类型识别 进程 进程调度和进程通信处理器调度机制有关服务功能的基本机制 内核实现的关键是将OS每一种功能的机制 与硬件相关的数据结构和功能 与功能实现部分分离 以中断为例 内核只负责中断机制 具体包括 中断的识别和与相应进程 中断处理程序 的映射 将中断信号转换成消息等 而具体的中断处理的实现由服务器进程在用户态完成 中断响应 保存断点 关中断 保护现场 执行中断服务程序 中断隐指令 中断隐指令是指指令系统中没有的指令 它由CPU在中断响应周期自动完成 其功能包括 保护程序断点硬件关中断向量地址送PC 硬件向量法 或中断识别程序入口地址送PC 软件查询法 中断响应 保存断点 关中断 保护现场 执行中断服务程序 5 微内核操作系统的优点提高了系统的可扩展性增强了系统的可靠性具有可移植性支持分布式系统和网络系统融入了面向对象技术 Windows系统是一种微内核操作系统 它便于扩充硬件和软件 当连接新硬件时只需安装对应的驱动程序就可以使用了 L4第二代微内核 L4是最先由JochenLiedtke开发的第二代微内核 目前 它已经变成了第二代微内核的一个标准 只提供地址空间管理 内存分配 线程创建 撤销 消息传递等基本功能 其他所有的服务 网络协议处理 甚至设备驱动都交给用户态的应用程序来处理 每个服务有自己的地址空间 体系结构如下 1 7现代操作系统的特点 广泛使用多处理器系统 尤其是对称式多处理器系统 SMP 结构设计上 采用微内核结构运行中 采用多线程机制分布式操作系统面向对象程序设计技术 SMP特点 symmetricmultiprocessing 有两个或两个以上的处理器所有处理器共享主存和I O设备所有处理器可以执行同样的功能 本章要求 1 掌握操作系统 进程调度 作业调度 响应时间 作业周转时间 吞吐量等基本概念 2 理解并掌握OS的概念和基本特征 以及OS的功能 3 理解并掌握多道批处理OS 分时OS系统和实时操作系统的概念 特征及其工作原理 4 了解微内核技术的概念及微内核操作系统的特点和实现原理 5 掌握推动操作系统发展的主要动力和操作系统发展的几个主要阶段 作业1 1 什么是OS 其最基本的特征有哪些 请简述OS的基本功能 2 什么是多道批处理系统 引入多道批处理系统有哪些好处 3 什么是分时OS 影响分时系统的响应时间的因素有哪些 4 试画出三道作业并发执行的情况 并标出其中并行执行的时间段 附录 历史上的操作系统 随历史线索 介绍一些重要的操作系统真空管时代 1946年 1955年 晶体管时代 1955年 1965年 集成电路时代 1965年 1980年 大规模集成电路时代 1980年 至今 第一台数字计算机 英国数学家CharlesBabbage 1792 1871 设计Babbage投入了毕生精力但却没能让它成功地运行起来 因为当时的技术不可能达到需要的精度当然 这个分析机没有操作系统 二战对武器设计的需要美国 英国和德国等国家开始了电子数字计算机的研究工作 哈佛大学的HowardAiken普林斯顿高等研究院的JohnNeumann 冯 诺依曼 宾夕法尼亚大学的J PresperEckert和WilliamMauchley德国电话公司的KonraadZuse以及其他一些人都使用真空管成功地建造了运算机器 真空管计算机 1945年 1955年 时期 没有程序设计语言 甚至没有汇编 更谈不上操作系统程序员提前预约一段时间 然后到机房将他的插件板插到计算机里期盼着在接下来的时间中几万个真空管不会烧断从而可以计算自己的题目 ENIAC计算机 美国宾夕法尼亚大学 运算速度 5000次 每秒 18000个真空管 占地182平方米 重量130吨 功耗140kW 50年代早期出现了穿孔卡片程序写在卡片上然后读入计算机但计算过程则依然如旧 晶体管计算机 1955年 1965年 时期 50年代晶体管发明计算机比较可靠 可成批地生产用户可指望计算机长时间运行 完成一些工作FORTRAN1954年提出 1956年设计完成ALGOL1958年引入COBOL1959年引入设计人员 生产人员 操作人员 程序人员和维护人员之间第一次有了明确的分工 批处理操作系统 现代操作系统雏型 为了改进主存和I O设备之间的吞吐量IBM7094机引入了I O处理机概念其思想是 在输入室收集全部的作业 用一台相对便宜的计算机 如IBM1401计算机 将它们读到磁带上另外用较昂贵的计算机 如IBM7094来完成真正的计算 第二代计算机典型的操作系统 FMS FORTRANMonitorSystem FORTRAN监控系统 IBMSYS IBM为7094机配备的操作系统 这些操作系统由监控程序 特权指令 存储保护和简单的批处理构成 第三代集成电路计算机 1965年 1980年 时期 60年代初期 计算机开始采用集成电路 多数厂商有几条完全不同的生产线 生产不同的计算机 产生的问题 开发和维护完全不同的产品 对厂商来说是昂贵的新用户在开始时只需要一台小计算机 后来可能需要一台大的计算机 又希望能在新计算机上执行原有的程序 厂家和用户要求软件在不同型号的计算机之间兼容 1964年IBM宣布推出System 360计算机系统第一个采用小规模集成电路的主流机型试图一次性地解决上述两个问题由于所有的计算机都有相同的体系结构和指令集在理论上 为一型号编写的程序可以在其他型号机器上运行 IBMSystem 360的若干问题 IBM无法写出同时满足互冲突需要的操作系统其实别人也一样不能完成这项工作任务IBMOS 360文件系统中有类型字段 定义文件的类型 有定长 不定长记录 块状和非块状文件用户对于输出文件的大小 只有通过猜测存储管理有基地址寄存器寻址方式 程序也可以访问和修改基地址寄存器 但是CPU生成的却是绝对地址 虽然不用进行动态再分配但程序却被钉死在调入内存时的物理地址上 IBM370体系结构 引入虚拟存储器 分时系统 第三代计算机实质是批处理系统而从一作业提交到结果取回 往往长达数小时一个逗号的误用会导致编译失败 而可能浪费程序员半天时间问题的解决导致分时系统的出现 CTSS CompatibleTimeSharingSystem 分时系统实际上是多道程序的一个变种 提高计算机运算效率 改善人机交互界面 第一个分时系统由MIT的FernandoCorbato等1961年在一改装的IBM7090 94机上开发成功当时有32个交互式用户IBM7090 94计算机有32K内存 系统用5K 用户用27K 用户存储映象在内存和一台磁鼓之间切换1962年Manchester大学的Atlas计算机投入运行运行速度200kFLOPS第一个有虚拟存储器 virtualmemory 和页面调度 paging 的机器首次引进系统调用 systemcall 指令执行是管道式的 pipelined 小型计算机 电子游戏和UNIX的成功 1969年 在贝尔退出MULTICS研制项目后 KenThompson和DennisM Ritchie想申请经费买计算机从事操作系统研究 但多次申请得不到批准项目无着落 他们在一台无人用的PDP 7上 重新摆弄原先在MULTICS项目上设计的 空间旅行 游戏为了使游戏能够在PDP 7上顺利运行 他们陆续开发了浮点运算软件包 显示驱动软件 设计了文件系统 实用程序 shell和汇编程序到了1970年 在一切完成后 给新系统起了个同MULTICS发音相近的名字UNIX随后 UNIX用C语言全部重写 自此 UNIX诞生了 UNIX UNIX是现代操作系统的代表 Unix运行时的安全性 可靠性以及强大的计算能力赢得广大用户的信赖促使UNIX系统成功的因素 首先 由于UNIX是用C语言编写 因此它是可移植的 UNIX是世界上唯一能在笔记本计算机 PC机 工作站直至巨型机上运行的操作系统第二 系统源代码非常有效 系统容易适应特殊的需求最后 也是最重要的一点 它是一个良好的 通用的 多用户 多任务 分时操作系统 第四代大规模集成电路计算机 1980年 至今 CP M操作系统随着大规模集成电路发展 个人计算机时代到来了各种类型的个人计算机和软件层出不穷1973年GaryKildall看到对个人计算机操作系统的需求 设计了CP M操作系统 ControlProgram MicroprocessororMicrocomputer CP M操作系统有较好的层次结构 它的BIOS把操作系统的其他模块与硬件配置分隔开 所以它的可移植性好 具有较好的可适应性和易学易用性到了1981年 CP M操作系统成为世界上流行最广的8位操作系统之一 微软MSDOS 个人计算机的成功 逼得IBM采取紧急战略行动 决定要在1980年尽快生产出微型计算机 以应付挑战但没有操作系统不行 要想快就是找现成系统配套 IBM公司洽谈CP M操作系统不顺利 机遇落到了微软公司在关键时刻 开发新操作系统时间和人手上已经不可能 微软找到西雅图计算机产品公司 达成由微软经销西雅图计算机产品公司的QDOS操作系统的协议当时西雅图公司并不知道QDOS将被转卖给IBM 否则历史将会怎样演变 谁也无法知晓 IBM在1981年推出个人计算机 宣布了PC DOS操作系统版权合同 没有限制MS DOS随着IBMPC和MSDOS普及 CP M逐渐走向下坡路MSDOS有优良的文件系统 但受到Intelx86体系结构的限制 缺乏以硬件为基础的存储保护机制它属于单用户单任务操作系统从1981的1 0版到1998年在Windows95 98之下的7 0版 MSDOS历经了16个年头迄今仍有MSDOS爱好者继续开发各种DOS软件产品兼容机市场 Compaq与MicroChannel 一波三折的微软Windows操作系统 1983年10月 PC机竞争厂家的图形界面相关产品上市面对市场压力 比尔 盖茨在1983年11月10日宣布推出Windows操作系统然而宣布容易 交货就不简单了 Windows交货期的灾难 成了当年计算机界的笑柄直到1985年11月20日 Windows1 0才正式上市 Windows的历史记录 Windows在当时微软历史上创了几个记录 延迟交货次数最多 投入开发人员最多 开发时间最长 更换主管人员最多不过几年之后 Windows终于创造了销售成绩最佳的历史记录1992年4月 推出Windows3 1 1993年5月 发表WindowsNTWindows95 WindowsCE Windows98 Windows2000 WindowsXP net个人计算机采用Windows占90 以上 微软公司成了垄断PC行业的同义词 基于微内核的Mach操作系统 1975年Rochester大学开发了RIG操作系统系统设计者之一RichardRashid移居到CMU后 在DARPA支持下 1984年开始了Mach的开发希望Mach能与UNIX兼容

温馨提示

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

评论

0/150

提交评论