首页 理论教育操作系统发展历史-计算机导论

操作系统发展历史-计算机导论

【摘要】:操作系统的发展主要经历了单道批处理系统、多道批处理系统、分时系统、实时系统和网络操作系统五个发展过程。在操作系统的支持下,计算机的使用效率大大提高,计算机的功能大大增强,计算机的应用范围大大拓宽。因此,出现了操作系统的最早雏形——单道批处理系统。

操作系统的发展经历了长期的过程。操作系统的发展主要经历了单道批处理系统、多道批处理系统、分时系统、实时系统和网络操作系统五个发展过程。在操作系统的支持下,计算机的使用效率大大提高,计算机的功能大大增强,计算机的应用范围大大拓宽。

1.无操作系统时代

最初的计算机没有操作系统,这时的计算机资源是以时间为单位整体划分给用户的。早期的输入设备主要是纸带机和卡片机,纸带机用纸带记录0、1符号,纸带某位置上有孔表示符号1,纸带某位置上无孔表示符号0。纸带机输入数据的原理是用光照射纸带,若纸带某位置上透光,则表示符号1;若纸带某位置上不透光,则表示符号0。卡片机的工作原理类同。

程序设计人员将事先编写好的程序和运行程序所需的数据表示成穿好孔的一卷纸带,在划分给自己的时间内,程序设计人员先启动纸带机,把表示在纸带上的程序和数据输入到计算机内存,然后运行程序得到输出结果。

这时用户在划分给自己的时间内,对计算机的所有硬件资源是全部占有的,当用户通过纸带机输入程序和数据时,计算机的其余硬件资源都处于空闲状态。由于纸带机输入数据的速度较计算机的运行速度慢很多,所以通常的情况是,输入数据占用了相当长的时间,而运行程序通常只占用了非常短的时间。显然,这种方式下计算机的使用效率非常低。

在计算机发明不久,磁带机就发明了。磁带机和纸带机一样都可以永久性地存储数据,但磁带机的速度较纸带机的速度高很多。为了提高计算机的使用效率,一种脱机处理方式被采用。脱机处理方式的具体方法分为两步:首先,程序设计人员将事先编写好的程序和数据表示成穿好孔的一卷纸带,再通过某种装置把纸带上的程序和数据转输入到磁带上。然后,在划分给自己的时间内,程序设计人员先将磁带插入到和计算机主机连接的磁带机上,然后在主机上运行该程序得到输出结果。脱机处理方式如图5-2所示。

图5-2 脱机处理方式

如图5-2所示,程序和数据是在纸带机脱机状态(纸带机没有和计算机主机连接,而是和另外一台辅助计算机连接)时记录在纸带上,再通过辅助计算机进一步记录在磁带上的,所以这种方式称为脱机处理方式。与此对应,前面讨论的处理方式下,程序和数据是通过和主机连接的纸带机输入到内存的,所以前面的处理方式也称作联机处理方式。

2.单道批处理系统

早期的计算机非常昂贵,为了能充分利用计算机的硬件资源,应尽量减少人的干预,让计算机连续运转,因为当人干预时,计算机的资源是闲置的。因此,出现了操作系统的最早雏形——单道批处理系统。单道批处理系统的核心是一个专门管理和调度用户作业的、独立于用户程序的程序,这个程序被称为监督程序。单道批处理系统出现于20世纪50年代的中期,和第二代计算机——晶体管计算机的出现相对应。

监督程序是管理和调度用户作业的。所谓作业,是指用户要求计算机完成的工作。作业主要是完成用户某个任务的程序和必要的数据。另外,此时出现了专门负责管理计算机以及帮助用户完成作业的称为操作员的人员,由于所有用户需要把自己的程序和数据都交给操作员,由操作员负责执行这些用户程序,因而用户需要把自己程序的运行操作命令告诉操作员。所以,作业还包括运行用户程序的操作命令。换句话说,作业是用户程序和所需数据以及运行用户程序的操作命令的集合。

单道批处理系统是在脱机处理基础上的处理过程自动化。程序设计人员将程序、数据以及作业命令以磁带方式递交给操作员,操作员将收集到的许多用户的作业放入计算机外存(磁盘或磁带),并把这些作业组织成作业队列。队列是一种按先进先出原则组织其存储对象的数据组织形式。作业队列就是存放作业的队列,先放入的作业先被取出,后放入的作业后被取出。此时监督程序和用户的作业轮流在计算机上运行。监督程序首先从作业队列中取出一个作业,然后把这个作业调入内存,最后把控制权交给用户程序并开始运行该用户程序。用户程序运行结束后再把控制权交给监督程序,监督程序再次运行,并再次从作业队列中取出一个作业调入内存运行。这个过程连续不断地重复进行,直到所有作业运行完为止。由于此种方式对作业的处理是成批进行的,并且内存中每次只保持一道作业,所以称为单道批处理系统。

单道批处理系统由于没有人不断干预而造成的机器资源闲置浪费,因此一定程度上提高了计算机的使用效率。

3.多道批处理系统

计算机在运行作业的程序时,时间消耗主要有两个方面,一个方面是消耗在CPU处理数据上,另一方面是消耗在数据的输入/输出(简写为I/O)上。由于输入/输出设备的速度相对于CPU的速度慢很多,而计算机在输入输出数据时CPU是空闲的,为解决这一问题,提高计算机的使用效率,在20世纪60年代中期又出现了多道批处理系统。

多道批处理系统的核心是一个调度程序,调度程序每次把若干个作业从作业队列中调入内存,并选择一个作业,将CPU资源分配给它,让它开始运行。若当前正处理的作业要进行输入/输出操作,就应释放对CPU的占有权。调度程序则从其他调入内存的作业中重新选择一个运行。这样,在作业程序进行输入/输出操作时CPU也不会闲置。

4.分时系统(www.chuimin.cn)

多道批处理系统只适合于运行与用户交互很少的作业程序。交互是指作业程序在运行时和用户之间的数据输入或数据输出过程,这样的交互过程也称作人机交互,即用户(人)和计算机(机)之间的交互。对人机交互很多的作业程序来说,多道批处理系统很不方便。例如,程序设计人员完成程序设计的计算机应用过程。程序设计人员完成程序设计的过程包含很多次对程序的测试和修改过程,但在多道批处理系统中,程序设计人员一旦把作业(正在设计的某个程序和一些测试数据等)递交给操作员,就只能在一段时间后,通过查看作业的运行结果来发现程序中的错误。作业程序运行过程中需要输入的数据也是程序设计人员预先考虑好的。程序设计人员通过操作员和计算机进行交互,这样的交互方式很不方便。在这样的环境下,程序设计人员完成一个复杂程序的设计时间将会很长。为解决这些问题,进一步提高计算机的效率,在20世纪60年代末期又出现了分时系统。

分时系统的核心是把CPU的使用时间划分成非常短的时间片,多个用户的程序可同时驻留在内存,当轮到某个用户程序使用CPU时,该程序只能在限定的时间片内运行。当用户的时间片用完时,操作系统就暂停该用户程序的运行,并按某种调度策略调出内存中的另一个用户程序开始运行。一个只有两个用户程序运行的分时系统工作过程示意图如图5-3所示。

图5-3 分时系统工作过程示意图

分时系统的目标是要方便人机交互频繁的用户程序的使用,对于人机交互频繁的用户程序来说,最好的方法是用户(如上面例子的程序设计人员)不通过操作员,而是自己直接完成程序运行时的人机交互过程。这就要求计算机系统有足够多的输入和输出设备供多个用户同时使用。我们把通过线路连接到计算机的一组输入和输出设备称为计算机系统的一台终端。当一个计算机系统有很多终端时,就可以允许很多个用户同时运行自己的程序。多终端的计算机系统如图5-4所示。

图5-4 多终端的计算机系统

早期的终端不能和现在的终端相比。早期的终端只是简单的输入设备(如键盘)和输出设备(如显示屏),现在的高级终端可以是一台微机。位于计算机主机附近(如同一个建筑物内)的终端称作本地终端。和计算机主机距离较远的终端称作远程终端。

我们把分时系统的计算机中,用户通过键盘输入数据给计算机,计算机对用户输入的数据做出反应的这段时间称为计算机系统的响应时间。随着计算机硬件技术的发展,CPU的处理速度非常快,分时操作的时间片通常远小于1s,系统对全部用户程序轮转一遍在2~3s以内,因此在分时系统下,即使是多个用户同时使用计算机,计算机对每个用户的响应时间也不会超过2~3s。这样,每个用户在感觉上是独占计算机CPU资源的。

5.实时系统

虽然多道批处理和分时系统已获得较令人满意的资源利用率和用户响应时间,但计算机系统仍然不能满足实时控制和实时信息处理的需求。实时控制是指把计算机系统用于生产过程的控制、航天系统的跟踪和控制等,所形成的以计算机系统为中心的控制系统。这种应用要求计算机系统对所控制的系统的参数(如温度、压力等)变化采集及时,对应该做出的调整控制及时。

实时信息处理是指把主机和许多个终端(主要是远程终端)连接起来,计算机及时接收用户从终端发来的服务请求,并根据用户的请求做出及时处理和回答。目前广泛应用的飞机票购票系统,股票买卖系统,情报检索系统,信用卡记账取款系统等,都属于实时信息处理系统的例子。

在20世纪70年代初期出现了实时系统。实时系统,特别是实时控制系统,要求计算机系统具有及时性和可靠性。如果生产过程的参数变化采集的不及时,系统做出的控制不及时,就不能满足实际应用的需要;如果系统的可靠性不高,经常瘫痪,将给企业造成难以挽回的损失。在分时系统的基础上,实时系统进一步确保了用户(特别是关键用户)的响应时间,并充分考虑了系统的可靠性。实时系统的可靠性通过两个方面来保证,一方面是进一步增强软件系统的可靠性,另一方面是采用多台硬件设备作为备份,一旦出错进行切换。

6.其他操作系统

随着计算机硬件和软件技术的发展,为了满足各个领域更高的需求,从20世纪70年代中期至今,又发展了许多新的操作系统,例如并行操作系统、分布式操作系统、网络操作系统等。

7.微机操作系统

随着大规模和超大规模集成电路技术的飞速发展,从20世纪80年代初开始至今,面向个人使用的微型计算机得到了极大的发展和普及。微机操作系统就是在微机上运行的操作系统。微机操作系统的基本功能是帮助用户进行微机资源的管理,其特点是单用户,所有资源采用独享方式。早期微机操作系统的代表是DOS(Disk Operating System,磁盘操作系统)。从20世纪90年代初期开始,Windows操作系统开始取代DOS。Windows操作系统最显著的特点是图形化的窗口(Window)界面,因为该系统支持多任务,即允许显示屏上同时存在多个窗口(Windows),因此取名为Windows。Windows操作系统是促进微机广泛应用的一个重要因素。