对操作系统可以采用多种方法进行分类。最常用的方法是按照其功能将操作系统分为三种基本类型,分别是批处理操作系统、分时操作系统和实时操作系统。
(一)无操作系统的计算机系统
1.人工操作方式
1945年,第一台计算机诞生。
1945年到20世纪50年代中期,属于第一代计算机。
此时计算机使用真空管做成的。由于没有出现OS,运行速度慢,体积庞大、功耗非常大。
人工操作方式有以下两方面的缺点:
1.用户独占全机。计算机及其全部资源只能由上机用户独占。 2.CPU等待人工操作。当用户进行转带(卡)、卸带(卡)等人工操作时,CPU和内存等资源是空闲的。
人工操作方式严重降低了计算机资源的利用率,此时出现了人机矛盾。
2.脱机输入I/输出方式
为了解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,20世纪50年代末出现了脱机输入/输出(Off-Line I/O)技术。
技术原理:
事先将装有用户程序和数据的纸带(或卡片)装入纸带输入机(或卡片机),在一台外围机的控制下,把纸带(卡片)上的数据(程序)输入到磁带上。当CPU需要这些程序和数据时,再从磁带上将其高速调入内存。
当CPU需要输出时,可由CPU直接高速地把数据从内存送到磁带上,然后再在另一台外围机地控制下,将磁带上地结果通过相应的输出设备输出。
脱机输入/输出方式定义:
程序和数据地输入和输出都是在外围机地控制下完成的,或者是它们在脱离主机的情况下进行的,所以称为脱机输入/输出方式。
联机输入/输出方式的定义:
在主机控制下进行输入/输出的方式称为联机输入/输出方式。
脱机输入I/输出O方式的优点:
1.减少了CPU的空闲时间。 2.提高了I/O速度。
(二)单道批处理系统
1.单道批处理系统的处理过程
单道处理系统是指计算机对作业的处理都是成批进行的,但在内存中始终保持一道作业。这种系统就是在解决人际矛盾和CPU与I/O设备速率不匹配的矛盾过程中形成的。
2.单道批处理系统的特征
1.自动性 2.顺序性 3.单道性
(三)多道批处理系统
在单道批处理系统中,内容中仅有一道作业,无法成分利用系统中的所有资源,使得性能比较差。为了进一步提高资源的利用率和系统吞吐量,就引入了程序设计技术,由此产生了多道批处理系统。
多道批处理系统的概念
多道批处理系统允许多个程序同时装入到主存储器中,使一个中央处理器轮流地执行多个作业,各个作业同时使用各自地外围设备,提高了计算机系统的资源利用率。
1.多道程序设计
该技术指计算机内存中同时存放几道相互独立的程序,它们在管理程序的控制下相互交替允许。
在OS中引入了多道程序设计技术带来的好处:
1.提高CPU的利用率。 2.可提高内存和I/O设备利用率。 3.增加系统吞吐量。
2.多道批处理系统的优缺点
1)主要优点:
1.1 资源利用率高 1.2 系统吞吐量大
2)主要缺点:
2.1 平均周转时间长 2.2 无交互能力
3. 多道批处理系统需要解决的问题
多道批处理系统是一种有效且十分复杂的系统,为使得计算机系统中的多道程序之间能够协调地运行,必须解决如下一些问题:
3.1 处理机管理问题 3.2 内存管理问题 3.3 I/O设备管理问题 3.4 文件管理问题 3.5 作业管理问题
4.多道批处理系统的特点
4.1.多道性 4.2.无序性 4.3.调度性
(四)分时系统
1.分时系统的概念以及产生
分时技术:把处理机的运行时间分成很短的时间片,时间片轮流地把处理机分给各联机作业使用。
若某个作业在分配给它的时间片内不能完成计算,则该作业暂时中断,把处理机让给另一个作业使用,等待下一个时间片到时间再继续运行。
由于分时技术地出现,就早就了分时系统地出现。
分时系统是指在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。
第一台分时操作系统CTSS(Compatable Time Sharing System)由麻省理工大学开发成功。
它经常被用于查询系统中,满足许多用户查询的需要,用户的需求具体表现在几个方面:
1.人机交互 2.共享主机 3.便于用户上机
2.分时系统的基本特点
1.多路性(同时性):允许一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。 宏观上:若干个用户同时使用计算机,共享系统资源 微观上:计算机轮流上为多个作业运行时间片 2.交互性:用户通过终端向主机发出请求,根据主机的响应结果,再向系统发出请求,直到得到满意结果位置。 3.及时性:机器对用户的请求要在短时间内得到响应。 4.独立性:每个用户使用各自的终端与主机交互,感觉不到其他用户的存在,好像是独立使用计算机系统。
(五)实时系统
实时系统(Real Time System)是指系统能够及时(或即时)响应外部事件的请求,再规定时间内完成对该事件的处理,并控制所有的实时任务协调一致的运行。
在设计实时操作系统时,首先要考虑系统的实时性和可靠性。
1.实时任务
在实时系统中必然存在着若干个实时任务,这些任务通常与某个外部设备有关。能够及时反应或控制相应的外部设备,因而带有某种程度的紧迫性。所以可以从不同的角度对实时任务进行分类:
1)按任务执行时是否呈现周期性来划分
1.周期性实时任务 2.非周期性实时任务
2)根据对截止时间的要求来划分
1.硬实时任务(Hard Real-time Task)即实时控制系统: 系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。 主要用于军事和工业控制领域,计算机及时测量出被控系统的各种数据,并即使作出相应处理。 硬实时任务的特点:响应速度块,可靠性高。 2.软实时任务(Soft Real-time Task)即实时事务处理系统: 也是联系截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会大。 主要用户诸如订票系统、银行管理系统等方面,这些应用中,计算机对用户的请求及时作出回答,并能及时修改,处理系统中数据。
2.实时系统的基本特点
1.及时性 2.多路性 3.交互性 4.可靠性 5.独立性
(六)微机操作系统
配置在微型机的操作系统称为微机操作系统,最早诞生的微机操作系统是配置在8位微机上的CP/M。后续就出现了16位、32、64位等。
微机操作系统可按微机的字长来分,也可以按照运行方式来分如下:
1.单用户单任务操作系统
单用户单任务操作系统的定义是:只允许一个用户上机,且只允许用户程序作为一个任务。这种是最简单的微机操作系统,主要配置在8位和16位微机上。
最具有代表性的单用户单任务微机操作系统的是CP/M
和MS-DOS
。
2.单用户多任务操作系统
单用户多任务操作系统的含义是:只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了系统地性能。
代表性的操作系统:微软早期开发的的Windows系列
多用户多任务操作系统
多用户多任务操作系统的含义是:允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户又可进一步分为几个任务,使它们能够并发执行,可进一步提高资源利用率和系统吞吐量。
代表性的操作系统是:UNIX OS