操作系统的发展史

5.嵌入式操作系统和智能卡操作系统

(1)嵌入式操作系统

嵌入式操作系统就是运行在嵌入式芯片环境中,对整个芯片及它所操作和控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。

(2)智能卡操作系统

智能卡实际上是一个单片微机系统,包括中央处理机,存储部件以及对外联络的通信接口。各类智能卡中都驻留了一个微型的操作系统,又称片内操作系统。

一般而言,智能卡操作系统具有4个基本功能:资源管理、通信管理、安全管理和应用管理。读写器和智能卡之间通过命令——响应对方式进行通信和控制。

批处理系统

批处理系统:加载在计算机上的一个系统软件,在它的控制下,计算机能够自动地、成批地处理一个或多个用户的作业(这作业包括程序、数据和命令)。

联机批处理系统
首先出现的是联机批处理系统,即作业的输入/输出由CPU来处理。
主机与输入机之间增加一个存储设备——磁带,在运行于主机上的监督程序的自动控制下,计算机可自动完成:成批地把输入机上的用户作业读入磁带,依次把磁带上的用户作业读入主机内存并执行并把计算结果向输出机输出。完成了上一批作业后,监督程序又从输入机上输入另一批作业,保存在磁带上,并按上述步骤重复处理。

金沙澳门官网网址 1

 

监督程序不停地处理各个作业,从而实现了作业到作业的自动转接,减少了作业建立时间和手工操作时间,有效克服了人机矛盾,提高了计算机的利用率。

但是,在作业输入和结果输出时,主机的高速CPU仍处于空闲状态,等待慢速的输入/输出设备完成工作: 主机处于“忙等”状态。

 

脱机批处理系统
为克服与缓解高速主机与慢速外设的矛盾,提高CPU的利用率,又引入了脱机批处理系统,即输入/输出脱离主机控制。
这种方式的显著特征是:增加一台不与主机直接相连而专门用于与输入/输出设备打交道的卫星机。
其功能是:
(1)从输入机上读取用户作业并放到输入磁带上。
(2)从输出磁带上读取执行结果并传给输出机。

这样,主机不是直接与慢速的输入/输出设备打交道,而是与速度相对较快的磁带机发生关系,有效缓解了主机与设备的矛盾。主机与卫星机可并行工作,二者分工明确,可以充分发挥主机的高速计算能力。

金沙澳门官网网址 2

 

脱机批处理系统:20世纪60年代应用十分广泛,它极大缓解了人机矛盾及主机与外设的矛盾。IBM-7090/7094:配备的监督程序就是脱机批处理系统,是现代操作系统的原型。

不足:每次主机内存中仅存放一道作业,每当它运行期间发出输入/输出(I/O)请求后,高速的CPU便处于等待低速的I/O完成状态,致使CPU空闲。

为改善CPU的利用率,又引入了多道程序系统。

 

4.SPOOLING

使用缓冲技术可以提高CPU与外部设备工作的并行程度,如果CPU处理数据的速度比输入设备快得多,CPU总是要等待输入设备将数据送入缓冲区后才能读取和处理数据,输出也会发生类似的情况。开始时CPU能全速运行,但不久所有的系统缓冲区都会被塞满,此后CPU必须等待输出设备取走缓冲区中的数据,以便可以在其中存放新的输出结果。这种执行速度受到I/O设备限制的作业,成为受限于I/O的作业。另一方面,对于计算量很大的受限于CPU的作业,输入缓冲区经常 是满的,而输出缓冲区经常是空的。因此,缓冲技术虽然是有用的。但是在很多情况下作用并不明显。

磁盘系统的出现极大地改进了脱机输入输出的效果。磁带系统的问题时当CPU从磁带上读入数据时,读卡机等输入设备就不能在磁带的尾部写数据,所以慢速输入设备的数据不能通过磁带机白CPU联机的读入。磁盘设备消除了这个问题。磁盘的读写头很容易从磁盘中的一个区域移动到另一个区域,所以磁盘的读写位置能很快地从读卡机存入磁盘的区域移动到CPU需要读取的下一个记录的区域。

在磁盘系统中,读卡机等设备将数据写到磁盘中,卡片数据的映像记录存放在由操作系统的维护的一张表中。在一个作业执行期间需要请求读卡机输入数据时,实际读入的是存放在磁盘中对应记录向。类似的,当作业要将输出送至打印机是,该输出实际上是通过系统缓冲区写到磁盘中,在该作业运行结束后,才由操作系统自动打印存储在磁盘中的输出结果,这种由操作系统将磁盘模拟为输入/输出设备的处理方式称为SPOOLING(并行的外部设备操作联机)也称为“假脱机”。SPOOLING系统是以磁盘为几乎无限巨大的缓冲区来解决低速的I/O设备与高速CPU之间的速度匹配问题。

相比内存缓冲技术,SPOOLING技术还有其他优点:内存缓冲只能是作业的I/O与本身的计算工作重叠进行,SPOOLING能使多个作业的I/O与计算机重叠地进行。使用SPOOLING技术,计算机在执行一个作业时打印前面已完成了的计算任务的输出结果,还能读入尚未运行的作业,这样使得CPU和多台I/O设备能以很高速度进行并行地工作,提高系统的吞吐量。

SPOOLING还提供一种很重要的结构——缓冲池,操作系统可以根据系统当前的情况在这些作业中挑选下一个运行的作业,以提高CPU和外部设备的利用率。这样操作系统就能是一些CPU受限作业和I/O设备受限作业相搭配运行,以提高系统中各种设备的利用率。

分时系统

由于CPU速度不断提高和采用分时技术,一台计算机可同时连接多个用户终端,而每个用户可在自己的终端上联机使用计算机,好象自己独占机器一样。

分时技术:把处理机的运行时间分成很短的时间片,按时间片轮流把处理机分配给各联机作业使用。

若某个作业在分配给它的时间片内不能完成其计算,则该作业暂时中断,把处理机让给另一作业使用,等待下一轮时再继续其运行。由于计算机速度很快,作业运行轮转得很快,给每个用户的印象是,好象他独占了一台计算机。而每个用户可以通过自己的终端向系统发出各种操作控制命令,在充分的人机交互情况下,完成作业的运行。

具有上述特征的计算机系统称为分时系统,它允许多个用户同时联机使用计算机。

金沙澳门官网网址 3

 

特点:
(1)多路性。若干个用户同时使用一台计算机。微观上看是各用户轮流使用计算机;宏观上看是各用户并行工作。
(2)交互性。用户可根据系统对请求的响应结果,进一步向系统提出新的请求。这种能使用户与系统进行人机对话的工作方式,明显地有别于批处理系统,因而,分时系统又被称为交互式系统。
(3)独立性。用户之间可以相互独立操作,互不干扰。系统保证各用户程序运行的完整性,不会发生相互混淆或破坏现象。
(4)及时性。系统可对用户的输入及时作出响应。分时系统性能的主要指标之一是响应时间,它是指:从终端发出命令到系统予以应答所需的时间。

分时系统的主要目标:对用户响应的及时性,即不至于用户等待每一个命令的处理时间过长。

分时系统可以同时接纳数十个甚至上百个用户,由于内存空间有限,往往采用对换(又称交换)方式的存储方法。即将未“轮到”的作业放入磁盘,一旦“轮到”,再将其调入内存;而时间片用完后,又将作业存回磁盘(俗称“滚进”、“滚出“法),使同一存储区域轮流为多个用户服务。

多用户分时系统是当今计算机操作系统中最普遍使用的一类操作系统。

 

2.操作系统的特征

(1)并发

并发是指在某一时间间隔内计算机系统内存在着多个程序活动。并行是指在同一时刻计算机内有多个程序都在执行,这只有在多CPU系统中才能实现。在单CPU的系统中,多个程序时不可能同时执行的。并发是从宏观上看多个程序的运行活动,这些程序在串行地交错地运行,由操作系统负责这些程序之间的运行切换,人们从外部宏观上观察,有多个程序都在系统中运行。

(2)共享

共享是指多用户或程序共享系统的软、硬件资源。共享可以提高各种系统设备和系统软件的使用效率。在合作开发某一项目时,同组用户共享软件和数据库可以大大提高开发效率和速度。

共享方式可分为互斥共享和同时共享。互斥共享设备有打印机、磁带机、绘图仪等。这些设备不允许两个作业同时访问,当一个作业使用完毕并释放了所占的资源后,才允许另一个作业访问,有些快速设备如磁盘,尽管也只能允许多个作业串行地访问,但由于作业访问和释放该资源时间极短,在宏观上可看成允许多个作业同时访问,这类设备的共享方式也认为是同时共享。

软件的共享方式也可分为互斥的和同时的,一般来说,只读的数据、数据结构、只读的文件和纯可执行的文件可同时共享,而可写数据、数据结构和文件智能互斥共享。

(3)虚拟

操作系统向用户提供了比直接使用裸机简单方便得多的高级抽象服务,从而为程序员隐藏了硬件操作复杂性,这就相当于在原先的物理计算机上覆盖了一至多层系统软件,将其改造成一台功能更强大而且易于使用的扩展机或虚拟机。例如,分时系统就是把一个计算机系统虚拟为多台逻辑上独立、功能相同的系统,SPOOLING系统可以将一台I/O设备虚拟为多台逻辑设备,或将一台互斥共享设备虚拟成同时共享设备。一条物理信道也可虚拟为具有很多“端口”的多个逻辑信道。

(4)不确定性

不确定性是指使用同样一个数据集的同一个程序在同样的计算机环境下运行,每次执行的顺序和所需的时间都不相同。因此作业就在不可预测的次序中进行,即程序的执行过程是不可预测的。操作系统的不确定性不是指程序执行结果的不确定性。程序执行结果的不确定性的原因往往是由于程序设计本身的错误或由于用户的个程序之间的配合不当引起的。这种结果的不确定性又是在操作系统复杂的不确定性的环境下发生的,使得程序每次的执行情况不易复现。

实时系统

虽然多道批处理系统和分时系统能获得较令人满意的资源利用率和系统响应时间,但却不能满足实时控制与实时信息处理两个应用领域的需求。于是就产生了实时系统,即系统能够及时响应随机发生的外部事件,并在严格的时间范围内完成对该事件的处理。
实时系统在一个特定的应用中常作为一种控制设备来使用。

实时系统可分成两类:
(1)实时控制系统。当用于飞机飞行、导弹发射等的自动控制时,要求计算机能尽快处理测量系统测得的数据,及时地对飞机或导弹进行控制,或将有关信息通过显示终端提供给决策人员。当用于轧钢、石化等工业生产过程控制时,也要求计算机能及时处理由各类传感器送来的数据,然后控制相应的执行机构。
(2)实时信息处理系统。当用于预定飞机票、查询有关航班、航线、票价等事宜时,或当用于银行系统、情报检索系统时,都要求计算机能对终端设备发来的服务请求及时予以正确的回答。此类对响应及时性的要求稍弱于第一类。

实时操作系统的主要特点:
(1)及时响应。每一个信息接收、分析处理和发送的过程必须在严格的时间限制内完成。
(2)高可靠性。需采取冗余措施,双机系统前后台工作,也包括必要的保密措施等。

 

操作系统发展图谱

金沙澳门官网网址 4

1.1 什么是操作系统

通常把操作系统定义为用以控制和管理计算机系统资源,方便用户使用的程序和数据结构的集合。

(1)系统观点——计算机资源管理

在计算机系统中,CPU是计算机硬件的核心,是计算机系统的心脏;操作系统则是计算机软件的核心,是计算机系统的大脑,是整个系统的控制中心,是计算机或智能控制和管理系统中首要的、最重要的、最复杂的系统软件。

计算机系统内运行的程序无时无刻地争夺计算机有限的资源,操作系统的作用在于组织和管理整个计算机系统的硬件和软件资源,在用户和程序之间分配系统资源,使之协调一致、高效地完成各种复杂的任务。

(2)用户观点——用户使用计算机的界面

通过操作系统,计算机能提供更多、质量更高的服务。安装不同的操作系统,呈现在用户面前将会是完全不同的两类“虚拟”计算机,因此操作系统是用户与计算机硬件之间的接口。用户一般通过以下方式获得计算机系统提供的服务。

①命令方式:通过键盘输入有关命令直接使用计算机,以获得计算机所能提供的服务,也可以将若干命令集中在一个文件中,以批处理的方式连续运行命令,获得多种服务。

②系统调用:用户可在应用程序中调用操作系统向用户提供的服务程序,以获得系统服务。

金沙澳门官网网址,③图形界面:用户可以在窗口环境中通过鼠标、按键、菜单和对话框等方式操纵计算机。

(3)软件观点——程序和数据结构的集合

操作系统是直接与硬件相邻的第一层软件,是由大量极其复杂的系统程序和众多的数据结构集成的。在计算机中的所有软件中,操作系统起到了核心和控制的作用,其它软件的运行都要依赖他的支持。操作系统是在系统中永久运行的超级程序。

手工操作(无操作系统)

1946年第一台计算机诞生--20世纪50年代中期,还未出现操作系统,计算机工作采用手工操作方式。

手工操作
程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数据运行;计算完毕,打印机输出计算结果;用户取走结果并卸下纸带(或卡片)后,才让下一个用户上机。

金沙澳门官网网址 5

 

手工操作方式两个特点:
(1)用户独占全机。不会出现因资源已被其他用户占用而等待的现象,但资源的利用率低。
(2)CPU 等待手工操作。CPU的利用不充分。

 20世纪50年代后期,出现人机矛盾:手工操作的慢速度和计算机的高速度之间形成了尖锐矛盾,手工操作方式已严重损害了系统资源的利用率(使资源利用率降为百分之几,甚至更低),不能容忍。唯一的解决办法:只有摆脱人的手工操作,实现作业的自动过渡。这样就出现了成批处理。

 

1.早期的计算机和人工操作方式

在早期的计算机系统中,每一次独立的运行都需要很多的人工干预,操作过程烦琐,占用机时多,也很容易产生错误,在一个程序的运行过程中要独占系统的全部硬件资源,设备利用率很低。

操作系统发展史

 1.分时系统

为了降低交互式系统的等待时间和运行时间的比率,系统通过多态终端同时向很多用户提供运行环境,这种分时系统就能以合理的成本向用户提供交互式使用计算机的方便。

现在,大部分系统能同时支持批处理和分时。

分时系统具有以下几个基本特征

①多路性,一台主机可连接多条终端,多个终端用户可以同时使用计算机,共享系统的硬件和软件资源。

②独立性,各用户操作互不干扰,每个用户都认为整个计算机系统被他所独占,为他服务。

③交互性,用户能与系统进行对话,在一个多步骤作业的运行过程中,用户能通过键盘等输入数据或命令,系统获得用户的输入后做出响应,显示执行的状况和结果。

④及时性,系统一般能在1秒钟内接收和响应用户的输入命令或数据,在数秒内显示命令的执行结果。

比较著名的分时系统有:CTTS(兼容分时系统)和MULTICS(多路信息和计算系统)

多道程序系统

多道程序设计技术

所谓多道程序设计技术,就是指允许多个程序同时进入内存并运行。即同时把多个程序放入内存,并允许它们交替在CPU中运行,它们共享系统中的各种硬、软件资源。当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序。

单道程序的运行过程:
在A程序计算时,I/O空闲, A程序I/O操作时,CPU空闲(B程序也是同样);必须A工作完成后,B才能进入内存中开始工作,两者是串行的,全部完成共需时间=T1+T2。

金沙澳门官网网址 6

 

多道程序的运行过程:
将A、B两道程序同时存放在内存中,它们在系统的控制下,可相互穿插、交替地在CPU上运行:当A程序因请求I/O操作而放弃CPU时,B程序就可占用CPU运行,这样 CPU不再空闲,而正进行A I/O操作的I/O设备也不空闲,显然,CPU和I/O设备都处于“忙”状态,大大提高了资源的利用率,从而也提高了系统的效率,A、B全部完成所需时间<<T1+T2。

金沙澳门官网网址 7

 

 

多道程序设计技术不仅使CPU得到充分利用,同时改善I/O设备和内存的利用率,从而提高了整个系统的资源利用率和系统吞吐量(单位时间内处理作业(程序)的个数),最终提高了整个系统的效率。

单处理机系统中多道程序运行时的特点:
(1)多道:计算机内存中同时存放几道相互独立的程序;
(2)宏观上并行:同时进入系统的几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕;
(3)微观上串行:实际上,各道程序轮流地用CPU,并交替运行。

多道程序系统的出现,标志着操作系统渐趋成熟的阶段,先后出现了作业调度管理、处理机管理、存储器管理、外部设备管理、文件系统管理等功能。

多道批处理系统
20世纪60年代中期,在前述的批处理系统中,引入多道程序设计技术后形成多道批处理系统(简称:批处理系统)。
它有两个特点:
(1)多道:系统内可同时容纳多个作业。这些作业放在外存中,组成一个后备队列,系统按一定的调度原则每次从后备作业队列中选取一个或多个作业进入内存运行,运行作业结束、退出运行和后备作业进入运行均由系统自动实现,从而在系统中形成一个自动转接的、连续的作业流。
(2)成批:在系统运行过程中,不允许用户与其作业发生交互作用,即:作业一旦进入系统,用户就不能直接干预其作业的运行。

 

批处理系统的追求目标:提高系统资源利用率和系统吞吐量,以及作业流程的自动化。

批处理系统的一个重要缺点:不提供人机交互能力,给用户使用计算机带来不便。
虽然用户独占全机资源,并且直接控制程序的运行,可以随时了解程序运行情况。但这种工作方式因独占全机造成资源效率极低。

一种新的追求目标:既能保证计算机效率,又能方便用户使用计算机。 20世纪60年代中期,计算机技术和软件技术的发展使这种追求成为可能。

 

1.4 操作系统的概念、特征和功能

1.3现代操作系统的类型

5.多道程序设计 

脱机操作、缓冲和SPOOLING虽然能使CPU的计算与I/O设备的操作重叠地进行,却有一定的局限性,这些技术都不能使CPU和I/O设备时常保持忙碌状态。当一个作业必须等待I/O操作完成是(如从磁盘读入一个数据),CPU就不能执行下一步运算,往往只能空等。

作业调度使另一种新的计算基数——多道程序设计成为可能,能进一步提法哦CPU的利用率,使它几乎总有任务可执行,也能提高外部设备的利用率,使得多个作业的多种I/O操作可以并行运行。

在多道程序设计系统中,操作系统可以将多个作业存放在作业缓冲池中。在某一时刻,操作系统从缓冲池中挑选一个作业,并开始执行该作业。当执行中的作业因要等待用户键盘输入或等待其它设备I/O操作时,在多道程序设计中,操作胸膛呢过久可在缓冲池中挑选另一个作业,使其运行。当前一个作业结束了的等待状态后就可以再次获得CPU,继续运行下去。只要系统中总是存在可执行的作业,CPU就永远不会闲着。

多道程序设计技术都是相当复杂的,首先为了支持多道程序设计,要有足够大的内存,同时需要有比较复杂的存储和保护机构,同时还需要处理机调度机构,决定哪一个作业占用CPU,除此之外,还需要提供各种外部设备的调度和管理功能。

本文由金沙澳门官网网址发布于应用资讯,转载请注明出处:操作系统的发展史

相关阅读