ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:115.24KB ,
资源ID:6007794      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6007794.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(操作系统OS课后习题答案.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

操作系统OS课后习题答案.docx

1、操作系统OS课后习题答案操作系统习题解答1. 存储程序式计算机的主要特点是什么?答:主要特点是以顺序计算为基础,根据程序规定的顺序依次执行每一个操作,控制部件根据程序对整个计算机的活动实行集中过程控制,即为集中顺序过程控制。这类计算是过程性的,实际上这种计算机是模拟人们的手工计算的产物。即首先取原始数据,执行一个操作,将中间结果保存起来;再取一个数,和中间结果一起又执行一个操作,如此计算下去。在遇到多个可能同时执行的分支时,也是先执行完一个分支,然后再执行第二个分支,直到计算完毕。2. 批处理系统和分时系统各具有什么特点?答:批处理系统是在解决人机矛盾以及高速度的中央处理机和低速度的I/O设备

2、这两对矛盾的过程中发展起来的。它的出现改善了CPU和外设的使用情况,其特点是实现了作业的自动定序、自动过渡,从而使整个计算机系统的处理能力得以提高。在多道系统中,若采用了分时技术,就是分时操作系统,它是操作系统的另一种类型。它一般采用时间片轮转的办法,使一台计算机同时为多个任务服务。对用户都能保证足够快的响应时间,并提供交互会话功能。它与批处理系统之间的主要差别在于,分时系统是人机交互式系统,响应时间快;而批处理系统是作业自动定序和过渡,无人机交互,周转时间长。3. 实时系统的特点是什么?一个实时信息处理系统和一个分时系统从外表看来很相似,它们有什么本质的区别呢?答:实时系统对响应时间的要求比

3、分时系统更高,一般要求响应时间为秒级、毫秒级甚至微秒级。将电子计算机应用到实时领域,配置上实时监控系统,便组成各种各样的专用实时系统。实时系统按其使用方式不同分为两类:实时控制系统和实时信息处理系统。实时控制是指利用计算机对实时过程进行控制和提供监督环境。实时信息处理系统是指利用计算机对实时数据进行处理的系统。实时系统大部分是为特殊的实时任务设计的,这类任务对系统的可靠性和安全性要求很高。与分时系统相比,实时系统没有那样强的交互会话功能,通常不允许用户通过实时终端设备去编写新的程序或修改已有的程序。实时终端设备通常只是作为执行装置或询问装置,属专用系统。4. 什么是多道程序设计技术?试述多道程

4、序运行的特征。答:多道程序设计技术是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制下,相互穿插地运行。多道程序运行的特征如下:(1) 多道:计算机内存中同时存放几道相互独立的程序。(2) 宏观上并行:同时进入系统的几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕。(3) 微观上串行:从微观上看,内存中的多道程序轮流地或分时地占有处理机,交替执行(单处理机情况)。5. 什么是操作系统?从资源管理的角度去分析操作系统,它的主要功能是什么?答:操作系统是一个大型的程序系统,它负责计算机的全部软、硬件资源的分配与回收,控制与协调等并发活动,实现信息的存取和保护。它提

5、供用户接口,使用户获得良好的工作环境,为用户扩展新的系统功能提供软件平台,操作系统使整个计算机系统实现了高效率和高度自动化。操作系统的主要功能是管理系统的软、硬件资源,它们可归为四类:处理机管理、存储管理、设备管理和文件管理等。6. 操作系统的主要特征是什么?为什么会具有这样的特征?答:操作系统的特征有:并发性,共享性,不确定性,虚拟性。其中并发性和共享性是其主要特征。由于操作系统建立并控制着多个并发执行的进程,完成着同时进行的几项任务,进程之间相互制约,并且共享着系统的某些资源,进程的这些活动便形成了操作系统的主要特征。并且许多事件的产生是随机的,而且事件产生的先后顺序又有许多可能组合,但操

6、作系统必须能处理任何一种可能的事件序列。所以,操作系统又具有不确定性。另外,操作系统中还广泛使用了虚拟技术,使得配备了操作系统之后的系统在资源的使用上更加自由和灵活,不受物理设备数量的限制。7. 设一计算机系统有输入机一台、打印机两台,现有二道程序同时投入运行,且程序A先开始运行,程序B后运行。程序A的运行轨迹为:计算50ms,打印信息100ms,再计算50ms ,打印信息100ms ,结束。程序B运行的轨迹为:计算50ms,输入数据80ms,再计算100ms,结束。要求:(1) 用图画出这二道程序并发执行时的工作情况。(2) 说明在二道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?

7、为什么会空闲等待?(3) 程序A、B运行时有无等待现象?在什么时候会发生等待现象?答:(1)工作情况如图。程序A程序B时间(2)CPU有空闲等待,它发生在100 ms150 ms时间段内,此时间段内程序A与程序B都在进行I/O操作。(3)程序A无等待现象,程序B在0 ms50 ms时间段与180 ms200 ms时间段内有等待现象。工作情况的另一种描述形式如下:程序B程序A打印机输入设备300ms150ms180ms100ms50ms200mst 进程管理习题1现代操作系统中为什么要引入“进程”概念? 它与程序有什么区别? 答:之所以要引入进程的概念,是因为在一些可以并发的程序段之间,存在着某

8、种相互制约的关系,每个程序段的执行不仅要受到其它程序执行的制约,而且还要动态地依赖系统资源的分配情况,因此每个可以并发执行的程序段就会因外界条件的限制而不能运行,被迫处于阻塞状态。仅用程序的概念无法表示程序的走走停停以及程序运行过程中对资源的竞争现象,因此需要采用一种动态的概念描述并发程序这种走走停停的现象,这就产生了进程的概念。 进程和程序的区别:(1) 进程是程序的执行过程,是动态的过程,属于一种动态概念。程序是一组有序静态指令和数据的集合,用来指示处理机的操作,是一种静态概念。(2) 从结构上看,每个进程实体是由程序段和相应的数据段两部分构成,并且进程结构中还要包含PCB,即进程控制块。

9、(3) 一个进程可以涉及到一个或几个程序的执行;反之,同一程序可以对应多个进程,即同一个程序段可以在不同数据集合上运行,可以构成不同的进程。(4) 进程能真实地描述并发执行的过程,而程序仅仅是静态指令堆积的序列。(5) 进程有可创建其他进程的功能,而一般的程序不具有创建其它程序的功能。(6) 每一个程序都是在一个进程现场中运行的。2叙述进程的并发性和制约性。答:并发性是进程的重要特征。即多道程序中多个进程同时向前推进的过程,没个进程总是与其它进程并发地执行的。进程的制约性是指一个进程的运行受到另一进程的制约。比如有的进程可能正在等待另一进程的计算结果而无法运行,或者进程所需的资源被别的进程占有

10、而无法运行。3进程的含义是什么? 如何构造和描述进程? 答:进程是程序的一次执行。进程由“进程控制块+程序+数据”构成,用进程控制块描述进程。4有三个并发进程,R负责从输入设备读入信息并传送给M,M将信息加工并传送给P,P将打印输出,写出下列条件下的并发程序。(1) 双缓冲区,每个区大小为K。(2) 单缓冲区,其大小为K。答: (1) 双缓冲区,每个区大小为K,信号量初值如下:mutexR=mutexP=1;emptyR=emptyP=k;fullR= fullP=0;变量的初值如下:inR=outR=inP=outP=0;用类Pascal编写程序如下:var mutexR,mutexP,em

11、ptyR,fullR,emptyP,fullP: semaphere;inR,outR,inP,outP: integer;buffer: array 0.k-1 of item;bufferP: array 0.k-1 of item;procedure R beginwhile true dobegin输入数据data1;P (emptyR);P (mutexR);bufferR(inR):=data1;inR:=(inR+1) mod (k);V(mutexR);V(fullR);endend;procedure M beginwhile true do beginP(fullR);P(

12、mutexR);data2:=bufferR(outR);outR:=(outR+1)mod (k);V(mutexR);V(emptyR);对data2进行加工;P(emptyP);P(mutexP);bufferP(inP):=data2;inP:=(inP+1)mod (k);V(mutexP);V(fullP);endend;procedure P:beginwhile true do beginP(fullP);P(mutexP)data3:=bufferP(outP);outP:=(outP+1)mod(k);V(mutexP);V(emptyP);打印 data3;end end

13、;beginseminitinal(mutexR.v,1;mutexP.v,1;emptyR.v,k;fullR.v,0;emptyP.v,k;fullP.v,0);inR:=0;outR:=0;inP:=0;outP:=0;cobeginR;M;P;coendend.(2)单缓冲区,大小为kvarempty,full,ok,mutex : semaphere;inR,outR,inP,outP : integer;buffer : array 0.k-1 of item;procedure R:beginwhile true dobegin输入数据 data1;P(empty);P(mute

14、x);buffer(inR):=data1;inR:=(inR+1) mod (k);V(mutex);V(full)endend;procedure M:beginwhile ture do beginP(full);P(mutex);data2:=buffer(outR);outR:=(outR+1) mod (k); V(mutex);对data2 加工;P(mutex);buffer(inP):=data2;inP:=(inP+1)mod (k); V(mutex);V(ok);endend;proedure P:begin while ture dobeginP(ok);P(mute

15、x);data3:=buffer(outP);outP:=(outP+1) mod(k);V(mutex);V(empty);打印data3;end;endbeginseminitial(empty.v,k;full.v,0;ok.v,0;mutex.v,1);inR:=0;outR:=0;inP:=0;outP:=0;cobeginR;M;P;coendend.5 在生产者与消费者问题的算法中,交换两个V操作的次序会有什么结果? 交换两P操作的次序呢? 说明理由。 答:交换两P操作的次序有可能造成死锁。例如,当无空缓冲区时,如果此时生产者先做互斥操作,即:P(mutex),然后才做同步操作P

16、(empty),由于此时empty=-1造成生产者被阻塞。当消费者执行到互斥操作P(mutex)时,由于生产者已执行过P(mutex)并未作释放,所以此时mutex=-1,造成消费者也被阻塞,生产者等消费者释放空缓冲区,而消费者则等待生产者释放临界资源的使用权,所以两个进程都无法向前推进而造成死锁。 交换两个V操作的次序不会发生死锁。 6 设有三个进程A、B、C,其中A与B构成一对生产者与消费者(A为生产者,B为消费者),共享一个由n个缓冲块组成的缓冲池;B与C也构成一对生产者与消费者(此时B为生产者,C为消费者),共享另一个由m个缓冲块组成的缓冲池。用P、V操作描述它们之间的同步关系。答:v

17、ar mutexA,emptyA,fullA,mutexC,emptyC,fullC : semaphere;i,j,a,b : integer;bufferA : array 0.n-1 of itembufferC : array 0.m-1 of item;procedure produceA:生产者进程Abegin while ture do begin Produce next product;P(emptyA);P(mutexA);bufferA(i) :=products;i:=(i+1) mod(n) ;V(mutexA);V(fullA)end endprocedure co

18、nsumer_procedurerB: 消费者和生产者进程Bbegin while ture dobegin P(fullA); P(mutexA);Goods:=buffer(j);j:=(j+1)mod(n);V(mutexA);V(emptyA);Consume goods and Produce next product C;P(emptyC);P(mutexC);BufferC(a):=product C;a:=(a+1) mod(m);V(mutexC);V(fullC)endend;procedure consumerC ; 消费者C进程 begin while ture do

19、begin P(fullC); P(mutexC);Goods:=bufferC(b); b:=(b+1) mod(m);V(mutexC);V(emptyC);Consume product;endend;beginSeminitsal(mutexA.v,1;mutexC.v,1; emptyA.v,n;emptyC.v,m;fullA.V,0;fullC.V,0);i:=0;j:=0;a:=0;b:=0;cobegin produce Aconsumer_procedurerB;consumerCcoendend.7 有一阅览室,共有100个座位。读者进入时必须先在一张登记表上登记,该表为

20、每一座位列一表目,包括座号和读者姓名。读者离开时要消掉登记内容。试用P、V操作描述读者进程的同步结构。答:varmutex : semaphere; 信号量,用于互斥full : semaphere; 信号量,用于同步table : array 0.n-1 of item; 登记表procedure reader; 读者进程beginP(full);P(mutex);Register_name(table);V(mutex);Reading;P(mutex);Delet_name(table);V(mutex);V(full)end;beginseminitsal(mutex.v,1; ful

21、l.v,100); 初始化cobegin reader; reader; .coendend.8引入线程的目的是什么?答:引入线程的目的是提高程序执行的并行度。9 引入管程的目的是什么? 答:引入管程的目的把分散的临界区集中起来管理,为每个可共享的资源设立一个专门的机构来统一管理各进程对该共享资源的访问。这样使互斥操作更安全,既便于系统管理共享资源,又能保证互斥访问。10 用管程实现读者与写者关系。管程部分描述如下:monitor rw;condition wrt;var readcount: integer;procedure entry read _start( );begin readc

22、ount:=readcount+1;end;procedure entry read_finish( );beginreadcount:=readcount-1;if readcount=0 then singal(wrt)end;procedure entry write( ); begin if readcount0 then wait(wrt); perform writing;endbegin readcount:= 0endend;主程序部分:procedure writter:beginrepeatrw.write( );until false;end procedure read

23、er:beginrepeat rw.read_start( );perform reading;rw.read_finish( );until false;endcobegin reader; writter;coend.11 何谓进程通信? 答: 进程通信是指进程之间的信息交换。12 消息通信机制中应设置哪些基本通信原语? 答:应设置send(A)(发送消息)原语,A是原语的参数,表示发送区的起始地址。receive(B)(接受消息)原语,B是接受进程提供的接收区起始地址。13何谓死锁?举例说明之。 答:两个以上的进程相互等待一个永远不可能发生的条件而无法向前推进,这种僵局称为死锁。例如:如

24、图所示的单行道上的交通阻塞。存储管理习题1何谓名字空间?何谓地址空间?何谓存储空间? 答:名字空间:程序中符号名的集合。 地址空间:在目标模块中的地址的集合。 存储空间:实际内存地址的集合。 汇编编译 地址重定位 连接 名字空间 地址空间 存储空间2在分区分配方案能用于实现虚拟内存吗? 答:不能,因为虚拟存储最重要的特点就是离散性,而分区分配方案只适用于连续分配方式,即全部程序都放在内存,而不允许程序运行时一部分在内存、一部分在外存。所以,无法提供内存的逻辑扩充功能。3为什么要引入动态重定位?如何实现? 答:动态重定位便于程序浮动。由于在目标模块装入内存时无需对其进行任何修改,因而装入之后再搬

25、迁也不会影响其正确执行。实现时,需要采用动态重定位硬件机构:重定位寄存器和加法器。如图所示。 4请详细说明,引入分页存储管理是为了满足用户哪几方面的需求? 答:1、为了充分利用空闲的存储空间,采取内存的不连续分配; 2、为了消除外零头,采用等分内存; 3、为了程序的浮动方便,采用动态地址重定位; 4、为了从逻辑上扩充内存,按照逻辑地址空间来访问程序,采用了虚拟存储管理。 5为什么说分段系统较之分页系统更易于实现地址变换? 答:因为分段是按照逻辑功能分段,这样在地址变换时,针对的是一个完整的逻辑功能段,所以可以在实际需要时进行动态连接。而分页则是按照物理页的大小划分所以一定要事先将所有的页面联接

26、成一个整体后才能实现地址变换。6分页存储管理中有哪几种常用的页面置换算法?试比较它们的优缺点。 答:(1) 先进先出(FIFO)(2) 最近最少使用的淘汰算法(LRU)(3) 最近不经常使用的淘汰算法(LFU)(4) 最优算法(OPT)FIFO算法最简单,但效率不高。LRU的近似算法和LFU是较为实用的算法,效果较好,实现也不难。OPT算法是最佳算法,但并不实用,因为要跟踪各页面方可预测未来,而这种预测往往是困难的。输入/输出系统习题1设备管理的目标和功能是什么? 答:设备管理的主要目标是:1) 选择和分配输入/输出设备以便进行数据传输操作;2) 控制输入/输出设备和CPU(或内存)之间交换数

27、据;3) 为用户提供一个友好的透明接口,把用户和设备的硬件特性分开,使得用户在编制应用程序时不必涉及具体设备,系统按用户要求控制设备工作;4) 提高设备和设备之间、CPU和设备之间以及进程和进程之间的并行操作度,以使操作系统获得最佳效率。设备管理程序的主要功能是:1) 提供和进程管理系统的接口。当进程申请设备资源时,该接口将进程的请求转送给设备管理程序;2) 进行设备分配;3) 实现设备和设备、设备和CPU等之间的并行操作;4) 进行缓冲区管理。2数据传送控制方式有哪几种?试比较它们各自的优缺点。 答:外部设备和内存之间的常用数据传送控制方式有四种。它们是: 1) 程序直接控制方式;其优点是控

28、制简单,所需硬件支持少。其缺点是CPU和外部设备只能串行工作,CPU的利用率低;不能实现设备之间的并行工作;只适用于那些CPU执行速度较慢,而且外部设备较少的系统。 2) 中断控制方式;其优点是所需硬件支持较少,与程序直接控制方式相比,使CPU的利用率大大提高且能支持多道程序和设备的并行操作。其缺点是消耗的CPU处理时间较多;随着外部I/O设备的增多和速度的提高,可能会造成CPU无法响应中断和出现数据丢失现象。 3) DMA方式;其优点是I/O速度较快,大大减少了CPU进行中断处理的次数;排除了因并行操作设备过多时CPU来不及处理或因速度不匹配而造成数据丢失等现象。其缺点是所需硬件较多;多个D

29、MA控制器的同时使用会引起内存地址的冲突并使得控制过程进一步复杂化。 4) 通道方式;其优点是I/O速度快,进一步减轻了CPU的工作负担和增加了计算机系统的并行工作能力。其缺点是控制较复杂,所需的硬件最复杂。3何谓通道?试画出通道控制方式时的CPU、通道和设备的工作流程图。答:通道是一个独立于CPU的专管输入/输出控制的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,可由CPU执行相应指令来启动通道,并在操作结束时向CPU发中断信号。在运行的时候,通道有自己的总线控制部分,可以进行总线操作。在有了通道之后,CPU仅需发出一条I/O指令给通道,说明要执行的I/O操作和要访问的I/O

30、设备。通道接到指令后,就启动相应的通道程序来完成I/O操作。如下图:4何谓中断?何谓中断处理?何谓中断响应? 答:中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后,又返回原来被中断处继续执行的过程。 CPU转去执行相应的事件处理程序的过程称为中断处理。 CPU收到中断请求后转到相应的事件处理程序称为中断响应。5何谓开中断?何谓关中断?何谓中断屏蔽? 答:尽管产生了中断源和发出了中断请求,但CPU内部的处理机状态字PSW的中断允许位已被清除,从而不允许CPU响应中断。这种情况称为禁止中断,也称为关中断。CPU禁止中断后只有等到PSW的中断允许位被重新设置后才能接收中断,PSW的中断允许位的设置被称为开中断。中断屏蔽是指在中断请求

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1