华南理工大学网络教育操作系统课后作业一答案

更新时间:2023-11-07 18:06:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章:操作系统引论

1. 什么是操作系统?可以从哪些角度阐述操作系统的作用?

答:操作系统是计算机系统中的一个系统软件,是能有效地组织和管理计算机系统中的硬件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行的一组程序模块的集合。

作用:控制管理计算机的全部硬软件资源,合理组织计算机内部各部件协调工作,为用户提供操作和编辑界面的程序集合。

2. 简要叙述批处理操作系统、分时操作系统和实时操作系统的概念及特点。

答:批处理系统是指,把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序,在它的控制下按照一定的顺序自动执行,直至这批作业处理完毕,这就是批量处理系统。批处理操作系统特点:(1)自动性 (2)顺序性 (3)单道性

分时操作系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用通过自己的终端,以交互方式使用计算机,共享主机中资源。

分时操作系统特点:(1)多路性 (2)独立性 (3)及时性 (4)互交性

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

实时操作系统的特点:(1)多路性 (2)独立性 (3)及时性 (4)互交性 (5)可靠性

3. 从交互性、及时性和和可靠性方面将分时系统和实时系统比较。

答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。 (2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。 (3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。

4. 当代操作系统的四大基本特征是什么?其最基本的特征是什么?

答:操作系统的特征有:并发性,共享性,虚拟性,异步性。其中并发性是其主要特征。

5. 操作系统需要管理哪些资源?它的基本功能是什么?

答:操作系统控制和管理计算机系统中的各种硬件和软件资源,使之得到更有效的利用;它的基本功能有:存储器管理、处理机管理、设备管理、文件管理。

6. 操作系统对外提供了哪些接口?

答:(1) 操作系统的命令接口

(2) 操作系统的程序接口 (3) 操作系统的交互界面

第二章:进程管理

1.试画出下面四条语句的前趋图:

S1:a=x+y S2: b=Z+1 S3: c=a-b S4: w=c+1

答:如图

S1 S2

2.进程有什么特征?

答:(1)结构性特征:进程实体有结构,它由程序段,数据观和进程控制块三部分组成。 (2)动态性:它由“创建”而产生,由”调用“而执行,因得不到执行而暂停执行,最后”撤销“而消亡。具有一定的生命周期。

(3)并发性:进程的多个实体同存于内存中,能在一段时间内同时运行。

(4)独立性:进程实体是能独立运行的单位,是系统独立获得资源,独立调度的基本单位。 (5)异步性:进程间是以各自独立的,不可与之的速度向前颓景的。

S3 S4

3.PCB有什么作用?PCB中主要包括什么信息?为什么说PCB是进程存在的唯一标志?

答:PCB 是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程并发执行的进程。OS是根据PCB对并发执行的进程进行控制和管理的。

在进程的整个生命周期中,系统总是通过其PCB 对进程进行控制,系统是根据进程的PCB 而不是任何别的什么而感知到该进程的存在的,所以说,PCB 是进程存在的唯一标志。

4.请画出完整的进程状态转换图并说出在什么情况下进程会出生何种状态转换。

答:完整的进程状态转换图 创建 请求I/O 活动活动就绪 释放 激活 挂起 激活 挂起 静止阻塞 静止 就绪 释放 许可 许可 执行 挂起 释放 终止 阻塞 进程的转换如下: 创建→活动就绪 创建→禁止就绪 活动就绪→禁止就绪 活动阻塞→禁止阻塞 禁止阻塞→活动就绪 禁止阻塞→活动阻塞 执行→终止

5.进程的三种基本状态是什么?请说明进程在三种基本状态之间转换的典型原因。

答:三种基本状态是:就绪、执行和阻塞状态。 进程三种状态的转换:

(1) 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态.

(2)当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行状态转变为阻塞 状态.

(3) 当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态

6.进程在运行时存在那两种制约关系?并举例说明。

答:(1)间接相互制约关系,例如:两个进程A和B,如果在A进程提出打印请求时,系统已将唯一的一台打印机分配给了进程B,则此时进程A只能为阻塞;B进程释放打印机后,则A才能由阻塞状态转换为就绪状态。

(2)直接制约关系,例如:有一输入进程A通过单缓冲向进程B提供数据。当该缓冲区空时,计算机进程不能获取所需数据而阻塞,而当进程A把数据输入缓冲区后,进程B被唤醒;反之,当缓冲区满时,进程A不能将数据存入缓冲区而阻塞,当B进程将数据取走后,A进程被唤醒。

7.进程同步应遵守哪些基本准则?常用的同步机制有哪些?

答:(1)空闲让进.当无进程处于临界区时,表明临界资源处于空闲状态,允许一个请求进入临界区的进程立即进入临界区,以有效利用临界资源。

(2)忙则等待.当已有进程处于临界区时,表面临界资源正在被访问,因而其他试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。

(3)有限等待.对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态。

(4) 让权等待.当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态。

常用的机制有:(1)信号量机制 (2)管程机制

8.用信号量(signal和wait操作)实现下图所示前趋关系:

答:Var a, b, c, d, e, f, g, h,i,j; semaphore:= 0, 0, 0, 0, 0, 0, 0,0,0, 0;

begin parbegin

begin S1; signal(a); signal(b); end;

begin wait(a); S2; signal(c); signal(d); end; begin wait(b); S3; signal(e); signal(f); end; begin wait(c); S4; signal(g); end; begin wait(d); S5; signal(h); end; begin wait(e); S6; signal(i); end; begin wait(f); S7; signal(j); end;

begin wait(g);wait(h); wait(i); wait(j); S8; end; parend end

9.试比较进程间低级和高级通信工具。当前有哪几种进程间高级通信工具?

答:用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所有的操作都必须由程序员来实现,而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传送大量的数据。

当前的进程间高级通信工具有:共享存储器系统、消息传递系统以及管道通信系统。

第三章:处理机调度与死锁

1.什么是处理机高级、中级和低级调度?各级调度的主要任务是什么?

答:高级调度:又称为作业调度、长程调度,用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程、分配必要的资源,排在就绪队列上。

中级调度:又称作中程调度,作用是使那些暂时不能运行的进程不再占用内存资源,将它们调至外存等待,把进程状态改为就绪驻外存状态或挂起状态。

低级调度:进程调度、短程调度,主要功能有(1)保存处理机制的现场信息 (2)按某种算法选取进程 (3)把处理器分配给进程

2.非抢占式调度中可能引起调度的原因有那些?抢占调度方式中,抢占的原则是什么?

答:非抢占方式占有CPU,一直运行,采用这种方式,可能引起进程调度的几个因素:① 进程执行完毕或因某事件不能继续; ② 提出I/O请求而暂停;③ 在进程通信或同步过程中执行了P (wait)、Block、Wakeup等某种原语操作。

抢占调度方式中,抢占的原则:(1)优先权原则(2)短作业优先原则 (3)时间片原则。

3.比较FCFS和SPF两种进程调度算法。

答:相同点:两种调度算法都可以用于作业调度和进程调度。

不同点:FCFS调度算法每次都从后备队列中选择一个或多个最先进入该队列的作业,将它们调入内存、分配资源、创建进程、插入到就绪队列。该算法有利于长作业/进程,不利于短作业/进程。SPF算法每次调度都从后备队列中选择一个或若干个估计运行时间最短的作业,调入内存中运行。该算法有利于短作业/进程,不利于长作业/进程。

4.何谓静态和动态优先级?确定静态优先级的依据是什么?

答:静态优先级是指在创建进程时确定且在进程的整个运行期间保持不变的优先级。 动态优先级是指在创建进程时赋予的优先权,可以随进程推进或随其等待时间增加而改变的优先级,可以获得更好的调度性能。

确定进程优先级的依据:进程类型、进程对资源的需求和用户要求。

5.什么是死锁?产生死锁的原因和必要条件是什么?

答:死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。

产生死锁的原因有:一是竞争资源,二是进程推进顺序非法。

必要条件是:互斥条件,请求和保持条件,不剥夺条件和环路等待条件。

6.处理死锁的四种方法是什么?解除死锁的两种方法是什么?

答:处理死锁的四种方法是(1)预防死锁 (2)避免死锁 (3)检测死锁 (4)解除

死锁

解除死锁的两种方法是:(1)撤销一些进程 (2)挂起一些进程

7.下列A、B、C、D四个进程在FCFS和SJF调度方式下的平均周转时间和调度先后顺序。

进程名 到达时服务时间 A B C D

1?i?T?T答:平均周转时间 =??i?(1+1+100+2+1+3+100)/4=52

n?i?1?间 1 100 1 100 0 1 2 3

调度先后顺序为:ACBD

8.银行家算法中,若出现下述资源分配情况:

Process P0 P1 P2 P3 P4 Allocation 0032 1000 1354 0332 0014 Need 0012 1750 2356 0652 0656 Avilable 1622 试问:(1)该状态是否安全?

(2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源

分配给它?

答:(1)该状态是安全的,因为存在一个安全序列< P0P3P4P1P2>。

⑵若进程P2提出请求Request(1,2,2,2)后,系统不能将资源分配给它,若分配给进程P2,系统还剩的资源情况为(0,4,0,0),此时系统中的资源将无法满足任何一个进程的

资源请求,从而导致系统进入不安全状态,容易引起死锁的发生。

9.资源分配图法判断下图中是否存在死锁。

答:产生了死锁。如图得知,P1已经分得了另个r1资源,并又请求了一个r2资源;P2进程分得了一个r1和一个r2资源,并又请求了r1资源。

第四章:存储器管理

1.简述存储器层次结构分几层,每层存放什么数据,作用是什么?

答:分五层

层0:CPU内寄存器组:由编译器完成分配,传送速度按处 理机速度 层1:高速缓存(cache):可几个层次,MMU控制

层2:主存储器:基本存储器,MMU与操作系统管理,存取策略 层3:外存储器(硬盘):联机存储器(I/O处理)

2.分区存储管理中常用哪些分配策略?比较它们的优缺点。

答:分区存储管理中常采用的分配策略有:首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法、快速适应算法。

(1)首次适应算法的优缺点:保留了高址部分的大空闲区,有利于后到来的大型作业的分配;低址部分不断被划分,留下许多难以利用的、小的空闲区,且每次分区分配查找时都是从低址部分开始,会增加查找时的系统开销。

(2)循环首次适应算法的优缺点:使内存中的空闲分区分布得更为均匀,减少了查找时的系统开销;缺乏大的空闲分区,从而导致不能装入大型作业。

(3)最佳适应算法的优缺点:每次分配给文件的都是最适合该文件大小的分区;内存中留下许多难以利用的小的空闲区。

(4)最坏适应算法的优缺点:给文件分配分区后剩下的的空闲区不至于太小,产生碎片的几率最小,对中小型文件分配分区操作有利;使存储器中缺乏大的空闲区,对大型

文件的分区分配不利。

(5)快速适应算法的优缺点:查找效率高,在进行空闲分区分配时,不会对任何分区产生分割,所以能保留大的分区;缺点是在分区归还主存是算法复杂,系统开销较大,还有会造成储存空间浪费。

3.分页和分段存储管理有何区别?实现时需要什么硬件支持?页表项和段表项中各含有什么信息项?

答:分页和分段都采用离散分配的方式,且都要通过地址映射机构来实现地址变换,这是它们的共同点;

对于它们的不同点有三点:

(1)从功能上看,页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率,即满足系统管理的需要,而不是用户的需要;而段是信息的逻辑单位,它含有一组其意义相对完整的信息,目的是为了能更好地满足用户的需要;(2)页的大小固定且由系统确定,而段的长度却不固定,决定于用户所编写的程序;(3)分页的作业地址空间是一维的,而分段的作业地址空间是二维的。 实现时需要有页表机制、地址变换机构的硬件支持。

4.具有快表的段页式存储管理方式中,如何实现地址变换?

答:首先设置一段表寄存器,在其中存放段表始址和段长SL,进行地址变换时,利用段号S与段长SL进行比较,若S

5.虚拟存储器有那些特征?其中最本质的特征是什么?

答:特征:离散性、多次性、对换性、虚拟性; 最本质的特征:离散性。

6.图示并解释请求分页式存储管理地址转换过程。

答:如图

越界中断

页表寄存器 页表长度 逻辑地址L 页表始址 > 页号 0 1 2 3 块号 1 b 页表

页码(3) 页码地址 + 物理地址 地址转换过程:当一个进程要访问某个逻辑地址中的数据时,分页地址转换机构会自动将有效的地址分为页号和页内地址两部分,再以页号为索引去检索页表。查找操作由硬件执行。执行检索之前,先将页号与页表长度进行比较,如果页号大于或等于页表长度,则表示本次访问的地址已超越进程的地址空间。于是,这一错误将被系统发现并产生一地址越界中断。若未出现越界错误,则将页号地址与页表项长度的乘积相加,便得到该表项在页表中的位置,于是可以从中得到该页的物理块号,将之装入物理地址寄存器中,与此同时,在将有效地址寄存器中的页内地址送入物理地址寄存器的块内地址字段中。这样便完成了从逻辑地址到物理地址的变换。

7.图示并解释请求分段式存储管理地址转换过程。

答:段式寄存器在进行地址变换时,系统将逻辑地址中的段号与段表长度TL进行比较,若S>TL,表示段号太大,是访问越界,于是产生越界中断信号;若未越界,则根据段表的始址和该段的段号,计算出该段对应段表的位置,从中读取该段在内存的起始地址,然后,再检查段内地址d是否超过该段的段长SL。若超过,即d>SL,同样发出越界中断信号;若未越界,则将该地址的基址与段内地址d相加,即了得到要访问的内存物理地址。

分段系统的地址转换图如下:

控制寄存器

段表始地址 段表长度 越界 段号S

移位量W 100 有效地址

> 2 + 段号 0 1 2 3 段长 基址 1K 600 500 200 6K 4K 8K 9200 8292 物理地址

+

8.一个请求分页系统中,采用FIFO页面置换算法时,假如一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理块数M分别为3和4时,试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。

4 3 2 1 4 3 5 4 3 2 1 5 4 4 4 1 1 1 5 5 5 M=3

M=4

4 3 4 3 3 2 4 3 2 3 2 4 3 2 1 4 2 4 3 5 3 2 1 5 4 2 1 5 4 3 1 5 4 3 2 1 4 3 2 1 5 3 2 4 3 2 3 2 1 8K 8292 8692 主存

M=3时,采用FIFO页面置换算法的缺页次数为9次,缺页率为75%; M=4时,采用FIFO页面置换算法的缺页次数为10次,缺页率为83%。

由此可见,增加分配给作业的内存块数,反而增加了缺页次数,提高了缺页率,这种现象被称为是Belady现象。

9.一个作业按依访问如下页面7、0、1、2、0、3、0、4、2、3、0、3、2、1、2、0、1、7、0、1,若分配给该作业的物理块数M为3,计算在Optical、FIFO和LRU置换算法下的缺页中断次数和缺页率。

答:在Optical缺页中断次数为:15缺页率为: 75% 在FIFO缺页中断次数为:18缺页率为:90% 在LRU缺页中断次数为:16缺页率为:80%

10. 说明请求分段系统中缺页中断处理过程。

答:访问快表、访问页表、在内存中、缺页中断、保护现场、外存中找到缺页、内存满)选出一页换出)否则OS命令CPU从外存读缺页、启动I/O硬件、将该页换入内存、修改页表、返回。

本文来源:https://www.bwwdw.com/article/nd62.html

Top