操作系统的发展与分类
标签: 操作系统
学习人数: 11.5k

操作系统的发展史

        第一台真正的数字计算机是英国数学家Charles Babbage设计的,尽管Babbage花费了他一生的时间和财产,试图建造他的“分析机”,但他始终未能让机器正常运转,因为它是台纯机械的数字计算机,他所在时代的技术不能生产出他所需要的高精度轮子、齿轮和轮牙,这台分析机没有操作系统。

 

未配置操作系统的计算机系统(这时还没出现OS)

1. 人工操作方式

早期的操作方式是由程序员将事先已穿孔的纸带(或卡片),装入纸带输入机(或卡片输入机),再启动它们将纸带(或卡片)上的程序和数据输入计算机,然后启动计算机运行。仅当程序运行完毕并取走计算结果后,才允许下一个用户上机。

缺点:

(1)用户独占全机,即一台计算机的全部资源由上机用户所独占。资源利用率低。

(2)CPU 等待人工操作。当用户进行装带(卡)、卸带(卡)等人工操作时,CPU 及内存等资源是空闲的。CPU利用不充分。

2. 脱机输入/输出(Off-Line I/O)方式

为了解决人机矛盾及 CPU 和 I/O 设备之间速度不匹配的矛盾,20 世纪 50 年代末出现了脱机 I/O 技术。

该技术是事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带(卡片)上的数据(程序)输入到磁带上。当CPU 需要这些程序和数据时,再从磁带上高速地调入内存。

减少了CPU 的空闲时间,提高I/O速度。

 

单道批处理系统

单道批处理系统(Simple Batch Processing System)的处理过程

为实现对作业的连续处理,需要先把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序(Monitor),在它的控制下,使这批作业能一个接一个地连续处理。

缺点: 系统中的资源得不到充分的利用。 因为在内存中仅有一道程序,每逢该程序在运行中发出 I/O 请求后,CPU 便处于等待状态,必须在其 I/O 完成后才继续运行。 I/O 设备的低速性,更使CPU的利用率显著降低。

 

多道批处理系统

为了进一步提高资源的利用率和系统吞吐量,在 20 世纪 60 年代中期引入了多道程序设计技术(多道程序设计技术允许多个程序同时进入内存并允许它们在CPU中交替地运行,这些程序共享系统中的各种硬/软件资源),由此形成了多道批处理系统。

多道批处理系统的优缺点如下:

(1)资源利用率高。引入多道批处理能使多道程序交替运行,以保持 CPU 处于忙碌状态;在内存中装入多道程序可提高内存的利用率;此外还可以提高 I/O 设备的利用率。

(2)系统吞吐量大。

①CPU和其它资源保持“忙碌”状态;

②仅当作业完成时或运行不下去时才进行切换,系统开销小。

(3)平均周转时间长。由于作业要排队依次进行处理,因而作业的周转时间较长, 通常需几个小时,甚至几天。

(4)无交互能力。用户一旦把作业提交给系统后,直至作业完成,用户都不能与自己的作业进行交互,修改和调试程序极不方便。

多道批处理系统是一种复杂有效的系统,为使系统中的多道程序间能协调地运行,多道批处理系统需要解决下述一系列问题:

(1)处理机争用问题。既要能满足各道程序运行的需要,又要能提高处理机的利...

登录查看完整内容


课后作业

课后习题

 

1.下列选项中,不属于多道程序设计的基本特征的是(  )。
A.制约性   B.间断性   C.顺序性   D.共享性

【答案】C

【解析】多道程序的运行环境比单道程序的运行环境更加复杂。引入多道程序后,程序的执行就失去了封闭性和顺序性。程序执行因为共享资源及相互协同的原因产生了竞争,相互制约。考虑到竞争的公平性,程序的执行是断续的。

 

2.操作系统的基本类型主要有(  )。
A.批处理操作系统、分时操作系统和多任务系统
B.批处理操作系统、分时操作系统和实时操作系统
C.单用户系统、多用户系统和批处理操作系统
D.实时操作系统、分时操作系统和多用户系统

【答案】B

【解析】操作系统的基本类型主要有批处理系统、分时系统和实时系统。

 

3.实时操作系统必须在( )内处理来自外部的事件。
A.一个机器周期      B.被控制对象规定时间
C.周转时间          D.时间片

【答案】B

【解析】实时系统要求能实时处理外部事件,即在规定的时间内完成对外部事件的处理。

 

4.【2016统考真题】下列关于批处理系统的叙述中,正确的是(  )

Ⅰ.批处理系统允许多个用户与计算机直接交互

Ⅱ.批处理系统分为单道批处理系统和多道批处理系统

Ⅲ.中断技术使得多道批处理系统和I/O设备可与CPU并行工作

A.仅Ⅱ、Ⅲ            B. 仅Ⅱ
C. 仅Ⅰ、Ⅱ           D. 仅Ⅰ、Ⅲ

【答案】A

【解析】批处理系统中,作业执行时用户无法干预其运行,只能通过事先编制作业控制说明书来间接干预,缺少交互能力,也因此才发展出分时系统,I 错误。批处理系统按发展历程又分为单道批处理系统、多道批处理系统,II正确。多道程序设计技术允许同时把多个程序放入内存,并允许它们交替在CPU中运行,它们共享系统中的各种硬/软件资源,当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序,即多道批处理系统的I/O设备可与CPU并行工作,这都是借助于中断技术实现的,III正确。

 

5.【2017统考真题】与单道程序系统相比,多道程序系统的优点是(  )

Ⅰ.CPU利用率高

Ⅱ.系统开销小

Ⅲ.系统吞吐量大

Ⅳ.I/O设备利用率高

A.仅Ⅰ、Ⅲ            B. 仅Ⅰ、Ⅳ
C. 仅Ⅱ 、Ⅲ          D. 仅Ⅰ、Ⅲ、Ⅳ

【答案】D

【解析】多道程序系统通过组织作业(编码或数据)使 CPU总有一个作业可执行,从而提高了 CPU的利用率、系统吞吐量和I/O设备利用率,I、III、IV 是优点。但系统要付出额外的开销来组织作业和切换作业,11错误。所以选D。

 

6. 下列( )应用工作最好釆用实时操作系统平台。
Ⅰ.航空订票    Ⅱ.办公自动化    Ⅲ.机床控制
Ⅳ. AutoCAD    Ⅴ.工资管理系统    Ⅵ.股票交易系统
A. Ⅰ、Ⅱ和Ⅲ    B. Ⅰ、Ⅲ和Ⅳ    C. Ⅰ、Ⅴ和Ⅳ    D. Ⅰ、Ⅲ和Ⅵ

【答案】D

【解析】实时操作系统主要应用在需要对外界输入立即做出反应的场合,不能有拖延,否则会产生严重后果。上例中,航空订票系统需要实时处理票务,因为票额数据库的数量直接反映了航班的可订机位。机床控制也要实时,不然会出差错。股票交易行情随时在变,若不能实时交易会出现时间差,使交易出现偏差。

 

7. 分时系统的一个重要性能是系统的响应时间,对操作系统( )因素进行改进有利于改善系统的响应时间。
A.加大时间片                     B.釆用静态页式管理
C.优先级+非抢占式调度算法        D.代码可重入

【答案】C

【解析】采用优先级+ 非抢占式调度算法,既可让重要的作业/进程通过高优先级尽快获得系统响应,又可保证次要的作用/进程在非抢占式调度下不会迟迟得不到系统响应,这样兼顾的设计有利于改善系统的响应时间。加大时间片会延迟系统响应时间;静态页式管理和代码可重入与系统响应时间无关。

 

8. 分时系统追求的目标是(    )。
A.充分利用I/O设备         B.比较快速响应用户
C.提高系统吞吐率           D.充分利用内存

【答案】B

【解析】要求快速响应用户是导致分时系统出现的重要原因。

 

9. 在分时系统中,为使多个进程能够及时与系统交互,最关键时问题是能在短时间内,使所有就绪进程都能运行。当就绪进程数为100时,为保证响应时间不超过2s,此时的时间片最大应为( )。
A. 10ms    B. 20ms   C. 50ms    D. 100ms

【答案】B

【解析】响应时间不超过2 s ,即在2 s内必须响应所有进程。所以时间片最大为2s/100 = 20ms。

 

10.【2018统考真题】下列关于多任务操作系统的叙述中,正确的是(  )。

Ⅰ.具有并发和并行的特点

Ⅱ.需要实现对共享资源的保护

Ⅲ.需要运行在多CPU的硬件平台上

A. 仅Ⅰ     B. 仅Ⅱ     C. 仅Ⅰ、Ⅱ    D. Ⅰ、Ⅱ、Ⅲ

【答案】C

【解析】多任务操作系统可在同一时间内运行多个应用程序,因此I 正确。多个任务必须互斥地访问共享资源,为达到这一目标必须对共享资源进行必要的保护,因此II正确。现代操作系统都是多任务的(主要特点是并发和并行),并不一定需要运行在多CPU的硬件上,单个CPU也可满足要求,Ⅲ错误。综上所述,Ⅰ、Ⅱ正确,Ⅲ错误,因此选C。

 

11. 批处理操作系统、分时操作系统和实时操作系统各有什么特点?

1) 批处理操作系统的用户脱机使用计算机,作业是成批处理的,系统内多道程序并发执行,交互能力差。

2) 分时操作系统可让多个用户同时使用计算机,人机交互性较强,具有每个用户独立使用计算机的独占性,系统响应及时。

3) 实时操作系统能对控制对象做出及时反应,可靠性高,响应及时,但资源利用率低。

 

12. 有两个程序,程序A依次使用CPU计10s,使用设备甲计5s,使用CPU计5s,使用设备乙计10s,使用CPU计10s;程序B依次使用设备甲计10s,使用CPU计10s,使用设备乙计5s,使用CPU计5s,使用设备乙计10s。在单道程序环境下先执行程序A再执行程序B,计算CPU的利用率是多少?在多道程序环境下,CPU利用率是多少?

答:单道环境下,CPU的运行时间为(10+5+10)s +(10+5)s = 40s,两个程序运行 的总时间为40s + 40s = 80 s ,因此利用率是40/80 = 50%。

多道环境下,CPU运行时间为40s,两个程序运行总时间为45s,因此利用率为40/45 = 88.9%

 

13.设某计算机系统有一个CPU、一台输入设备、一台打印机。现有两个进程同时进入就绪状态,且进程A先得到CPU运行,进程B后运行。进程A的运行轨迹为:计算 50ms,打印信息100ms,再计算50ms,打印信息100ms,结束。进程B的运行轨迹为:计算50ms,输入数据80ms,再计算100ms,结束。试画出它们的时序关系图(可以用甘特图),并说明:
1) 开始运行后,CPU有无空闲等待?若有,在哪段时间内等待?计算CPU的利用率。
2) 进程A运行时有无等待现象?若有,在什么时候发生等待现象?
3) 进程B运行时有无等待现象?若有,在什么时候发生等待现象?

【解析】

1) CPU在 i0 0 -150ms时间段内空闲,利用率为250/300 = 83.3%。

2) 进程A 为无等待现象。

3) 进程B 为有等待现象,0〜 50ms, 180〜 200ms。

 


登录后开始许愿

暂无评论,来抢沙发