第二章OS的形成与发展ppt课件.ppt
目 录,第二章 操作系统的形成与发展,2.1 手工操作(操作系统的史前时代)2.2 监控程序(操作系统的萌芽)2.3 多道批处理操作的概念(现代意义上的操作系统)2.4 分时操作系统(Time-Share Operating System)2.5 实时操作系统(Real Time OS)2.6 个人操作系统(贴近大众的操作系统)2.7 网络操作系统(Network OS)2.8 分布式操作系统(Distributed OS)2.9 嵌入式操作系统(Embedded OS),自世界上第一台计算机ENIAC(1800平方英尺)于1946年问世以来,计算机在运算速度、存储容量、外设功能、元件工艺及系统结构等方面都有了惊人的发展。通常,人们按照计算机元件工艺的演变过程,将其发展划分为四个时代:,巨型、微型、网络化、智能化几个方向发展,与硬件发展相似,OS 经历了如下的发展过程:,手工操作(操作系统的史前时代)监控程序(操作系统的萌芽)多道批处理操作的概念(现代意义上的操作系统)分时操作系统(Time-Share Operating System)实时操作系统(Real Time OS)个人操作系统(贴近大众的操作系统)网络操作系统(Network OS)分布式操作系统(Distributed OS)嵌入式操作系统(Embedded OS),操作系统的三种基本类型:,批处理系统,分时系统,实时系统,在此基础上又发展了具有多种类型操作特征的操作系统,称为通用操作系统。它可以同时兼有批处理、分时、实时处理和多重处理的功能,或其中两种以上的功能。,第0代操作系统(40年代)手工操作(操作系统的史前时代),计算机发展初期,计算机系统基本上仅由硬件组成(没有OS),整个系统是由用户直接控制使用,又称“手工操作”阶段。,缺陷:,因为计算机速度慢,存储量小,外设又简单,所以辅存主要借助磁带。,1.用户上机时一人独占全机资源。,2.程序运行前的准备时间过长。,3.人机矛盾 人的操作速度与机器运行速度相比,仍存在速度极不匹配的矛盾(CPU等待人工操作装卡片)。,三、第1代操作系统(50年代)监控程序(操作系统的萌芽),为了缓和早期使用计算机时存在的人机速度严重不匹配的矛盾,提高资源利用率,人们开始利用计算机系统中的软件来代替操作员的部分工作,从而产生了最早的OS 早期批处理系统(联机批处理),基本思想:,设计一个常驻内存的程序(monitor,监督程序),操作员有选择地把若干作业合成一批,安装输入设备上,并启动监督程序,然后由监督程序自动控制这批作业运行,从而减少部分人工干预,有效地缩短了作业运行前的准备时间,相对地提高CPU的利用率。,缺陷:,1.I/O 慢速,与CPU 的高速不匹配,2.用户交互性差,四、第2代操作系统(60年代初)多道批处理操作的概念(现代意义上的操作系统),硬件技术取得了两个方面的重大进展,(一)通道技术的引进,(二)中断技术的发展,使得通道具有中断主机工作的能力,多道程序设计概念,是指把一个以上的作业存放在主存中,并且同时处于运行状态,使这些作业共享处理机时间和外部设备等其它资源(系统资源),对于一个单处理机系统来说,作业同时处于运行状态只是一宏观的概念其含义是指每个作业都已开始运行,但尚未完成。,就微观而言,在任一特定时刻,在处理机上运行的作业只有一个,优点与问题:,CPU 利用率大大提高,用户无控制权,无交互性,延迟大,引入多道程序设计技术的根本目的:提高CPU的利用率,充分发挥并行性,这包括:程序之间;设备之间;设备与CPU之间均并行工作。,例:有两道程序A、B,按下图以多道程序方式运行,要求在右图画出它们的运行轨迹,并计算在60ms内,CPU的利用率,假设起始时首先运行B,并允许忽略监督程序切换A、B的时间。,解:,B,A,I/O,I/O,10,60,t,20,30,40,50,25,35,45,若在单道程序系统中,没有任何并行情况存在,在任一特定时刻只有CPU或某一个设备在工作。,例 R.Turner 提出的例子更具说服力,为了说明多道程序的优点,不妨参考R Turner 提出的例子:某计算机系统,有256KB的主存(不包含操作系统),一个磁盘,一个终端和一台打印机。同时提交的三个作业分别命名为JOB1、JOB2、JOB3。各作业运行时间分别为5min、15min和10min。它们对资源的使用情况如下表所示:,作业名,作业类型,所需主存/KB,所需磁盘,所需终端,所需打印机,运用时间/min,JOB1,CPU型,50,不用,不用,不用,5,JOB2,I/O型,100,不用,需要,不用,15,JOB3,I/O型,80,需要,不用,需要,10,三个作业的执行要求 P7 Tab1-1,假定JOB1主要使用CPU处理数据,JOB2主要使用终端进行作业的输入,JOB3运行时主要使用磁盘和打印机,后两作业都只需要较少的CPU时间。对于简单批处理情况,这些作业将按顺序执行。JOB1运行5min完成,JOB2在等待5min后,运行15min完成,JOB3在等待20min后开始执行。三个作业全部完成需要30min(这三个作业是一批)。,采用多道程序设计技术,可让这三个作业并行运行。由于它们运行中几乎不同时使用同一资源,所以三个作业可同时运行。JOB1在进行数据处理的同时,JOB2在终端上进行作业输入,JOB3在使用磁盘和打印机。因此,JOB1只需5min完成,JOB2需15min完成,JOB3需10min完成。这样三个作业全部完成的时间只需15min,显然系统处理效率明显提高。,CPU利用率,主存利用率,磁盘利用率,打印机利用率,全部作业完成时间/min,吞吐量/(作业 h1),单 道,17%=5/(5+15+10),30%=(50+100+80)/256/3,33%=10/30,33%=10/30,30=5+15+10,6=3/(30/60),多道(三道作业),多道程序与单道程序的平均资源利用率,平均周转时间/min,18=(5+20+30)/3,33%=(5/15),90%=(50+100+80)/256,67%=10/15,67%=10/15,15,12=3/(15/60),10=(5+15+10)/3,吞吐量:单位时间(1小时)内系统所处理的作业个数。,周转时间:从作业进入系统到作业完成退出系统所用的时间。,平均周转时间:同时参与系统运行的几个作业的周转时间的平均值。,4.几个概念,单道批处理系统的处理过程如下:它将一批作业以脱机方式输入到磁带上,然后由配置在系统中的监督程序将磁带上的第一个作业装入内存,并把运行的控制权交给作业;当该作业处理完成或出现异常时,又把控制权交给监督程序,再由监督程序调入磁带上的第二个作业直到磁带上所有的作业全部完成.通过脱机输入和作业的自动过渡,单道批处理系统提高了机器资源的利用率。,单道批处理系统具有以下的特征:1、自动性。磁带上的一批作业能自动 地、逐个地依次运行,无须人工干预。2、顺序性。作业完成的顺序与它们进入内存的顺序以及作业在磁带上的顺序一致。3、单道性。内存中仅能存放一道作业。,多道批处理系统:为了使系统中的多道程序能协调地运行,多道批处理系统中必须配置一组软件,来解决多道程序对系统资源的共享和争用问题,并对作业进行合理的组织和调度。,多道批处理系统具有以下特征:1、多道性:内存中可同时存放多个作业。2、调度性:需通过作业调度从外存中选取若干个作 业装入内存,还需要通过进程调度在内存中的多 个作业中分配CPU。3、无序性:通常,作业调度的次序与作业在外存中 的次序无关,作业完成的次序与作业进入内存 的次序也无关。,五、分时系统:是交互式系统和多道程序设计相结合。,分时系统是指在一台主机上连接有多个带显示器和键盘的终端,同时允许多个用户通过自己的终端以交互方式使用计算机,共享主机中的资源。分时技术:即把处理机的时间划分成很短的时间片(如几百毫秒),轮流地分配给各个终端作业使用。若在分配给它的时间片内,作业仍没执行完,它也必须将CPU交给下一个作业使用,并等下一轮得到CPU时再继续执行。这样,系统便能及时地响应每个用户的请求,从而使每个用户都能及时地与自己的作业交互。每个用户感觉不到别人也在使用这台计算机,就好像他独占了这台机器。典型的分时系统有UNIX,Linux等。,“时间片轮转法”怎样分享CPU?,CPU,t,一个时间t,PRG1,PRG2,PRG1,PRG2,未完,例如:若有n=20个用户,时间片大小 ts=10 毫秒,则每个用户在 nts=0.2秒内至少能用ts=10ms 的CPU,由于CPU的速度比人在终端上指令的时间快得多,则用户似乎感到CPU为自己独占。,系统规定一个称之为“时间片”的时间单位,所有终端用户轮流享用一个时间片的CPU。,分时系统的特性:,多路性:多个用户可以同时使用计算机(同时性),独占性:程序之间相互独立,多个用户同时使用,如像独占计算机系统,独立工作,互不干扰。,及时性:响应时间合理(系统按人们所能接受的等 待)时间(如13s)及时响应用户的请求。,交互性:用户可通过终端与系统进行广泛的人 机对话。其广泛性表现在:用户可以请求系统 提供多方面的服务,如文件编辑、数据处理和 资源共享等。,六、实时系统(Real-time System):实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。常用的实时系统有RDOS等。1、实时控制系统:通常是指以计算机为中心的生产过程控制系统和武器控制系统。这类系统要求实时采集现场数据,并对数据进行及时处理,进而自动地控制相应的执行机构,使某个(些)参数(如温度、压力、方位等)能按预定的规律变化,以保证产品质量和提高产量。(如导弹发射系统、飞机自动导航系统),2、实时信息处理系统:通常是指对信息进行实时处理的系统。这类系统要求及时接收从终端(包括远程终端)发来的服务请求,按请求的内容对信息进行检索和处理,并在很短的时间内为用户做出正确的回答。典型的实时信息处理系统证券交易系统、飞机订票系统、情报检索系统等。,实时系统的特性:1、多路性2、独立性3、及时性:就以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微秒。4、交互性:人和系统的交互仅限于访问系统中某些特定的专用服务程序。5、可靠性:采取多级容错措施来保障系统的安全性及数据的安全性。,网络操作系统,计算任务由大量独立而又相互联结的计算机共同完成。某一台计算机上的用户可以使用其它计算机上的资源。这就形成了计算机网络技术。网络操作系统(Network Oerating System)是在操作系统之上增加网络功能实现的。网络功能部分模块将网络中的各台计算设备通过各种网络协议,实现各台计算设备之间的通信及网络中各种资源的共享。,操作系统的形成与发展,网络操作系统,较早在微型计算机中使用的网络操作系统有3COM的网络系统、Novell公司的Netware系列网络软件。这些系统在用户中产生较大的影响。随着网络技术的发展,操作系统都融合进了网络功能。可以说现在的操作系统都具备了网络功能。,操作系统的形成与发展,分布式操作系统,将大量计算机通过网络连接在一起,以获得极高的运算能力和数据共享的系统称为分布式系统(Distributed System)。能使分布式计算机系统中若干台计算机相互协作完成一个共同任务的系统软件称为分布式操作系统(Distributed Operating System)。,操作系统的形成与发展,分布式操作系统,特点:统一的操作系统。所有主机使用的是同一个操作系统。处理机资源共享。计算任务能方便地从一台主机迁移到另一台主机上运行,从而共享处理机资源。透明性。分布式系统各主机地理位置对用户是透明的,用户不必知道计算任务具体在那些主机上执行。对他来说,整个运算是在一个分布式系统上运行就足够了。自治性。分布式系统上的各台主机都是处于平等的地位。没有主从关系。一台主机的失效不会影响整个系统。,操作系统的形成与发展,分布式操作系统,优点:可以使用许多较低成本的主机(如微机),通过分布计算获得较高的运算性能。由于拥有较多的、分布在各地的主机,个别主机发生故障时,整个系统仍能工作。,操作系统的形成与发展,分布式操作系统,集群(Cluster)是分布式系统的一种。它由一组互联的主机构成统一的资源进行工作。当其中的个别主机出现故障时,其应用会迁移到其他主机上继续执行。该方法提供了高性能和高可用性。集群功能较易在低成本的微机中实现。许多操作系统都推出了集群功能。如HP的HP_UX操作系统,IBM AIX操作系统的HACMP,Linux操作系统,Windows操作系统等。,操作系统的形成与发展,嵌入式操作系统,嵌入式系统是一种完全嵌入受控器件内部为特定应用设计的专用计算机系统。嵌入式系统通常执行的是带有特定要求而预先定义的任务。对整个智能芯片以及它所控制的各种部件模块等资源进行统一调度、指挥和控制的系统软件称为嵌入式操作系统(Embedded Operating System)。嵌入式操作系统要具备高可靠性、实时性、占有资源少、成本低等特性。其系统功能可针对需求进行裁减、调整和编译生成。以便满足最终产品的设计要求。,操作系统的形成与发展,嵌入式操作系统,嵌入式操作系统的设计特点为:配有源程序及可配置的系统模块、具有丰富的同步原语、可选择的各种调度算法、可选择的内存分配策略、定时器与计数器、多种中断处理、多种异常处理、多种通信方式、标准C 语言库、数学运算库和开放式应用程序接口等等。,操作系统的形成与发展,嵌入式操作系统,手机操作系统手机的功能已从只具有话音、短信的简单手机,发展到了具有娱乐、办公、上Internet等的智能手机。其上使用的嵌入式操作系统的功能越来越强大。网络设备中的操作系统在网络设备中也大量采用嵌入式操作系统。如CISCO 公司在它的路由器、交换机中采用了自行开发的IOS 操作系统。,现代操作系统的发展,微内核结构多线程对称多处理(SMP)分布式操作系统面向对象,操作系统的基本概念,