操作系统理论 第一章(操作系统引论)—第二节(操作系统的发展过程)

写在前面:

  1. 本系列笔记主要以《计算机操作系统(汤小丹…)》为参考,大部分内容出于此书,笔者的工作主要是挑其重点展示,另外配合下方视频链接的教程展开思路,在笔记中一些比较难懂的地方加以自己的一点点理解(重点基本都会有标注,没有任何标注的难懂文字应该是笔者因为强迫症而加进来的,可选择性地忽略)。
  2. 视频链接:操作系统(汤小丹等第四版)_哔哩哔哩_bilibili

一、未配置操作系统的计算机系统

1、人工操作方式

        从1945年诞生的第一台计算机,到50年代中期的计算机,都属于第一代计算机,这时还未出现OS,对计算机的全部操作都是由用户采取人工操作方式进行的。

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

        ①用户独占全机,即一台计算机的全部资源由上机用户所独占。

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

        ③用户既是程序员又是操作员,需要一定的计算机知识才能操作计算机。

        可见,人工操作方式严重降低了计算机资源的利用率此即所谓的人机矛盾

2、脱机输入/输出方式

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

        该技术是事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带卡片上的数据程序输入到磁带上当CPU需要这些程序和数据时,再从磁带上高速地调入内存类似地,当CPU需要输出时,可先由CPU把数据直接从内存高速地输送到磁带上然后在另一台外围机的控制下,再将磁带上的结果通过相应的输出设备输出

        由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入/输出方式。反之,把在主机的直接控制下进行输入/输出的方式称为联机输入/输出(On-Line I/O)方式。

        这种脱机I/O方式的主要优点为:

        ①减少CPU的空闲时间。装带、卸带,以及将数据从低速I/O设备送到高速磁带上(或反之)的操作,都是在脱机情况下由外围机完成的,并不占用主机时间,从而有效地减少了CPU的空闲时间。

        ②提高了I/O速度。当CPU在运行中需要输入数据时,是直接从高速的磁带上将数据输入到内存的,这便极大地提高了I/O速度,而且也进一步减少了CPU的空闲时间。

二、单道批处理系统

1、单道批处理系统的处理过程

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

        ①首先由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业。

        ②当该作业处理完成时,又把控制权交还给监督程序,再由监督程序把磁带上的第二个作业调入内存。

        ③计算机系统就这样自动地一个作业紧接一个作业地进行处理,直至磁带上的所有作业全部完成。

        虽然系统对作业的处理是成批进行的,但在内存中始终只保持一道作业,故称为单道批处理系统。

2、单批道处理系统的特征

(1)自动性:在顺利的情况下,在磁带上的要批作业能自动地逐个依次运行,无需人工干预,提高了系统资源的利用率和系统吞吐量。

(2)顺序性:磁带上的各道作业按顺序进入内存,各道作业的完成顺序与它们进入内存的顺现在正常情况下应完全相同,亦即先调入内存的作业先完成。

(3)单道性:内存中仅有一道程序运行,即监督程序每次从磁带上只调入一道程序进入内存运行,当该程序完成或发生异常情况时才换入后继程序进入内存运行。

3、单道批处理系统的缺点

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

三、多道批处理系统

1、多道程序设计的基本概念

        为了进一步提高资源的利用率和系统吞吐量,在20世纪60年代中期引入了多道程序设计技术,由此形成了多道批处理系统。

        在该系统中,用户所提交的作业先存放在外存上并排成一个队列,称为后备队列”,然后由作业调度程序按一定的算法,从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源由于同时在内存中装有若干道程序这样便可以在运行程序A时利用其因I/O操作而暂停执行时的CPU空档时间再调度另一道程序B运行,同样可以利用程序B在I/O操作时的CPU空档时间,再调度程序C运行,使多道程序交替地运行,这样便可以保持CPU处于忙碌状态

        多道程序设计的特点有:

        ①多道:计算机内存中同时存放多道相互独立的程序。

        ②宏观上并行:同时进入系统的多道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕。

        ③微观上串行:内存中的多道程序轮流占有CPU,而不是同时占用CPU。

2、多道批处理系统的优缺点

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

(2)系统吞吐量大。能提高系统吞吐量的主要原因可归结为:

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

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

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

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

3、多道批处理系统需要解决的问题

(1)处理机争用问题。既要能满足各道程序运行的需要,又要能提高处理机的利用率。
(2)内存分配和保护问题。系统应能为每道程序分配必要的内存空间,使它们“各得其所”,且不会因某道程序出现异常情况而破坏其它程序。
(3) I/O设备分配问题。系统应采取适当的策略来分配系统中的I/O设备,以达到既能方便用户对设备的使用,又能提高设备利用率的目的.

(4)文件的组织和管理问题。系统应能有效地组织存放在系统中的大量的程序和数据,使它们既便于用户使用,又能保证数据的安全性。

(5)作业管理问题。系统中存在着各种作业(应用程序),系统应能对系统中所有的作业进行合理的组织,以满足这些作业用户的不同要求。

(6)用户与系统的接口问题。为使用户能方便的使用操作系统,OS还应提供用户与OS之间的接口。

四、分时系统

1、分时系统的设计目标和概念

        推动分时系统形成和发展的主要动力是用户对人—机交互的需求,分时系统旨在对用户的请求及时响应,尽量提高系统资源的利用率。

        ①人—机交互:由于新编程序难免存在一些错误或不当之处,程序员需要对其进行调试然后修改,因此用户希望能像早期使用计算机时一样,独占全机并对它进行直接控制,以便能方便地对程序中的错误进行修改。

        ②共享主机:一台计算机连接多个终端,用户通过各自的终端把作业送入计算机,计算机又通过终端向各个用户报告其作业的运行情况。计算机能分时轮流地为各终端用户服务,并能及时地对用户服务请求予以响应,而对于用户而言,他们会感觉自己独占一台计算机,不仅可以随时与计算机进行交互,而且还不会感觉到其他用户的存在。

2、分时系统实现中的关键问题

        为了能够实现人—机交互,必须解决的关键问题是,如何使用户能与自己的作业进行交互。为此,系统首先必须能提供多个终端,同时给多个用户使用;其次,当用户在自己的终端上键入命令时,系统应能及时接收,并及时处理该命令,再将结果返回给用户;此后,用户可根据系统返回的响应情况,再继续键入下一条命令。也就是说,分时系统允许有多个用户同时通过自己的键盘键入命令,系统也应能全部及时接收并处理。

        人—机交互的关键在于,用户键入命令后,能对自己的作业及其运行及时地实施控制或进行修改,因此各个用户的作业都必须驻留在内存中,并能频繁地获得处理机运行,否则用户键入的命令将无法作用到自己的作业上。由此可见,为实现人机交互,必须彻底地改变原来批处理系统的运行方式,转而采用下面的方式

        ①作业直接进入内存。因为作业在磁盘上是不能运行的,所以作业应直接进入内存。

        ②采用轮转运行方式。如果一个作业独占CPU连续运行,那么其它的作业就没有机会被调度运行,为避免一个作业长期独占处理机,引入了时间片的概念,一个时间片就是一段很短的时间。系统规定每个作业每次只能运行一个时间片,然后就暂停该作业的运行,并立即调度下一个作业运行,如果在不长的时间内能使所有的作业都执行一个时间片的时间,便可以使每个用户都能及时地与自己的作业进行交互,从而使用户的请求可以得到及时响应。

3、分时系统的特征

(1)多路性(同时性)。该特性是指系统允许将多台终端同时连接到一台主机上,并按分时原则为每个用户服务。多路性允许多个用户共享一台计算机,显著地提高了资源利用率,降低了使用费用,从而促进了计算机更广泛的应用。

(2)独立性。该特性是指系统提供了这样的用机环境,即每个用户在各自的终端上进行操作,彼此之间互不干扰,给用户的感觉就像是一人独占主机进行操作。

(3)及时性。及时性是指用户的请求能在很短时间内获得响应,这一时间间隔是根据人们所能接受的等待时间确定的,通常仅为1~3秒钟。

(4)交互性。交互性是指用户可通过终端与系统进行广泛的人机对话,其广泛性表现在用户可以请求系统提供多方面的服务,如进行文件编辑和数据处理、访问系统中的文件系统和数据库系统、请求提供打印服务等。

五、实时系统

1、实时系统的概念

        实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行

2、实时系统的类型

(1)工业(武器)控制系统。当计算机被用于生产过程的控制,形成以计算机为中心的控制系统时,该系统应具有能实时采集现场数据,并对所采集的数据进行及时处理,进而能够自动地控制相应的执行机构,使之具有按预定的规律变化的功能,确保产品的质量和产量;类似地,也可将计算机用于对武器的控制,如火炮的自动控制系统、飞机的自动驾驶系统,以及导弹的制导系统等。

(2)信息查询系统。该系统接收从远程终端上发来的服务请求,根据用户提出的请求对信息进行检索和处理,并能及时对用户做出正确的回答。实时信息处理系统有飞机或火车的订票系统等。

(3)多媒体系统。随着计算机硬件和软件的快速发展,已可将文本、图像、音频和视频等信息集成在一个文件中,形成一个多媒体文件,如在用DVD播放器所播放的数字电影中就包含了音频、视频和横向滚动的文字等信息。为了保证有好的视觉和听觉感受,用于播放音频和视频的多媒体系统等也必须是实时信息处理系统。

(4)嵌入式系统。随着集成电路的发展,已制做出各种类型的芯片,可将这些芯片嵌入到各种仪器和设备中,用于对设备进行控制或对其中的信息做出处理,这样就构成了所谓的智能仪器和设备,此时还需要配置嵌入式OS,它同样需要具有实时控制或处理的功能。

3、实时任务的类型

(1)周期性实时任务和非周期性实时任务

①周期性实时任务是指这样一类任务,外部设备周期性地发出激励信号给计算机,要求它按指定周期循环执行,以便周期性地控制某外部设备

②非周期性实时任务并无明显的周期性,但都必须联系着一个截止时间Deadline,或称为最后期限,它又可分为:

[1]开始截止时间,指某任务在某时间以前必须开始执行。

[2]完成截止时间,指某任务在某时间以前必须完成。

(2)硬实时任务和软实时任务

①硬实时任务(Hard Real-time Task,HRT)是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的后果,用于工业和武器控制的实时系统,通常它所执行的是硬实时任务。

②软实时任务(Soft Real-time Task,SRT)也联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会太大,诸如用于信息查询系统和多媒体系统中的实时系统,通常是软实时任务。

4、实时系统的特征

(1)多路性。信息查询系统和分时系统中的多路性都表现为系统按分时原则为多个端用户服务实时控制系统的多路性则是指系统周期性地对多路现场信息进行采集,以及对多个对象或多个执行机构进行控制

(2)独立性。信息查询系统中的每个终端用户在与系统交互时,彼此相互独立互不同样在实时控制系统中,对信息的采集和对对象的控制也都是彼此互不干扰的

(3)及时性。信息查询系统对实时性的要求是依据人所能接受的等待时间确定的,多媒体系统实时性的要求是播放出来的音乐和电视能令人满意实时控制系统的实时则是以控制对象所要求的截止时间来确定的,一般为秒级到毫秒级

(4)交互性。在信息查询系统中,人与系统的交互性仅限于访问系统中某些特定的专用务程序,它并不像分时系统那样,能向终端用户提供数据处理、资源共享等服务,而多媒体系统的交互性也仅限于用户发送某些特定的命令,如开始、停止、快进等,由系统立即响应。

(5)可靠性。分时系统要求系统可靠,实时系统要求系统高度可靠,因为任何差错都可能带来无法预料的灾难性后果。

  • 24
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zevalin爱灰灰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值