计算机操作系统原理绪论ppt课件.ppt_第1页
计算机操作系统原理绪论ppt课件.ppt_第2页
计算机操作系统原理绪论ppt课件.ppt_第3页
计算机操作系统原理绪论ppt课件.ppt_第4页
计算机操作系统原理绪论ppt课件.ppt_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

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

文档简介

1 计算机操作系统原理 为什么要学习操作系统 设计操作系统或者修改现有的系统存在人们意识不到的大量 操作系统 嵌入式系统 EmbeddedOS 加深对使用的OS的理解 有利于深入编程用户为了开发应用程序必须与操作系统打交道编程时借鉴操作系统的设计思想和算法操作系统中所用的许多概念和技巧可以推广应用到其他领域选择购买操作系统我们并不总使用Win98 2000 XP 2003 涉及到计算机科学的很多领域 计算机体系结构 硬件软件设计程序设计语言数据结构算法网络学习与理解其核心技术 最好能加以应用 4 第1章绪论 5 问题 你知道哪些操作系统 OSExamples Dos WindowsUnix minix Solaris LinuxOS xprovidedbyIBMMacintosh Mac Netware 1 1相关背景 存储程序式计算机 冯诺曼机的结构 VonNeumann计算机 又称 存储程序式计算 由控制器 运算器 存储器 输入装置 输出装置组成 如图所示 存储程序式计算机的组成部分之功能 中央处理机 包括控制器和运算器 能够解释指令 执行指令并控制操作顺序的硬设存储器 计算机存储程序和数据的部件I O设备 完成信息传输 人物 伟大的冯 诺依曼 电子计算机之父 的桂冠 被戴在数学家冯 诺依曼头上 这是因为冯 诺依曼提出了现代电脑的体系结构 其带来的革命意义在于 存储程序 以便电脑自动依次执行指令 人们后来把这种 存储程序 体系结构的机器统称为 冯 诺依曼机 冯 诺依曼机之特点 冯 诺依曼机具有如下特点 顺序性过程性集中控制即 集中顺序过程控制 控制部件根据程序对整个计算机的活动实行集中控制 并根据程序规定的顺序依次执行每一个操作 冯 诺依曼机的具体流程 从外部读取程序 程序存储起来 控制单元控制计算单元的执行 此执行过程是顺序性 串行的 取指令 翻译指令 执行指令 计算机系统的组成 现代计算机系统由硬件和软件两部分组成 硬件由由中央处理机 存储器和外部设备组成 又称为裸机 软件由程序 数据和文档资料组成 如下图所示 1 2操作系统的演变 自世界上第一台计算机ENIAC 1800平方英尺 于1946年问世以来 计算机在运算速度 存储容量 外设功能 元件工艺及系统结构等方面都有了惊人的发展 通常 人们按照计算机元件工艺的演变过程 将其发展划分为四个时代 操作系统的历史 1 操作系统的发展和计算机的组成与体系结构相关 经历了四个发展阶段 1946年 50年代末 第一代 电子管时代 无操作系统 1950年代末 60年代中期 第二代 晶体管时代 批处理系统 操作系统的历史 2 1960年代中期 70年代中期 第三代 集成电路时代 多道程序设计 1970年代中期至今 第四代 大规模和超大规模集成电路时代 分时系统 现代计算机正向着巨型 微型 并行 分布 网络化和智能化几个方面发展 1 2 1手工操作 手工操作过程 先把程序纸带 或卡片 装上计算机然后启动输入机把程序和送入计算机接着通过控制台开关启动程序运行 计算完毕 打印机输出计算结果 用户卸下并取走纸带 或卡片 第二个用户上机 重复同样的步骤 50年代早期出现了穿孔卡片 程序写在卡片上然后读入计算机 但计算过程则依然如旧 严重缺点 用户一个个 一道道的串行算题 当一个用户上机时 他独占了全机资源 造成计算机资源利用率不高 计算机系统效率低下 许多操作要求程序员人工干预 例如 装纸带或卡片 按开关等等 手工操作多了 不但浪费处理机时间 而且 也极易发生差错 由于数据的输入 程序的执行 结果的输出均是联机进行的 因而 每个用户从上机到下机的时间拉得非常长 手工操作存在问题 手工操作存在问题 这种人工操作方式在慢速的计算机上还能容忍 随着计算机速度的提高 其缺点就更加暴露出来了 譬如下图所示 1 2 2单道批处理系统 simplebatchprocessing 计算机发展的早期 没有任何用于管理的软件 所有的运行管理和具体操作都由用户自己承担 任何操作出错都要重做作业 CPU的利用率甚低 解决的方法有两个 单道批处理系统问题的解决方案 首先配备专门的计算机操作员 程序员不再直接操作机器 减少操作机器的错误 另一个是进行批处理 操作员把用户提交的作业分类 把一批中的作业编成一个作业执行序列 每一批作业将有专门编制的监督程序 monitor 自动依次处理 批处理中的作业的组成 包括用户程序 数据和作业说明书 作业控制语言 批 的含义 供一次加载的磁带或磁盘 通常由若干个作业组装成 在处理中使用一组相同的系统软件 系统带 说明 通常 把计算机完成用户算题任务所需进行的各项工作称为一道作业 批处理方式 早期批处理分为两种 一 联机批处理 online 二 脱机批处理 offline 一 联机批处理 在这种批处理方式中 慢速的输入输出 I O 处理仍直接由主机来完成 执行过程 用户提交作业 对于作业 数据 用作业控制语言编写作业说明书 作业以纸带或卡片为保存介质 操作员合成批作业 通过输入设备 纸带输入机或读卡机 存入磁带 监督程序根据系统资源情况读入一个作业 从磁带读入汇编或编译程序 将用户作业源程序生成目标代码 连接装配程序将目标代码变为可执行程序 启动执行 执行完毕 执行结果输出 读入另一个作业 重复过程e i 一批作业完成后 处理下一批作业 联机批处理的优缺点 联机批处理主要优点 解决了作业自动转接 减少了作业建立和手工操作时间 联机批处理存在问题 CPU与I O串行操作 输入输出时 CPU处于等待状态 二 脱机批处理 缓冲技术的一种 脱机批处理技术 为解决低速输入设备与CPU速度不匹配的问题 可将用户程序和数据 在一台卫星机 又称外围计算机 的控制下 预先从低速输入设备输入到磁带上当CPU需要这些程序和数据时 再直接从磁带机高速输入到内存 从而大大加快了程序的输入过程 减少了CPU等待输入的时间 脱机批处理技术 当程序运行完毕或告一段落 CPU需要输出时 无须直接把计算结果送至低速输出设备而是高速地把结果送到磁带上 然后再另一台外围机地控制下 把磁带上的计算结果由相应的输出设备输出 这就大大加快了程序的输出过程 其示意图如下图所示 脱机批处理模型 脱机批处理的优缺点 脱机批处理主要优点 1 主机摆脱了慢速的I O的工作的影响 可以较充分的发挥它的高速计算的能力 提高了CPU的利用率 2 同时 由于主机和卫星机可以并行操作 因此相比早期的联机批处理系统而言 脱机批处理系统大大提高了系统的处理能力 脱机批处理存在问题 磁带需要手工拆装 系统的保护不够 三 执行系统 20世纪60年代初期 硬件获得了两方面 即通道和中断技术 的进展 导致操作系统进入了批处理的第三阶段 执行系统 executivesystem 阶段 名词解释 通道 channel 是一种专用处理部件 它能控制一台或多台输入输出设备工作 负责输入输出设备与主存之间的信息传输 它一旦被启动就能独立与CPU运行 这样可使CPU和通道并行操作 而且CPU和多种输入输出设备也能并行操作 名词解释 中断 interrupt 是指当主机接到外部信号时 马上停止原来工作 转去处理这一事件 处理完毕后 主机回到原来的断点继续工作 三 执行系统 借助于通道和中断技术 I O工作可以在主机控制之下完成 这时 原有的监控程序不仅要负责调度作业自动地运行而且还要提供I O控制功能 即用户不能直接使用启动外设的指令 他的I O请求必须通过系统去执行 它比原有的功能增强了 这个发展了监督程序常驻内存 称为执行系统 批处理系统小结 在批处理系统中 操作人员把作业成批地装入计算机中 由操作系统在计算机中某个特定区域 一般称为输入井 将其组织好 并按一定的算法选择其中的一个或几个作业 将其调入内存中使其运行 运行结束后 把结果放入 输出井 由计算机统一输出 交给用户 批处理系统的主要优点是系统吞吐量大 资源利用率高 主要缺点就是交互性差 一旦作业提交 其中间过程就很难控制 三 执行系统的优点 执行系统比脱机处理前进了一步 它节省了卫星机 降低了成本 而且同样执行主机和通道 主机和外设的并行操作 在执行系统中 用户程序对I O的操作工作是委托给系统完成的 由系统来检查其命令是否合法 这样就可以避免由于不合法的I O指令对系统的威胁 从而提高了系统的安全性 1 2 3多道程序系统 multiprogrammingsystem 早期的批处理可能出现两种情况 对于以计算为主的作业 输入输出量少 外围设备空闲 对于以输入输出为主的作业 主机空闲 问题的提出 中断和通道技术出现以后 I O设备和主机可以并行操作 初步解决了高速处理及和低速外设的矛盾 提高了计算机的工作效率 但不久又发现这种并行是有限的 并不能完全消除中央处理机对外部传输的等待 问题的提出 在早期的单道批处理系统中 内存中仅有单个作业在运行 致使系统中仍有许多资源空闲 设备利用率低 系统性能较差 如下图所示 当CPU工作时 外部设备不能工作 而外部设备工作时 CPU必须等待 单道程序运行图示 右图所示为单道程序工作情况 在输入操作结束之前 处理机空闲 其原因是I O处理与本道程序有关 所以就提出了多道程序的概念 t1 t2 t 用户程序计算 继续计算 结束中断 CPU空闲 I O操作 monitor I O请求 启动I O I O完成 多道程序设计 Multiprogramming 多道程序设计 Multiprogramming 是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法 多道程序合理搭配输入输出为主与计算为主程序交替运行 充分利用资源 提高系统效率 多道程序的运行特点 多道程序的运行特点 多道 计算机内存中同时存放多道相互独立的程序 宏观上并行运行 同时进入系统的几道程序都处于运行状态 但都未运行完 微观上串行运行 各作业轮流使用CPU 交替执行 实现技术 在当前运行的作业需做I O处理时 CPU转而执行另一个作业 I O完成后是否立刻恢复执行 要等到其他程序再次I O时 单 多道程序运行示意图对比 多道程序系统的技术问题 1 并行程序的运行需要共享软件硬件资源 需要同步和互斥机制 2 多道程序需要提高内存的使用效率 需要覆盖技术 对换技术 虚拟存储等技术 3 多道程序在内存中要保证系统程序存储区和用户程序存储区的安全可靠 需要内存保护 1 2 4分时系统 time sharingsystem 分时 TimeSharing 是把计算机的系统资源 尤其是CPU时间 进行时间上的分割 每个时间段称为一个时间片 TimeSlice 每个用户依次轮流使用时间片 分时技术 把处理机的运行时间分为很短的时间片 按时间片轮流把处理机分配给各联机作业使用 分时系统的定义 分时操作系统 TimeSharingOperatingSystem 是一种联机的多用户交互式的操作系统 一般采用时间片轮转的方式 使一台计算机为多个终端服务 对每个用户能保证足够快的响应时间 并提供交互会话能力 如下图所示 分时系统示意图 经典案例之一 超市的收银机 分时系统的特点 交互性 系统能及时对用户的操作进行响应 显著提高调试和修改程序的效率 缩短了周转时间 多用户同时性 多个用户同时工作 共享系统资源 提高了资源利用率 节省维护开支 可靠性高 远地用户也可通过终端 较便宜 联机使用 独立性 各用户独立操作 互不干扰 分时系统的特点 也就是说 分时操作系统是一个联机的 online 多用户 multiuser 交互式 interactive 的操作系统 多用户分时操作系统是当今计算机操作系统中使用最普遍的一类操作系统 UNIX是典型的一种多用户分时操作系统 1 2 5实时系统 real timesystem 产生背景 虽然多道批处理操作系统和分时操作系统获得了较佳的资源利用率和快速的响应时间 从而使计算机的应用范围日益扩大但它们难以满足实时控制和实时信息处理领域的需要 于是 便产生了实时操作系统 目前有三种典型的实时系统 过程控制系统 信息查询系统和事务处理系统 什么是实时系统 实时操作系统 RealTimeOperatingSystem 是指当外界事件或数据产生时 能够接收并以足够快的速度予以处理 其处理的结果又能在规定的时间之内来控制监控的生产过程或对处理系统作出快速响应 并控制所有实行任务协调一致运行的操作系统 实时系统要求有高可靠性和安全性 系统地效率则放在第二位 典型的实时系统 1 过程控制 计算机用于生产过程控制时 要求系统能现场实时采集数据 并对采集的数据进行及时处理 进而能自动地发出控制信号控制相应执行机构 使某些参数 压力 温度 距离 湿度 能按予定规律变化 以保证产品质量 导弹制导系统 飞机自动驾驶系统 火炮自动控制系统都是实时过程控制系统 过程控制 实时系统 过程控制系统的组成部分 由实时操作系统控制的过程控制系统 较为复杂 通常由四部分组成 1 数据采集 它用来收集 按收和录入系统工作必须的信息或进行信号检测 2 加工处理 它对进入系统的信息进行加工处理 获得控制系统工作必须的参数或作出决定 然后 进行输出 记录或显示 实时系统的组成部分 3 操作控制 它根据加工处理的结果采取适当措施或动作 达到控制或适应环境的目的 4 反馈处理 它监督执行机构的执行结果 并将该结果馈送至信号检测或数据按收部件 以便系统根据反馈信息采取进一步措施 达到控制的予期目的 典型的实时系统 2 信息查询系统 计算机还可用于控制进行实时信息处理 计算机接收成干上百从各处终端发来的服务请求和提问 系统应在极快的时间内做出回答和响应 机票订购系统 情报检索系统是典型的实时信息处理系统 典型的实时系统 3 事务处理系统 事务处理系统不仅对终端用户及时作出响应 而且要对系统中的文件或数据库频繁更新 例如 银行业务处理系统 每次银行客户发生业务往来 均需修改文件或数据库 要求这样的系统响应快 安全保密 可靠性高 1 2 6通用系统 generalsystem 批处理系统 分时系统和实时系统是操作系统的三种基本类型 目前的操作系统 通常具有分时 实时和批处理两种以上的功能 又称作通用操作系统 通常把实时任务称为前台作业 批作业称为后台作业 将批处理和分时处理相结合可构成分时批处理系统 1 2 6通用系统 generalsystem 例如 UNIX操作系统 SUN公司的Solaris IBM公司的AIX Windows操作系统 Microsoft公司的Windows系列 Linux操作系统 Redhat 红旗Linux等 1 2 7操作系统的进一步发展 世纪 年代 大规模集成电路的发展 一方面迎来了个人计算机飞速发展 一方面又向网络化 分布式处理 巨型计算机 智能化方向发展 主要包括 个人计算机上的操作系统 嵌入式操作系统 网络操作系统 分布式操作系统 智能化操作系统 网络操作系统 网络操作系统是支持计算机网络运行的计算机操作系统 网络操作系统在常规的操作系统功能的基础之上增加了以下功能 实现网络中各计算机机之间的通信 实现网络中硬 软件资源的共享 提供多种网络服务软件 提供网络用户的应用程序接口 网络操作系统 网络服务应用程序 通信软件 协议支持 单机操作系统 用户应用程序 局域网操作系统的结构 通信软件 协议支持 分布式操作系统 分布式系统是一种特殊的计算机网络系统 是一个由多台计算机组成的扩大了功能的虚拟机系统 主要特点是 统一性 要求一个统一的操作系统 透明性 系统对用户是透明的 资源共享性 系统中的资源是共享的 自治性 各节点的地位平等 网络和分布式的区别 1 分布具有各个计算机间相互通讯 无主从关系 网络有主从关系 2 分布式系统资源为所有用户共享 而网络有限制地共享 3 分布式系统中若干个计算机可相互协作共同完成一项任务 1 3 1操作系统定义 没有任何软件之支持的计算机称为裸机 BareMachine 它仅仅构成了计算机系统的物质基础 而实际呈现在用户面前的计算机系统是经过若干层软件改造的计算机 裸机在最里层 它的外面是操作系统 经过操作系统提供的资源管理功能和方便用户的各种服务功能将裸机改造成功能更强 使用更方便的机器 通常称之为虚拟机 virtualmachine 如下图所示 计算机系统的分层观点 引入操作系统的目的 因此 引入操作系统的目的可从三方面来考察 1 从系统管理人员的观点来看 操作系统是计算机资源的管理者 2 从用户的观点来看 引入操作系统是为了给用户使用计算机提供一个良好的界面 以使用户无需了解许多有关硬件和系统软件的细节 就能方便灵活地使用计算机 3 从发展的观点看 引入操作系统是为了给计算机系统的功能扩展提供支撑平台 使之在追加新的服务和功能时更加容易和不影响原有的服务与功能 4 进程管理的观点 操作系统在计算机中的位置 计算机系统的层次 硬件层提供了基本的可计算性资源 包括处理器 寄存器 存储器 以及可被使用的各种I O设施和设备 是操作系统和上层软件赖以工作的基础 操作系统层对计算机硬件作首次扩充和改造 主要完成资源的调度和分配 信息的存取和保护 并发活动的协调和控制等许多工作 操作系统是其它软件的运行基础 并为编译程序和数据库系统等系统程序的设计者提供了有力支撑 计算机系统的层次 系统程序层的工作基础建立在操作系统改造和扩充过的机器上 利用操作系统提供的扩展指令集 可以较为容易地实现各种各样的语言处理程序 数据库管理系统和其它系统程序 应用层解决用户不同的应用问题 应用程序开发者借助于程序设计语言来表达应用问题 开发各种应用程序 既快捷又方便 最终用户则通过应用程序与计算机交互来解决他的应用问题 操作系统定义 综上所述 尽管操作系统尚未有一个被普遍接受的定义 但普遍认为 操作系统是管理软硬件资源 控制程序执行 改善人机界面 合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件 在计算机与其用户之间起到接口的作用 1 3 2操作系统功能 操作系统有如下几个基本功能 处理机管理存储管理设备管理信息管理 文件系统管理 用户接口 一 处理机管理 在多道程序或多用户的情况下 要组织多个作业同时运行 就要解决对处理机分配调度策略 分配实施和资源回收等问题 调度策略 确定多个用户程序使用处理机的原则 占用处理机的时间 给出调度算法并实施具体的处理机分派 二 存储管理 存储管理的主要任务是管理存储器资源 为多道程序运行提供有力的支撑 存储管理的主要功能包括 1 存储分配与回收 存储管理将根据用户程序的需要给它分配存储器资源 并在其使用完毕后 回收之 2 存储保护 存储管理要把各个用户程序相互隔离起来互不干扰 更不允许用户程序访问操作系统的程序和数据 从而保护用户程序存放在存储器中的信息不被破坏 二 存储管理 3 地址映射 变换 进程逻辑地址到内存物理地址的映射 这样程序员无需知道自己的程序分配到内存的什么具体物理地址 仅仅知道自己的逻辑地址即可 体现了存储的无关性 4 内存扩充 由于物理内存容量有限 难于满足用户程序的需求 存储管理还应该能从逻辑上来扩充内存储器 为用户提供一个比内存实际容量大得多的编程空间 方便用户的编程和使用 实现虚拟内存 三 设备管理 设备管理的主要任务是 管理各类外围设备 完成用户提出的I O请求 加快I O信息的传送速度 发挥I O设备的并行性 提高I O设备的利用率 以及提供每种设备的设备驱动程序和中断处理程序 向用户屏蔽硬件使用细节 四 文件管理 上述三种管理是针对计算机硬件资源的管理 文件管理则是对系统的信息资源的管理 在现代计算机中 通常把程序和数据以文件形式存储在外存储器上 供用户使用 这样 外存储器上保存了大量文件 对这些文件如不能采取良好的管理方式 就会导致混乱或破坏 造成严重后果 四 文件管理 为此 在操作系统中配置了文件管理 它的主要任务是 对用户文件和系统文件进行有效管理 实现按名存取 实现文件的共享 保护和保密 保证文件的安全性 提供给用户一套能方便使用文件的操作和命令 五 用户接口 为了使用户能灵活 方便地使用计算机和操作系统 操作系统还提供了一组友好的用户接口 包括 1 程序接口 提供一组广义指令 或称系统调用 程序请求 供用户程序和其他系统程序调用 2 命令接口 提供一组控制操作命令 或称作业控制语言 或象Linux中的shell命令语言 供用户去组织相控制自己作业的运行 3 图形接口 1 4 1操作系统的主要特性 目前广泛使用着的计算机仍然是以顺序计算为基础的存储式计算机 为了充分利用计算机系统的资源 一般采用多个用户分用的策略以顺序计算为基础的计算机系统要完成并行处理的功能 必然导致并发和共享的矛盾 另外 由于操作系统要随时处理各种事件 所以它也包含着不确定性 1 并发性 并发性 Concurrence 是指两个或两个以上的运行程序在同一时间间隔段内同时执行 操作系统是一个并发系统 并发性是它的重要特征 它应该具有 处理多个同时执行的程序的能力 并发性的例子 多个I O设备同时在输入输出 设备输入输出和CPU计算同时进行 内存中同时有多个程序被启动交替 穿插地执行 并发性 concurrency 又称共行性 是指能处理多个同时性活动的能力 并发事件之间不一定要同一时刻发生 宏观上 同时 微观上 不一定同时 或者称逻辑上 同时 并行性 parallelism 是指同时发生的两个并发事件 具有并发的含义 而并发则不一定并行 宏观上 同时 微观上也应 同时 或者称物理上 同时 2 共享性 共享指操作系统中的资源 包括硬件资源和信息资源 可被多个并发执行的进程所使用 出于经济上的考虑 一次性向每个用户程序分别提供它所需的全部资源不但是浪费的 有时也是不可能的 现实的方法是让多个用户程序共用一套计算机系统的所有资源 因而必然会产生共享资源的需要 资源共享的方式 资源共享的方式可以分成两种 第一种是互斥共享 系统中的某些资源如打印机 磁带机 卡片机 虽然它们可提供给多个进程使用 但在同一时间内却只允许一个进程访问这些资源 这种同一时间内只允许一个进程访问的资源称临界资源 许多物理设备 以及某些数

温馨提示

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

评论

0/150

提交评论