计算机操作系统-操作系统引论.ppt_第1页
计算机操作系统-操作系统引论.ppt_第2页
计算机操作系统-操作系统引论.ppt_第3页
计算机操作系统-操作系统引论.ppt_第4页
计算机操作系统-操作系统引论.ppt_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

第一章 操作系统引论,1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 操作系统的结构设计,教学目的: 掌握操作系统的定义及其基本特性、主要功能 了解操作系统的发展历史和几种类型的操作系统 教学难重点: 操作系统的定义 操作系统的基本特征 OS结构设计,操作系统概念(p8) 一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度以及方便用户的程序集合。,1.1 操作系统的目标和作用,计算机系统由硬件和软件组成,1.1 操作系统的目标和作用,1.1.1 操作系统的目标,有效性:提高系统资源利用率,提高系统吞吐量; 方便性:计算机只能识别0、1;用户熟悉的是各种语言; (1,2如何折中?) 可扩充性:便于增加新的功能和模块; (如何设计?) 开放性:遵循世界标准规范(OSI)。,图11 OS作为接口的从层状示意图,计算机硬件,操作系统,系统调用,命令,图标,窗口,应用程序及实用程序,系统设计者,程序员,用户,1.1.2 操作系统的作用,1. OS作为用户与计算机硬件系统之间的接口(用户观点),(1) 命令方式。这是指由OS提供了一组联机命令(语言), 用户可通过键盘输入有关命令,来直接操纵计算机系统。 (2) 系统调用方式。OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来操纵计算机。 (3) 图形、窗口方式。用户通过屏幕上的窗口和图标来操纵计算机系统和运行自己的程序。,用户通过三种方式使用计算机:,2. OS作为计算机系统资源的管理者(功能的观点) 处理机管理:分配和控制处理机 存储器管理:分配及回收内存 I/O(Input/Output)设备管理:I/O分配与操作 文件管理:文件存取、共享和保护,3. OS实现了对计算机资源的抽象 裸机:对于一台完全无软件的计算机系统称为裸机。 难于使用。 扩充机器(虚机器):把覆盖了软件的机器称为扩充机或虚拟机。 更方便。 分层扩充的特点 P4,洋葱头似的扩充,1.1.3 推动操作系统发展的主要动力,不断提高计算机资源利用率的需要 如批处理系统的出现 方便用户 如分时交互式系统的出现 器件的不断更新换代 8位-16-32-64-. 计算机体系结构的不断发展: 单机OS-多机OS-网络OS,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 (第一代计算机),1. 人工操作方式 如纸带输入机 特点:无任何软件、独占性、独占性、 串行性 缺点: (1) 用户独占全机 (2) CPU等待人工操作,导致人机矛盾、CPU和I/O设备速度不匹配,机器 作业在机器上 人工操 操作时间与机器 速度 计算所需时间 作时间 有效运行时间之比 1万次/秒 1小时 3分钟 1 :20 60万次/秒 1分钟 3分钟 3 :1,人工操作方式缺点:,1.2.1 无操作系统的计算机系统,2. 脱机输入/输出(Off-Line I/O)方式,引入I/O机的概念,解决CPU和I/O设备速度不匹配的矛盾。 主要优点: 减少了CPU的空闲时间。 (2) 提高I/O速度。,1.2.2 单道批处理系统(Simple Batch Processing System) (第二代计算机),处理过程(图1-4) 概念 监督程序(monitor):在其控制下使一批作业能一个接一个的连续处理。 单道批处理系统:系统对作业的处理都是成批进行的、且内存中始终只保持一道作业,称为单道批处理系统(Simple Batch Processing System) 。 解决人机矛盾,即提高系统资源的利用率和吞吐量。 特征: 自动性 顺序性 单道性,图 1-4 单道批处理系统的处理流程,1.2.3 多道批处理系统(Multiprogrammed Batch Processing System)(第三代计算机),概念 多道:系统中同时驻留多个作业 多道程序设计优点 提高CPU利用率(图1-5) 提高内存和I/O设备利用率 增加了系统吞吐量 特征 多道性、宏观上并行、 微观上串行 多道批处理优点 资源利用率高、系统吞吐率大 缺点 平均周转时间长、无交互能力(怎么办?),图15,用户程序,监督程序,(a)单道程序运行情况,表示获得CPU,图15,程序A,调度程序,I/O请求,(b)四道程序运行情况,程序B,程序C,程序D,I/O请求,I/O请求,I/O请求,I/O完成,I/O完成,I/O完成,A完成,表示获得CPU,C再运行,多道批处理系统需要解决的问题,处理机管理问题。 (2) 内存管理问题。 (3) I/O设备管理问题。 (4) 文件管理问题。 (5) 作业管理问题。,1.2.4 分时系统,分时系统(Time-Sharing System)的产生 用户的需求表现在: 人机交互性 (控制) 共享主机 (昂贵) 便于用户上机 (方便) 分时系统:指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,各个用户都可通过自己的终端以交互方式使用计算机。,分时系统实现中的关键问题,及时接收。多路卡、输入缓冲区 及时处理。交互作业应在内存、响应时间应短 采用时间片轮转,多路性(同时性) 独立性(独占性) 及时性 (13sec) 交互性: “会话”,分时系统的特征,1.2.5 实时系统,概念 所谓“实时”,是表示“及时”,而实时系统(Real-Time System)是指系统能及时(或即时)响应外部事件的请求,在规定的时间内(deadline)完成对该事件的处理,并控制所有实时任务协调一致地运行。,应用需求,实时控制。 (2) 实时信息处理。,响应时间:指用户发出命令,到系统完成用户命令所需的时间。 批处理操作系统 没有 分时操作系统 秒级(一般情况) 实时操作系统 微秒级 甚至更小(经典说法) 系统满足用户时限(deadline)的要求(现代),实时任务,按任务执行是否呈现周期性来划分 周期性的 非周期性的(开始截止时间或完成截止时间) 根据对截止时间的要求来划分 硬实时任务:必须满足。实时控制 软实时任务:不太严格。实时信息处理,实时操作系统特点 系统对外部的信号必须能及时响应,(在规定的时间内(deadline)); 要求高可靠性和安全性,效率则放在第二位; 系统整体性强; 不要求很强的“会话”能力。,实时系统与分时系统特征的比较 多路性:相似 独立性:相同 及时性:实时系统要求更高 交互性:分时系统交互性更强 可靠性:实时系统要求更高,1.2.6 微机操作系统的发展 字长划分: 运行方式划分: 1单用户单任务操作系统 含义:只允许一个用户上机,且只允许用户程序作为一个任务运行。(一个人只做一件事) 配置在8位和16位微机。代表是CP/M,MS-DOS,PC-DOS 。,2单用户多任务操作系统 含义:只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行。(一个人同时做多件事) 配置在32位微机。代表是由微软公司推出的Windows。,3多用户多任务操作系统 含义:允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。 (多个人同时做多件事) 大、中和小型机中所配置的大多是多用户多任务操作系统, 而在32位微机上也配置有多用户多任务操作系统,其中最有代表性的是UNIX OS。,UNIX OS是美国电报电话公司的Bell实验室在19691970年期间开发的。现在最有影响的两个能运行在微机上的UNIX操作系统的变型是Solaris OS和Linux OS。,Linux OS:Linux 是UNIX的一个重要变种,最初是由芬兰学生Linus Torvalds针对Intel 80386开发的。1991年在Internet网上发布第一个Linux版本,由于源代码公开,因此有很多人通过Internet与之合作,使Linux的性能迅速提高,其应用范围也日益扩大。相应地,源代码也急剧膨胀,此时它已是具有全面功能的UNIX系统,大量在UNIX上运行的软件(包括1000多种实用工具软件和大量的网络软件)被移植到Linux上,而且可以在主要的微机上运行,如Intel 80x86 Pentium等。,更多操作系统,网络操作系统(Network Operating System)是建立在主机操作系统基础上,用于管理网络通信和共享资源,协调各主机上任务的运行,并向用户提供统一的、有效的网络接口的软件集合,它是用户和主机操作系统之间的接口。 分布式计算机系统由多台分散的计算机经互连网络连接而成 嵌入式操作系统指运行在嵌入式(计算机)环境中,对整个系统及所有操作的各种部件、装置等资源进行统一协调、处理、指挥和控制的系统软件,操作系统的进一步发展,操作系统发展的主要动力 器件快速更新换代。 计算体系结构不断发展。 提高计算机系统资源利用率的需要。 让用户使用计算机越来越方便的需要。 满足用户新要求,提供给用户新服务。 操作系统发展的方向 从大中型计算机来看,主要是分布式和网络化。 微机操作系统主要向多用户多功能、虚存、图形、数据库等方向发展。 操作系统的智能化。,1.3 操作系统的基本特性,OS特性一:并发性 并行与并发 并行性(Parallelism)是指两个或多个事件在同一时刻发生。如T3时刻 并发性(Concurrence) 是指两个或多个事件在同一时间间隔内发生。如T3T4时刻 并发性是OS最重要的特征,OS所有的内容都围绕它展开!,引入进程 目的:为了使多个程序能并发执行。 好处:有效地提高了系统资源的利用率和系统吞吐量,并改善了系统的性能。 进程(Process):在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。 一个进程在运行时需要一定的资源,如CPU、存储空间及I/O设备等。,线程 在引入线程的OS中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。 进程和并发是现代操作系统最重要的概念!,OS特性二:共享性 共享:系统中资源可供内存中多个并发执行的进程共同使用 互斥共享:一段时间只允许一个进程访问某资源. 同时访问:宏观上允许在一段时间内由多个进程同时对某资源进行访问,但微观上仍是互斥的. 并发与共享是OS的两个最基本的特征,它们互为存在条件.,OS特性三:虚拟,虚拟(不存在) 通过某种技术把一个物理实体变为若干个逻辑上的对应物。 在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、虚拟外部设备等。,OS特性四:异步性 异步性(Asynchronism) :进程以人们不可预知的速度向前推进。运行结果如何保证正确? 在多道程序环境下允许多个进程并发执行,但只有进程在获得所需的资源后方能执行。由于资源等因素的限制,使进程的执行通常都不是“一气呵成”,而是以“停停走走”的方式运行。,1.4 操作系统的主要功能,1.4.1处理机管理功能 多道环境下,处理机的运行及分配都是以进程为单位,因此处理机管理可归结为进程管理。 1、进程控制 创建/撤消进程、迁移进程状态。一般由进程控制原语完成 2进程同步 两种协调方式:(1) 进程互斥方式。(2) 进程同步方式。 3进程通信 类型:直接通信、间接通信,4、调度(作业与进程) 作业调度 为作业分配必要资源,调入内存建立进程,并使之进入就绪队列。 进程调度 从就绪队列中选出进程,分配CPU,使之运行。 调度算法: FCFS、优先权等,1.4.2 存储器管理功能 目的:方便用户使用,且提高存贮器利用率 1.内存分配:静态分配、动态分配 2.内存保护:机制,例:上下界限寄存器 3.地址映射:逻辑地址物理地址 4.内存扩充:虚存,逻辑上扩充,1.4.3 设备管理功能 任务:提高I/O利用率和速度,方便用户 1.缓冲管理 缓冲区:用来解决CPUI/O矛盾,如:CPU快则应多创建缓冲区。 2.设备分配 包括:设备,设备控制器,I/O通信的分配和回收 3.设备处理 设备驱动程序,1.4.4 文件管理功能 任务:方便用户,提供安全性 1.文件存储空间的管理 为每个文件分配必要的外存空间,提高外存的利用率。 2.目录管理 使用户按名存取,提高速度。 3.文件的读、写管理和保护 根据用户的需求读写数据,并提供有效的存取控制功能。,1.4.5 操作系统与用户之间的接口 为了方便用户使用操作系统,OS又向用户提供了“用户与操作系统的接口”。该接口通常可分为两大类: (1)用户接口。它是提供给用户使用的接口,用户可通过该接口取得操作系统的服务; (2) 程序接口。它是提供给程序员在编程时使用的接口,是用户程序取得操作系统服务的惟一途径。,1用户接口 由一组“命令”集组成,分为联机和脱机用户接口 联机用户接口 由一组键盘操作命令及命令解释程序所组成 脱机(批处理用户接口) 用JCL写作业说明书 图形用户接口联机用户接口 图形、icon 2程序接口 系统调用 高级语言的库函数,1.5 OS的结构设计,第一代:无结构 第二代:模块式 第三代:分层式 第四代:微内核 把前三代的OS结构称为传统的OS结构,而把第四代的OS结构称为现代OS结构。,1.5.1 传统的操作系统结构,无结构OS 一组过程集,各过程可相互调用,也叫整体系统结构。 缺点:逻辑复杂,维护困难.,1.5.1 传统的操作系统结构,模块化结构OS 通过分解和模块化来控制大型软件复杂度。 如:进程模块、内存模块,各模块内进一步划分子模块。 优点: 提高了OS设计的正确性、可理解性、可维护性 增强的OS的可适应性 加速了OS的开发过程:并行开发模块 缺点: 模块大小、接口不易确定 模块依赖关系可能复杂-无序模块法,1.5.1 传统的操作系统结构,分层式操作系统 分层式结构的基本概念:自底向上,每一层仅能使用其底层所提供的功能和服务 优点 (1) 易保证系统的正确性 (2) 易扩充和易维护性 缺点 效率降低,1.5.2 客户/服务器模式 客户/服务器(Client/Server)模式可简称为C/S模式。 C/S模式的组成 由客户机、服务器和网络系统三个部分组成。 (1) 客户机:通常在一个LAN网络上连接有多台网络工作站(简称客户机),每台客户机都是一个自主计算机。,(2) 服务器:通常是一台规模较大的机器,在其上驻留有网络文件系统或数据库系统等,它应能为网上所有的用户提供一种或多种服务。平时它一直处于工作状态,被动地等待来自客户机的请求,一旦检查到有客户提出服务请求,便去完成客户的请求,并将结果送回客户。这样,工作站中的用户进程与服务器进程便形成了客户/服务器关系。 (3) 网络系统:用于连接所有客户机和服务器,实现它们之间通信和网络资源共享的系统。,C/S模式的优点 (1) 数据的分布处理和存储 (2) 便于集中管理。 (3) 灵活性和可扩充性 (4) 易于改编应用软件。,1.5.3 面向对象的程序设计 面向对象技术的基本概念 面向对象技术是20世纪80年代初提出并很快流行起来的。该技术是基于“抽象”和“隐蔽”原则来控制大型软件的复杂度的。 对象是指在现实世界中具有相同属性、服从相同规则的一系列事物(事物可以是一个物理实体、一个概念或一个软件模块等)的抽象,而把其中的具体事物称为对象的实例。,面向对象技术的优点 在设计操作系统时,将计算机中的实体作为对象来处理,可带来如下好处: (1) 通过“重用”提高产品质量和生产率。 (2) 使系统具有更好的易修改性和易扩展性。 (3) 更易于保证系统的“正确性”和“可靠性”。,1.5.4 微内核OS结构 1微内核操作系统的基本概念 为了提高操作系统的“正确性”、“灵活性”、“易维护性”和”可扩充性”,在进行现代操作系统结构设计时,即使在单处理机环境下,大多也采用基于客户/服务器模式的微内核结构,将操作系统划分为两大部分:微内核和多个服务器。 Mach OS:并行分布式操作系统,现代的微内核体系结构的例子 Windows 2K/XP:为了移植性的考虑,Windows操作系统的大多数代码是用C语言编写的 /bookfiles/296/10029612589.shtml,1) 足够小的内核 内核是指精心设计的、能实现现代OS最基本的核心功能的部分。 用于: 实现与硬件紧密相关的处理; 实现一些较基本的功能; 负责客户和服务器之间的通信。它们只是为构建通用OS提供一个重要基础,这样就可以确保把操作系统内核做得很小。,2) 基于客户/服务器模式 由于客户/服务器模式具有非常多的优点,故在单机微内核操作系统中几乎无一例外地都采用客户/服务器模式,将操作系统中最基本的部分放入内核中,而把操作系统的绝大部分功能都放在微内核外面的一组服务器(进程)中实现。例如用于提供对进程(线程)进行管理的进程(线程)服务器,提供虚拟存储器管理功能的虚拟存储器服务器,提供I/O设备管理的I/O设备管理服务器等,它们都是被作为进程来实现的,运行在用户态,客户与服务器之间是借助微内核提供的消息传递机制来实现信息交互的。图1-10示出了在单机环境下的客户/服务器模式。,图1-10 在单机环境下的客户/服务器模式,3) 应用“机制与策略分离”原理 在现代操作系统的结构设计中,经常利用“机制与策略分离”的原理来构造OS结构。所谓机制,是指实现某一功能的具体执行机构。而策略,则是在机制的基础上,借助于某些参数和算法来实现该功能的优化,或达到不同的功能目标。通常,机制处于一个系统的基层,而策略则处于系统的高层。在传统的OS中,将机制放在OS的内核的较低层,把策略放在内核的较高层次中。而在微内核操作系统中,通常将机制放在OS的微内核中。正因为如此,才有可能将内核做得很小。,4) 采用面向对象技术 操作系统是一个极其复杂的大型软件系统,我们不仅可以通过结构设计来分解操作系统的复杂度,还可以基于面向对象技术中的“抽象”和“隐蔽”原则控制系统的复杂性,再进一步利用“对象”、“封装”和“继承”等概念来确保操作系统的“正确性”、“可靠性”、“易修改性”、“易扩展性”等,并提高操作系统的设计速度。正因为面向对象技术能带来如此多的好处,故面向对象技术被广泛应用于现代操作系统的设计中。,2微内核的基本功能 1) 进程(线程)管理 采用“机制与策略分离”的原理。 2) 低级存储器管理 只配置最基本的低级存储器管理机制 3) 中断和陷入处理 将与硬件紧密相关的一小部分放入微内核中处理。此时微内核的主要功能,是捕获所发生的中断和陷入事件,并进行相应的前期处理。 在微内核OS中是将进程管理、存储器管理以及I/O管理这些功能一分为二,属于机制的很小一部分放入微内核中,另外绝大部分放在微内核外的各种服务器中来实现。,3微内核操作系统的优点 1) 提高了系统的可扩展性 由于微内核OS的许多功能是由相对独立的服务器软件来实现的,当开发了新的硬件和软件时,微内核OS只须在相应的服务器中增加新的功能,或再增加一个专门的服务器。与此同时,也必然改善系统的灵活性,不仅可在操作系统中增加新的功能,还可修改原有功能,以及删除已过时的功能,以形成一个更为精干有效的操作系统。,2) 增强了系统的可靠性 这一方面是由于微内核是出于精心设计和严格测试的,容易保证其正确性;另一方面是它提供了规范而精简的应用程序接口(API),为微内核外部的程序编制高质量的代码创造了条件。此外,由于所有服务器都是运行在用户态,服务器与服务

温馨提示

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

评论

0/150

提交评论