-
2021-07-11 22:10:42
一. 简答题
- 高级调度与低级调度的主要任务是什么?为什么引入中级调度?
(1)高级调度的主要任务是将外存的作业调入内存,又称作业调度。
低级调度的主要任务数为内存中处于就绪态的作业分配处理机。
(2)为了提高内存的利用率与系统吞吐量。
ps:(中级调度是将作业调出掉回,高级调度是掉入,作业一次掉入,多次掉回,所以中级调度频次更高) - 何谓作业和JCB?
作业是一组程序与数据和作业说明书,是高级调度的基本单位。
JCB是作业控制块,是作业存在的表示,包含管理,调度所需的全部信息。
ps:(对作业的控制是JCB和作业说明书一起的) - 在什么情况下需要使用JCB?JCB通常包含了哪些内容?
(1)作业进入系统。
(2)包含系统对作业调度,管理的全部信息。 - 在作业调度中应如何确定接纳多少作业和接纳哪些作业?
取决于多道程序度和调度算法。 - 试说明低级调度的主要功能?
从就绪队列中根据调度算法选择一个进程分配处理机。 - 简述引起进程调度的原因?
时间片完了
阻塞了
运行完了
被抢占了 - 在抢占式调度算法中,应遵循的原则?
优先级
短进程优先
时间片原则 - 在选择调度算法时应该遵循哪些规则?
公平性
资源利用率
平衡性
强制执行 - 何谓静态优先级?何谓动态优先级?确定优先级的依据是什么?
(1)静态优先级创建进程时就确定,动态优先级随着时间与环境变化而改变。
(2)用户要求,进程对cpu io等资源的要求, 进程类型。 - 比较先来先服务和短进程优先。
先来先服务周转时间长,对短进程不利,不能实现交互,紧急作业得不到处理但进程无饿死。
短进程优先要先知道作业运行时间,且对长进程不利,没有考虑进程的紧迫性,并且容易饿死。 - 在基于时间片的轮转调度算法中,应如何确定时间片大小?
一次时间片的大小要略大于一次典型交汇所需的时间。 - 为什么说多级反馈队列能较好的满足各方面用户的需求?
多级反馈队列算法每个队列可以设置不同的调度算法,使得短进程在第一队列完成,而长队列也得到了处理,不会出现长时间得不到处理现象。 - 为什么实时系统需要系统有较强的处理能力?
在实时系统中,若同一时间段要完成的任务多,就会造成处理机来不及处理,任务完不成造成灾难性后果。 - 按照调度方式可将实时性调度算法分为几类?
抢占式和非抢占式。 - 实时调度算法有哪些,分别介绍他们?
最早截止时间:截止时间越早,优先级越高,可以是抢占式,也可以是非抢占式。
最低松弛度优先:截止时间减去当前时间,减去所需时间为松弛度,松弛度越低优先级越高,松弛度为0,优先级最高。 - 在批处理系统,分时系统和实时系统,分别采用哪几种进程调度算法?
批处理系统:先来先服务,短进程优先,优先级调度。
ps:没有轮转和多级反馈队列算法。
ps:高响应比优先是一种优先级调度算法。
分时系统:只有轮转。
实时系统:轮转和优先级调度算法。 - 什么是死锁?产生死锁的原因和必要条件是什么?如何预防死锁?
(1)死锁是多个进程持有别的进程需要的资源而自己无法获得需要的资源而处于僵持阻塞状态。
(2)不可剥夺,请求与保持,互斥访问,循环等待。
(3)破坏死锁产生的四个条件。 - 在解决死锁问题的几个方法中,哪个方法最容易实现?哪个方法可使资源利用率最高?
预防死锁
避免死锁
二.计算题
- 48.1/5
- FCFS:(10+11+13+14+19)/5 (1+11+6.5+14+3.8)/5
RR: (19+2+8+4+14)/5 (1.9+2+4+4+2.8)/5
SJF:(19+1+4+2+9)/5 (1.9+1+2+2+1.8)/5
非抢占式优先级调度算法:(11+19+13+1+18)/5 (1.1+19+6.5+1+3.6)/5
ps:括号内五个数按照先后顺序为1-5号作业 - 优先级4进程内部的P1P2P3进程先使用时间片轮转算法先运行完,然后以此运行剩余优先级内部进程。
- (1)安全 P1-P0-P2-P3-P4
(2)安全 P0-P3-P4-P1-P2
(3)不安全
(4)不安全
三.综合应用题
- 不会
- 看不懂题
- 会发生死锁
原因:当p1 和p2都运行了第一步,则会相互阻塞
必要条件:互斥,请求与保持,循环等待,不可剥夺。
更多相关内容 - 高级调度与低级调度的主要任务是什么?为什么引入中级调度?
-
计算机操作系统(慕课版)第一章思维导图
2022-03-31 22:57:54计算机操作系统(慕课版)第一章思维导图 -
计算机操作系统.pdf
2021-07-05 08:17:33计算机操作系统.pdf -
《计算机操作系统》(慕课版) 第1章 操作系统引论
2021-12-19 18:30:30** 操作系统(Operating System,OS) **是配置在计算机硬件上的第一层软件,是管理和控制整个计算机系统的硬件和软件,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便的接口与环境的程序...第1章 操作系统引论 文章目录
-
第1章 操作系统引论
__操作系统(Operating System,OS)__是配置在计算机硬件上的第一层软件,是管理和控制整个计算机系统的硬件和软件,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便的接口与环境的程序集合。1.1 操作系统的目标和作用
OS的目标与应用环境有关:
(1)应用于查询系统的OS,应具备良好的人机交互性;
(2)应用于工业控制、武器控制以及多媒体环境的OS,应具有实时性;
(3)微型计算机(微机)上配置的OS,更应看重其使用的方便性。
1.1.1 操作系统的目标
在计算机系统上配置OS,其主要目标是实现:方便性、有效性、可扩充性、开放性。
(1)方便性(通过OS命令操作计算机,方便用户使用)
(2)有效性(提高系统资源的利用率、提高系统的吞吐量)
(3)可扩充性(OS必须具备良好的可扩充性、与OS的结构有紧密的联系)
(4)开放性(OS遵循国际标准,特别是遵循开放系统互连(open system interconnect,OSI)参考模型)1.1.2 操作系统的作用
1、OS作为用户与计算机硬件系统之间的接口
OS作为用户与计算机硬件系统之间的接口,其含义是:OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机硬件系统,即用户在OS的帮助下能够方便、快捷、可靠地操纵计算机硬件来运行自己的程序。 用户使用计算机的主要方式有三种:命令方式(命令接口)、系统调用方式(程序接口)、图形/窗口方式(图形接口,GUI)。
操作系统提供的接口主要分为两类:一类是命令接口,用户利用这些操作命令来组织和控制作业的执行;另一类是程序接口,编程人员可以使用它们来请求操作系统服务。
(1)命令接口
使用命令接口进行作业控制的主要方式有两种,即联机控制方式和脱机控制方式。按作业控制方式的不同,可将命令接口分为联机命令接口和脱机命令接口。
联机命令接口,又称交互式命令接口,适用于分时系统或实时系统的接口。它由一组键盘操作命令组成。用户通过控制台或终端输入操作命令,向系统提出各种服务要求。用户每输入一条命令,控制权就转给操作系统的命令解释程序,然后由命令解释程序解释并执行输入的命令,完成指定的功能。之后,将控制权转回控制台或终端,此时用户又可输入下一条命令。
脱机命令接口,又称批处理命令接口,适用于批处理系统,它由一组作业控制命令组成。脱机用户不能直接干预作业的运行,而应事先用相应的作业控制命令写成一份作业操作说明书,连同作业一起提交给系统。系统调度到该作业时,由系统中的命令解释程序逐条解释执行作业说明书上的命令,从而间接地控制作业的运行。
(2)程序接口
程序接口由一组==系统调用(也称广义指令)==组成。用户通过在程序中使用这些系统调用来请求操作系统为其提供服务,如__使用各种外部设备__、__申请分配__和__回收内存__及其他各种要求。
当前最为流行的是用户图形界面(GUI),即图形接口。GUI最终是通过调用程序接口实现的,用户通过鼠标和键盘在图形界面上单击或使用快捷键,就能很方便地使用操作系统。
严格来说,图形接口不是操作系统的一部分,但图形接口所调用的__系统调用命令__是操作系统的一部分。
2、OS作为计算机系统资源的管理者
在一个计算机系统中,通常含有多种硬件和软件资源。归纳起来可以将这些资源分为4类:处理机、存储器、I/O设备、信息(数据和程序)。OS的主要功能是对这4类资源进行有效的管理。
处理机管理负责处理机的分配与控制;
存储器管理负责内存的分配与回收;
I/O设备管理负责I/O设备的分配(回收)与操纵;
文件管理负责文件的存取、共享与保护等。
(1)处理机管理
在多道程序下,处理记得分配和运行都以进程(或线程)为基本单位,因而对处理机管理可以归结为对进程的管理。并发是指计算机在同一时间段内同时运行多个进程,因此进程何时创建、何时撤销、如何管理、如何避免冲突、合理共享就是进程管理的最主要的任务。进程管理的主要功能包括__进程控制__、进程同步、进程通信、死锁处理、__处理机调度__等。
(2)存储器管理
存储器管理是为了给多道程序的运行提供良好的环境,方便用户使用及提高内存的利用率,主要包括__内存分配与回收__、地址映射、__内存保护与共享__和__内存扩充__等功能。
(3)文件管理
计算机中的信息都是以文件的形式存在的,操作系统中负责文件管理的部分称为文件系统。文件管理包括文件存储空间的管理、目录管理及文件读写管理保护等。
(4)设备管理
设备管理的主要任务是完成用户的I/O请求,方便用户使用各种设备,并提高设备的利用率,主要包括__缓冲管理__、设备分配、__设备处理__和__虚拟设备__等功能。
3、OS实现了对计算机资源的抽象
没有任何软件支持的计算机称为裸机,它仅构成计算机系统的物质基础,向用户提供的仅是硬件接口(物理接口)。操作系统所提供的资源管理功能和方便用户的各种服务功能,将裸机改造成功能更强、使用更方便的机器;因此,通常把覆盖了软件的机器称为扩充机器或虚拟机。
1.1.3 推动操作系统发展的主要动力
(1)不断提高计算机系统的资源利用率;
(2)方便用户;
(3)器件不断更新换代;
(4)计算机体系结构不断发展;
(5)不断提出新的应用需求。1.2 操作系统的发展过程
1.2.1 未配置操作系统的计算机系统
1、人工操作方式
早期的操作方式是有用户将事先已经穿孔的纸带(或卡片),装入纸带输入机(或卡片输入机),再启动它们以将纸带(或卡片)上的程序和数据输入计算机,然后启动计算机运行。仅当程序运行完毕并取走计算结果后,才允许下一个用户上机。这种人工操作方式有以下两方面的缺点:
(1)用户独占全机,即一台计算机的全部资源由上级用户独占。
(2)CPU等待人工操作。当用户进行装袋(卡)、卸带(卡)等人工操作时,CPU及内存等资源是空闲的。
可见人工操作方式严重降低了计算机资源的利用率,此即所谓的人机矛盾。
2、脱机I/O方式
脱机I/O方式是事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带上的程序和数据输入磁带。
由于程序和数据的输入和输出都是在外围机的控制下完成的,即在脱离主机的情况下进行的
,故称其为脱机I/O方式。而把在主机的直接控制下进行的I/O的方式,称为联机I/O方式。脱机I/O方式的主要优点如下:
(1)减少了CPU的空闲时间。装带、卸带以及将数据从低速I/O设备送到高速磁带上(或反之)的操作,都是在脱机情况下由外围机完成的,并不占用主机时间,因此有效减少了CPU的空闲时间。
(2)提高了I/O的速度。当CPU在运行中需要输入数据时,系统是直接从高速磁带上将数据输入内存的,这极大地提高了I/O速度,进一步减少了CPU的空闲时间。
1.2.2 单道批处理系统
为了能充分提高计算机的利用率,应尽量保持系统连续运行,即使在其处理完一个作业后,紧接着处理下一个作业,以减少系统的空闲时间。
1、单道批处理系统的处理过程
为了实现对作业的连续处理,需要先把一批作业以脱机I/O的方式输入到磁带上,并在系统中配上监督程序,在其控制下,这批作业能一个接一个地被连续处理。虽然该系统对作业的处理是成批进行的,但在内存中始终只能保持一道作业,故称之为单道批处理系统。
单道批处理系统是在解决人机矛盾和CPU与I/O设备速度不匹配矛盾的过程中形成的。单道批处理系统旨在提高系统资源的利用率和系统吞吐量。但这种单道批处理系统仍然不能充分利用系统资源,故现在已经很少使用。
2、单道批处理系统的缺点
单道批处理系统最主要的缺点是,系统中的资源得不到充分利用,高速的CPU经常在等待低速的I/O完成状态。
3、单道批处理系统的主要特征:
(1)自动性。在顺利的情况下,磁带上的一批作业能自动地逐个运行,而无须人工干预。
(2)顺序性。磁带上的各道作业顺序地进入内存,各道作业的完成顺序与它们进入内存的顺序在正常情况下应完全相同,亦即先调入内存的作业先完成。
(3)单道性。内存中仅有一道程序运行,即监督程序每次从磁带上只调入一道程序进入内存运行,当该程序完成或发生异常状况时,才换入其后继程序进入内存运行。
1.2.3 多道批处理系统
1、多道程序设计的基本概念
为了进一步提高资源的利用率和系统吞吐量,引入了多道程序设计技术,由此形成了多道批处理系统。
2、多道批处理系统的优缺点
(1)**资源利用率高。**引入多道程序机制使多道程序交替运行,以保证CPU一直处于忙碌状态;在内存中装入多道程序,不仅可以提高内存的利用率,还可以提高I/O设备的利用率。
(2)**系统吞吐量大。**①CPU和其他资源保持“忙碌”状态;②仅当作业完成时或运行不下去时才进行切换,系统开销小。
(3)**平均周转时间长。**由于作业要排队并依次进行处理,因而作业的周转时间较长,通常需要几个小时甚至几天。
(4)**无交互能力。**用户一旦把作业提交给系统,那么直至作业完成,用户都不能与自己的作业进行交互,这对用户修改和调试程序是极不方便的。
3、多道批处理系统需要解决的问题
(1)争用处理机问题:系统既要满足各道程序运行的需要,又要能提高处理机的利用率。
(2)内存分配与保护问题:系统应能为每道程序分配必要的内存空间,以使他们“各得其所”,且不会因为某道程序出现异常情况而破坏其他程序。
(3)I/O设备分配问题:系统应采取适当的策略来分配系统中的I/O设备,以达到既能方便用户对设备的使用,又能提高设备利用率的目的。
(4)文件的组织与管理问题:系统应能有效地组织存放在系统中大量的程序和数据,以使它们既便于用户使用,又能保证数据的安全性。
(5)作业管理问题:系统中存在着各种作业(应用程序),系统应能对系统中所有的作业进行合理的组织,以满足这些作业对应用户的不同要求。
(6)用户与系统的接口问题:为使用户能方便地使用OS,OS还应提供用户与OS之间的接口。
1.2.4 分时系统
1、分时系统的引入
推动分时系统(time sharing system)形成和发展的主要动力,是为了满足用户对人机交互的需求用户的需求具体表现在以下两个方面:
(1)人机交互。用户希望能像早期使用计算机时一样,独占全机并对它进行直接控制,以便能方便地对程序中的错误进行修改。
(2)共享主机。用户们在共享一台计算机时,每个用户都希望能像独占全机一样,不仅可以随时与计算机进行交互,而且不会感觉到其他用户的存在。
分时系统是指在一台主机上连接有多个配有显示器和键盘的终端所形成的系统,该系统允许多个用户同时通过自己的终端以交互方式使用计算机,并共享主机中的资源。
2、分时系统实现过程中的关键问题
为了实现人机交互,必须解决的关键问题是:如何使用户能与自己的作业进行交互。为此,首先,系统必须能提供多个终端同时给多个用户使用;其次,当用户在自己的终端上键入命令时,系统应能及时接收并处理该命令,然后将处理结果返回给用户。此后,用户可根据系统的响应情况,再继续键入下一条命令,此即人机交互。亦即,允许有多个用户同时通过自己的键盘键入命令,系统也应能将全部命令及时接收并处理。
(1)及时接收。要做到及时接收多个用户键入的命令或数据,只须在系统中配置一个多路卡即可。多路卡的作用是实现时分多路复用(Time-Division Multiplexing,TDM),即主机能以很快的速度周期性地扫描各个终端,并在每个终端处停留一段很短的时间(如30ms)以接收从终端发来的数据。此外,为了能使从终端上输入的数据被依次逐条地进行处理,还需要为每个终端配置一个命令缓冲区,用于暂存用户键入的命令或数据。
(2)及时处理。①采用作业直接进入内存的方式。因为作业在磁盘上是不能运行的,所以其应该直接进入内存。②采用轮转运行的方式。如果一个作业独占处理机而连续运行,那么其他作业就没有机会被调度运行。为了避免一个作业长期独占处理机,引入了时间片的概念。一个时间片就是一个很短的时间,如30ms。系统规定每个作业每次只能运行一个时间片,然后就暂停该作业的运行,并立即调度下一个作业运行,不管它是否运行完毕。
3、分时系统的特征
(1)多路性,系统允许将多台终端同时连接到一台主机上,并按分时原则为每个用户服务。
(2)独立性,系统提供了一种每个用户在各自的终端上进行操作的用机环境,彼此之间互不干扰,给用户的感觉就像是他一人独占主机。
(3)及时性,用户的请求能在很短的时间内获得响应,通常仅为1~3s。
(4)交互性,用户可以通过终端与系统进行广泛的人机对话。用户可以请求系统提供多方面的服务,如进行文件编辑和数据处理、访问系统中的文件系统和数据库系统、打印运行结果等。
1.2.5 实时系统
“实时”具体指“及时”;“实时计算”的定义为:==系统的正确性不仅由计算的逻辑结果来确定,而且还取决于产生结果的时间。==实时系统(real time system)最主要的特征是将时间作为关键参数,必须对所接收的某些信号做出“及时”或“实时”的反应。
实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
1、实时系统的类型
(1)工业控制系统。
(2)信息查询系统。
(3)多媒体系统。
(4)嵌入式系统。
2、实时任务的类型
(1)周期性实时任务和非周期性实时任务。
周期性实时任务:外部设备周期性地发出激励信号给计算机,要求它按指定周期循环执行,以便周期性地控制某外部设备。
非周期性实时任务:无明显的周期性但必须联系一个截止时间(deadline),或称最后期限,可分为两种:①开始截止时间:某任务在某时刻以前必须开始执行;②完成截止时间:某任务在某时刻以前必须完成执行。
(2)硬实时任务和软实时任务
硬实时(hard real time,HRT)任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的后果。
软实时(soft real time,SRT)任务联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,其对系统产生的影响也不会太大。
3、实时系统的特征
(1)多路性。系统周期性地对多路现场信息进行采集,并对多个对象或多个执行机构进行控制。
(2)独立性。信息查询系统中的每个终端用户在与系统进行交互时,彼此相互独立、互不干扰;在实时控制系统中,对信息的采集和对对象的控制,也是彼此互不干扰的。
(3)及时性。实时控制系统的实时性是以控制对象所要求的截止时间来确定的,一般为秒到毫秒级。
(4)交互性。实时操作系统的交互性有一定的限制,它并不能像分时系统那样向终端用户提供数据处理、资源共享等服务。
(5)可靠性。实时系统要求系统高度可靠,往往采取了多种容错措施,以保障系统及数据的安全性。
1.2.6 微机操作系统
配置在微机上的OS称为微机OS,由于使用者通常为个人,因此其也被称为个人计算机(personal computer)。
最早诞生的微机OS是配置在8位微机上的CP/M
现在流行的微机OS按运行方式可以分为以下几类:
1、单用户单任务OS
单用户单任务OS只允许一个用户上机,且只允许用户程序作为一个任务运行。
最有代表性的单用户单任务OS是CP/M(8位)和MS-DOS(16位)
2、单用户多任务OS
单用户多任务OS只允许一个用户上机,但允许用户把程序分为若干个任务并发执行,从而有效地改善了系统性能。
最有代表性的单用户多任务OS是由微软公司退出的Windows系列,如Windows3.1、Windows95/98等。
3、多用户多任务OS
多用户多任务OS允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而进一步提高系统资源的利用率和系统吞吐量。
最有代表性的多用户多任务OS是UNIX系统、各种类UNIX系统(如Solaris、Linux等)以及Windows NT/Server系列的系统。
多用户多任务OS除了具有界面良好、管理方便和适于普及等优点外,还具有支持多用户使用、可移植性良好、功能强大、通信能力强等优点。
1.2.7 嵌入式操作系统
1、嵌入式系统
==嵌入式系统(embedded system)==是为了完成某个特定功能而设计的系统,或是具有附加机制的系统,或是其他部分的计算机硬件与软件的结合体。
2、嵌入式OS
嵌入式OS是指应用于嵌入式系统的OS。目前在嵌入式领域广泛应用的OS有嵌入式(实时)μC/OS-Ⅱ、嵌入式Linux、Windows Embedded、VxWorks,以及应用在智能手机和平板电脑上的Android、iOS等。
3、嵌入式OS的特点
(1)系统内核小
(2)系统精简
(3)实时性高
(4)具有可配置性
1.2.8 网络操作系统
1、网络OS的特征
(1)硬件独立性:系统可以运行在各种硬件平台上。
(2)接口一致性:系统为网络中的共享资源提供一致性的接口,针对同一性质的资源,采用统一的访问方式和接口。
(3)资源透明性:系统能对网络中的资源进行统一管理,能够根据用户的要求对资源进行自动选择和分配。
(4)系统可靠性:系统利用资源在地理上分散的优点,通过统一管理、分配和调度手段,确保了整个网络的安全可靠。如果一个节点和通信链路出现故障,则可屏蔽该节点或重新定义新的通信链路,以保证网络的正常运行。
(5)执行并行性:系统不仅实现了在每个节点计算机中各道进程的并发执行,而且实现了网络中多个节点计算机上的并行执行。
2、网络OS的功能:
(1)连接的建立与拆除;
(2)报文的分解与组装;
(3)传输控制;
(4)流量控制;
(5)差错的检测与纠正。
1.2.9 分布式操作系统
1、分布式系统
分布式系统(distributed system),是基于软件实现的一种多处理机系统,是多个处理机通过通信线路互联而构成的松散耦合系统,系统的处理和控制功能分布在各个处理机上。换言之,分布式系统是利用软件系统的方式构建在计算机网络上的一种多处理机系统。
分布式系统应具有以下几个主要特征:
(1)分布性:分布式系统有多台计算机组成,从位置和地域范围来看,它们是分散的和广阔的,此即地理位置的分布性。从系统的功能来看,功能分散在系统的各节点计算机上,此即资源的分布性。从系统的控制来看,在一般的分布式系统中,计算机没有主从之分,此即控制的分布性。其中资源和控制的分布性也称为自治性。
(2)透明性:分布式系统的系统资源被所有计算机共享。
(3)同一性:分布式系统中的若干台计算机可以通过互相协作来完成同一任务,或者说一个程序可以分布在几台计算机上并行地运行。
(4)全局性:系统具备一个全局性的进程通信机制,系统中的任意两台计算机都可以通过该机制实现信息交换。
2、分布式OS
分布式OS是配置在分布式系统上的公用OS,其以全局方式对分布式系统中的所有资源进行统一管理,可以直接对系统中地理位置分散的各种物理和逻辑资源进行动态分配和调度,有效地协调和控制各个任务的并行执行,协调和保持系统内的各个计算机间的信息传输与协作运行,并向用户提供一个统一的、方便的、透明的使用系统界面和标准接口。分布式OS保持了网络OS所拥有的全部功能,同时还具有透明性、内聚性、可靠性、高性能等特点。
分布式OS还包括以下功能:
(1)通信管理功能。
(2)资源管理功能。
(3)进程管理功能。
1.3操作系统的基本特性
操作系统共同具有并发、共享、虚拟和异步这4个基本特性。
1.3.1 并发
正是系统中的程序能并发(concurrence)执行,才使得OS能有效地提高系统中资源的利用率,增加系统的吞吐量。
1、并行(parallelism)与并发
并行是指两个或多个事件在同一时刻发生,而并发是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发是指在一段时间内宏观上有多个程序在同时运行;但在单处理机系统中,每一时刻仅能有一道程序执行,故在微观上这些程序只能分时交替执行。
倘若在计算机系统中有多个处理机,那么这些能并发执行的程序,便可被分配到多个处理机上实现并行执行,即利用每个处理机来处理一个可并发执行的程序设计。这样,多个程序便可同时执行。
2、引入进程
进程,是指在系统中能独立运行并能作为资源分配对象的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能够独立运行的活动实体。多个进程之间可以并发执行和交换信息。
1.3.2 共享
在OS环境下的资源共享(sharing),或称为资源复用,是指系统中的资源可供内存中多个并发执行的进程共同使用。目前实现资源共享的主要方式有如下两种:
1、互斥共享方式
2、同时共享方式
1.3.3 虚拟(Virtual)
在OS中,把通过某种技术将一个物理实体变为若干个逻辑上对应的物的功能,称为“虚拟”。前者是实的,即实际存在的;后者是虚的,是用户感觉存在的东西。用于实现虚拟的技术称为虚拟技术。在OS中是利用时分复用和空分复用技术来实现“虚拟”的。
1、时分复用技术(Time Division Multiplexing,TDM)
(1)虚拟处理机技术。利用多道程序设计技术,为每道程序建立至少一个进程,使多道程序并发执行。用户感觉到的处理机称为虚拟处理机。
(2)虚拟设备技术。利用时分复用技术,将一台物理上的I/O设备虚拟为多台逻辑上的I/O设备,并允许每个用户占用一台逻辑上的I/O设备。
2、空分复用技术(Space Division Multiplexing,SDM)
空分复用技术是利用存储器的空闲空间(如某道程序阻塞时被换出到外存而空出来的内存空间)来存放其他程序以提高内存利用率的。
1.3.4 异步(Asynchronism)
由于资源等因素的限制,进程的执行通常不可能“一气呵成”,而是会以“停停走走”的方式运行。换言之,进程以人们不可预知的速度向前推进,此即进程的异步性(asynchronism)。
1.4 操作系统的运行环境
1.4.1 硬件支持
现代通用计算机系统包括一个或多个CPU和若干个设备控制器,通过公用总线相连而成,该总线提供了共享内存的访问功能。每个设备控制器负责一类特定的设备。CPU和设备控制器可以并发执行,但会竞争访问共享内存。为了确保访问共享内存的有序性,需要内存控制器来协调它们对内存的访问
1.4.2 操作系统内核(OS Kernel)
现代OS一般会划分若干层次,再将不同功能分别设置在不同层次中。
通常将一些与硬件紧密相关的模块(如中断处理程序等)、各种设备常用的驱动程序、 运行频率较高的模块(如时钟管理模块、进程调度模块等) 以及许多模块所公用的一些基本操作,都安排在紧靠硬件的软件层次中,并将它们常驻内存,称为操作系统内核(OS Kernel)。
这种安排方式的目的在于:
1、便于对这些软件进行保护,防止它们遭受其他应用程序的破坏;
2、提高操作系统的运行效率。 -
-
计算机操作系统 汤子瀛(慕课版)
2022-02-26 15:50:57①方便性,如果计算机只有硬件系统,操作员只能通过机器指令进行编程,具体按钮进行操作,十分繁杂,有了操作系统就可以屏蔽部分机器指令,用户可以通过高级语言编码,经编译程序翻译为机器语言,执行指令或者直接...第1章 操作系统引论
操作系统
①是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充,
②主要用于管理硬件设备,提高他们的利用率和系统吞吐量
③为用户和应用程序提供简单的接口,以便用户和应用程序使用硬件设备
④OS是计算机系统中最基础,最重要的系统软件
操作系统的目标
①方便性,如果计算机只有硬件系统,操作员只能通过机器指令进行编程,具体按钮进行操作,十分繁杂,有了操作系统就可以屏蔽部分机器指令,用户可以通过高级语言编码,经编译程序翻译为机器语言,执行指令或者直接使用OS提供的各种命令来操作计算机
②有效性,提高系统资源的利用率,提高系统的吞吐量,有效管理与控制软硬件资源
③可扩充性,适应计算机硬件,体系结构以及应用发展的要求;OS从早期的无结构发展为模块化结构,到分层式结构,再到近年来的微内核结构/外核;结构可方便添加新的功能和模块,以及对原有功能模块进行修改,具有良好的可扩充性,扩充软硬件不会对OS产生很大影响
④开放性,为解决计算机软硬件兼容问题;系统遵循国际标准,特别是遵循开放系统互连参考模型(open system interconnect, OSI)
其中方便性和有效性是OS最重要的两个目标
操作系统的作用
对计算机系统进行统一管理与调度,提供各种强有力的服务,人机交互,资源管理,资源抽象等
1.OS作为用户与计算机硬件系统之间的接口;向上提供服务,向下管理资源;
2.OS作为计算机系统资源的管理者
计算机中含有多种软件资源和硬件资源,这些资源大致分为4类:处理机,存储器,I/O设备,文件资源/信息(程序和数据)
操作系统的对应功能就是针对这四类资源的有效管理,处理机管理负责处理机的分配与控制;存储器管理负责内存的分配与控制;I/O设备管理负责I/O设备的分配(回收)与操纵;文件管理负责文件的存取,共享与保护等。
3.OS实现了对计算机资源的抽象
在裸机上铺设的I/O软件,隐藏了I/O设备的具体细节,向上提供了一组抽象的I/O设备
OS的工作补充
完成程序的执行;完成与硬件相关的工作;完成与应用无关的工作;计算机的效率与安全问题(OS的安全问题)
课后实践
OS原理与实际运用OS的关系
操作系统发展的主要动力
1.不断提供的计算机系统资源的利用率
2.方便用户
3.器件不断更新换代
4.计算机体系结构不断发展
5.不断提出新的应用要求
操作系统的发展过程
手工操作—>简单批处理—>多道批处理—>分时系统—>实时系统—>微机,多处理机,网络,分布式OS
未配置操作系统的计算机
1.人工操作方式
特点:用户独占全机,CPU等待人工操作
缺点:人工操作的方式严重降低了计算机资源的利用率(问题主要表现在,人工操作方式下纸带的装填速度,明显慢于CPU的运行速度),所谓人机矛盾;CPU与I/O设备之间速度不匹配的矛盾更加突出;
解决方式:通道技术,缓存技术,但并未很好地解决上述矛盾,直至引入脱机I/O技术
2.脱机I/O方式
优点:
减少CPU的空闲时间——数据是在外围机控制下输入到高速磁带当中,脱机控制,并不占用主机时间
提高了I/O速度——当CPU需要数据时,数据直接从高速磁带输入内存,极大提高了I/O速度,进一步减少了CPU空闲时间
为解决CPU与I/O设备之间速度不匹配的问题
由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,他们都是在脱离主机的情况下进行的,故称其为脱机控制方式
(将要输入的的用户程序和数据通过外围机输入到磁带当中保存,当CPU需要这些程序和数据时再通过磁带调入内存;当需要输出时,CPU将数据从内存高速地送到磁带上,然后在另一台外围机的控制下将数据通过相应的输出设备输出)
单道批处理系统
特性与研发目的
自动性:作业挨个处理,无人工干预
单道性:内存中仅有一道程序,顺序性(先进先出)
单道批处理系统研发目的:为了能充分提高计算机的利用率,应尽量保持系统连续运行,即使其在处理完一个作业后,紧接着处理下一个作业,减少系统空闲时间
单道批处理系统的处理过程
作业以脱机方式输入到磁带上,并在系统中配上监督程序。在监督程序的控制下,这批作业能一个接一个地被连续处理;
处理过程:监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业;当作业处理完成时,又把运行控制权交还给监督程序,直到这批作业处理完毕;
单通道批处理系统的流程图
单道批处理系统的缺点
系统中的资源得不到充分利用——内存中仅有一道程序,每逢该程序在运行中发出I/O请求后,CPU便会处于等待状态,并且必须在该程序I/O完成后才能继续运行
计算机内存资源被浪费,多种I/O设备也未被很好利用
多道批处理系统
多道程序设计的基本概念
多道——宏观并行,微观串行,内存同时驻留多道程序容许并发执行
无序性——受资源影响,进出顺序不一致
成批处理
设计目的:为进一步提高资源利用率和系统吞吐量
执行流程:用户所提交作业放于外存,并形成一个“后备队列”
作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使他们共享CPU和系统中的各种资源;
由于内存中装有若干道程序,在运行程序A时,利用因其I/O操作而暂停执行时的CPU空挡时间,再调度另一道程序B执行
多道批处理系统的优缺点
资源利用率高
系统吞吐量大
平均周转时间长
无交互能力
多道批处理系统需解决的问题
争用处理机问题
内存分配与保护问题
I/O设备分配问题
文件的组织与管理问题
作业管理问题
用户与系统的接口问题
OS是一组能有效地组织和管理计算机软硬件资源,合理地对各类作业进行调度,以及方便用户使用的程序集合
分时系统
分时系统的引入
为满足人机交互的需求
特点:人机交互,共享主机
分时系统:在一台主机上连接多个配有显示器和键盘的终端所形成的系统
分时系统实现过程的关键
及时接收——多路卡,实现多路复用;配置缓冲区
及时处理——作业直接进入内存,只进行一次调度,作业直给CPU;引入时间片,轮转运行方式(2s响应 2ms处理)
分时系统的特征
多路性,多终端同连一台主机,按分时原则为每个用户服务
独立性,feeling 一人独占主机
及时性,用户的请求能在很短的时间内得到相应(通常为1-3s)
交互性,用户通过终端与系统进行广泛的人机对话
实时系统
实时系统——系统能及时响应外部事件的请求,在规定事件内完成对该事件的处理,并控制所有实时任务协调一致地运行
实时系统的类型
工业控制系统
信息查询系统
多媒体系统
嵌入式系统
实时性任务的类型
周期性实时任务和非周期性实时任务
硬实时任务和软实时任务(对截至时间的要求)
实时系统与分时系统特征的比较
实时控制系统——周期性对多路现场进行信息采集,并对多个对象或多个执行机构进行控制
多路性——装置与设备,对多个执行机构进行控制
独立性——独立控制某一装置,设备
及时性——画面流畅,声音连贯
交互性
可靠性
微机操作系统
单用户单任务OS(早期的8,16位OS,用户上机,仅用于单个任务)
单用户多任务OS
多用户多任务OS
提高算力的两种方式:量大,性能高
嵌入式操作系统
嵌入式系统——专用计算机系统
嵌入式OS——基于嵌入式系统的OS
嵌入式OS的特点
系统内核小——一般用于小型电子装置,系统资源相对有限,因此其内核较传统OS要小的多
系统精简——既可以控制系统成本也有利于系统安全
实时性高——嵌入式系统的基本要求
具有可配置性
网络操作系统
什么是网络操作系统
用于计算机网络环境下对网络资源进行管理和控制,实现数据通信及对网络资源的共享,为用户提供网络资源接口的一组软件和规程的集合。
网络操作系统建立在网络中的计算机各自不同的单处理OS上,为用户提供使用网络资源的桥梁
常见的局域网上的OS有UNIX,linux等
网络操作系统的特征
硬件独立性,接口一致性,资源透明性,系统可靠性,执行并行性
网络OS的功能
网络OS涵盖了单处理机OS的全部功能,还具有支持数据通信,应用互操作,网络管理等功能
为实现网络中计算机之间的数据通信,网络操作系统具有如下基本功能:
①连接的建立与拆除;②报文的分解与组装;
③传输控制;
④流量控制;
⑤差错的检测与纠正;
分布式操作系统
分布式系统
分布式系统(distributed system),基于软件实现的多处理机系统,是多个处理机通过通信线路互联而构成的松散耦合系统,系统的处理和控制功能分散在各个处理机上;
分布式操作系统是利用软件系统方式构建在计算机网络上的一种多处理机系统;
分布式OS的特点
分布性
透明性
同一性
全局性
分布式OS的功能
涵盖单机处理机OS的主要功能
通信管理功能
资源管理功能
进程管理功能
操作系统的基本特性
并发与并行
系统中的程序可以并发执行,从而有效提高了系统的资源利用率,提高了系统的吞吐量
并行:两个或多个事件在同一时刻发生
并发:两个或多个事物在同一间隔时间内发生
缺点:使系统复杂化,共享CPU,内存,I/O设备,发生资源争夺
共享
互斥共享,在一段时间内只允许一个进程访问,如打印机,磁带机,栈,变量,表格等;协调不好可能会产生死锁;在一段时间内只允许一个进程访问的资源称为临界资源(或独占资源)
同时共享
在一段时间内,允许多个进程对其进行访问(宏观同时,微观交替进行)如,磁盘设备(不会导致死锁),可重入代码编写的文档
虚拟
时分复用技术
在为某一用户服务的空闲时间,转而去为另一用户服务
虚拟机处理机技术,利用多道程序设计技术,为每道程序建立至少一个进程,使多道程序并发执行;我们把用户所感受到的处理机称为虚拟处理机
虚拟设备技术,将物理上的I/O设备,虚拟为多台逻辑上的I/O设备,并允许每个用户占一台逻辑上的I/O设备
空分复用技术
利用存储器的空闲时间(如某道程序阻塞时被换出到外存而空出来的内存空间)来存放其他程序以提高内存的利用率
虚拟存储技术
本质:实现内存的分时复用(一次只抽取程序的部分在内存当中运行),逻辑上扩充内存含量
磁盘:磁道与扇区;引导程序存放在0磁—0扇区,引导程序定位到OS内核(精简版的OS),并将其加载到内存中
异步
由于资源等因素的限制,进程通常不是一下执行完毕(一气呵成),而是以走走停停的方式;
操作系统的运行环境
硬件支持
操作系统内核
常驻内存,与硬件紧密相关
ctrl C 操作员控制中断
内核功能:
1.支撑功能①中断处理
②时钟管理
③原语操作,原语,由若干条指令组成的,用于完成一定功能的过程;与一般过程的区别在于,他是原子操作,操作过程中的动作一次性完成,不可分割,即原子性
2.资源管理功能
①进程管理
②存储器管理
③设备管理
处理机的双重工作模式
双重模式提供了保护手段,以防止OS和用户程序受到错误用户程序的影响,如,将可能引起损害的机器指令当成特权指令,硬件只有在内核状态下才允许执行特权指令;其他指令为非特权指令
处理机的双重工作模式视图
内核态(0)也称系统态,管态
用户态(1)也称目态
特权指令
在内核态下运行的指令,它对内存空间的访问范围基本不受限制。可访问用户空间,系统空间,(切换到用户态的指令也是特权操作)
非特权指令
在用户态下运行的命令,应用程序完成的指令,只能完成一般的操作和任务,不能对系统的硬件和软件进行直接的访问,对内存的访问局限于用户空间,可防止应用程序的运行异常对系统造成破坏
中断与异常
现代操作系统是中断驱动的,中断是硬件通过系统总线发送信号到CPU来触发的
指令:CPU执行
执行程序:位于内存
引导程序:位于固件,定位OS内核并将其加载到内存中
事件:硬件中断或软件中断
程序:位于外存
-
计算机操作系统(第3版)汤子瀛汤子瀛 (全)
2012-06-02 13:45:39计算机操作系统(第3版) 汤子瀛 操作系统 -
《计算机操作系统(慕课版)》(汤小丹著)课后习题答案
2022-01-10 20:18:33 -
计算机操作系统(第四版)汤小丹课后习题答案.pdf
2020-10-21 12:31:38对传统操作系统(OS)和现代操作系统均做了较为全面的介绍。全书共分12章:第一章为操作系统引论,介绍了OS的发展、传统OS和现代OS的特征及功能;第二和第三章深入阐述了进程和线程管理、进程同步、处理机调度和死锁;... -
计算机操作系统慕课版第三章重点题型-银行家算法
2021-11-30 16:01:33计算机操作系统慕课版银行家算法习题检查此时系统是否安全 -
计算机操作系统慕课版(汤小丹)--第一章课后题
2022-04-06 10:55:10第一章 操作系统引论 ...答:与硬件的关系:操作系统是位于硬件层上的第一层软件,它直接管理着计算机的硬件,合理组织计算机工作流程,并提高了硬件的利用率。。与其他系统软件的关系:操作系统是系统软件,但它不同 -
汤小丹计算机操作系统慕课版课后题答案第五章:储存器管理
2021-07-17 09:16:21为什么说分段系统较分页系统更容易实现信息共享和保护? 分段系统段内内容基本一致,只需要一个标志位便可对整个段进行保护。 分页系统,文件存放更分散,需要的标识太多 提高内存利用率途径有哪些? 内存利用率低... -
汤小丹计算机操作系统慕课版课后题答案第四章:进程同步
2021-07-14 08:09:52管程是代表共享数据结构,以及由对该共享数据结构实施操作的过程组成的资源管理程序,是操作系统的一个资源管理模块。 特症: (1)抽象了临界资源。 (2)对临界资源的访问只能调用管程进行。 (3)只允许一个进程... -
计算机操作系统 (汤小丹、汤子瀛) 习题答案 高清pdf
2011-02-23 20:56:38计算机操作系统 (汤小丹、汤子瀛) 习题答案 高清pdf -
计算机操作系统(第3版)汤小丹, 汤子瀛 超清(影印版,非扫描).pdf
2019-06-17 19:52:58计算机操作系统第三版,对于初学者的你来说值得拥有。。 -
计算机操作系统(第四版)汤小丹课后答案完整版.docx
2019-06-21 13:38:09计算机操作系统(第四版)汤小丹课后习题答案 -
计算机操作系统汤小丹课后答案完整版.doc
2020-09-19 18:33:39第一章 1设计现代 OS 的主要目标是什么 答 1 有效性 2方便性 3可扩充性 4开放性 2 OS 的作用可表现在哪几个方面 答 1 OS 作为用户与计算机硬件系统之间的接口 2 OS 作为计算机系统资源的管理者 3 OS 实现了对计算机... -
计算机操作系统(第四版)汤小丹课后答案完整版
2021-01-09 19:45:06计算机操作系统(第四版)汤小丹课后答案完整版 -
计算机操作系统 南京大学 MOOC资源汇总
2020-05-25 20:07:12南京大学MOOC计算机操作系统通关攻略 第一次单元测验 第二次单元测试 第三次单元测验 第四次单元测验 第五次单元测试 这几篇博客不是我写的,但是使用的工具是和我一样是 Exercises-Manager 。 对怎么... -
汤小丹计算机操作系统慕课版课后题答案第六章:虚拟储存器
2021-07-20 10:43:18他们对系统性能有哪些影响? 一次性:将全部作业装入内存才运行。会导致内存装不下或者装的太少影响系统性能。 驻留性:调入内存后直到运行结束都不会调出内存。浪费内存。 什么是虚拟储存器?如何实现分页式虚拟... -
计算机操作系统(第四版)课后习题答案第五章.pdf
2020-11-30 13:07:59--WORD格式 - 可编辑 -- 第五章 7. 试比较缺页中断机构与一般的中断他们之间有何明显的区别 答缺页中断作为中断同样需要经历保护 CPU 现场分析中断原因转缺页 中断处理程序进行处理恢复 CPU 现场等步骤但缺页中断又... -
计算机操作系统_汤小丹_汤子瀛_第3版_带书签_pdf
2019-04-23 14:48:31计算机操作系统_汤小丹_汤子瀛_第3版_带书签的电子文档;付不动积分的可留邮箱; -
计算机操作系统第一章选择题答案(慕课版-汤小丹)
2021-11-26 09:13:08计算机操作系统慕课版 第一章选择题答案 -
计算机操作系统期末试卷及答案.pdf
2021-10-10 13:21:29计算机操作系统期末试卷及答案.pdf -
计算机操作系统(第四版)_汤小丹_课后习题答案.pdf
2020-06-28 22:49:57. . . . 计算机操作系统 (第四版 ) 汤小丹 课后习题 答案 参考 .资料 . . . . 参考 .资料 . . . . 参考 .资料 . . . . 参考 .资料 . . . . 参考 .资料 . . . . 参考 .资料 . . . -
大学计算机基础mooc习题整理(含答案).pdf
2020-07-02 14:05:54大学计算机考试模拟题理工类 一简答题本题共 6 个小题每小题 5 分共 30 分 1.... 什么是操作系统简述操作系统的主要功能 P109 第 24 题参见 P89 4. 人类问题求解的一般思维过程是什么简要说明 参见 P1 -
计算机操作系统期末考试题及答案.pdf
2021-10-10 13:21:23计算机操作系统期末考试题及答案.pdf -
操作系统实验指导书-实验三(发布版).pdf
2021-03-06 11:20:54操作系统实验指导书-实验三(发布版).pdf -
《计算机操作系统》习题答案(汤子瀛版_完整版).pdf
2014-10-06 21:11:15《计算机操作系统》习题答案(汤子瀛版_完整版).pdf -
计算机操作系统教材电子版
2011-12-07 11:41:56计算机操作系统教程-张尧学-清华第3版.pdf -
汤晓丹的第四版计算机操作系统--第九章总结概述
2020-05-30 17:58:34第九章 操作系统接口 管道命令:人们又进一步把重定向思想加以扩充,用符号“|”来连接两条命令,使其前一条命令的输出作为后一条命令的输入。 在计算机系统中设置了两种状态:系统态(或称为核心态)和用户态。 ...