操作系统习题解答.docx

上传人:b****6 文档编号:15803920 上传时间:2023-07-08 格式:DOCX 页数:33 大小:217.12KB
下载 相关 举报
操作系统习题解答.docx_第1页
第1页 / 共33页
操作系统习题解答.docx_第2页
第2页 / 共33页
操作系统习题解答.docx_第3页
第3页 / 共33页
操作系统习题解答.docx_第4页
第4页 / 共33页
操作系统习题解答.docx_第5页
第5页 / 共33页
操作系统习题解答.docx_第6页
第6页 / 共33页
操作系统习题解答.docx_第7页
第7页 / 共33页
操作系统习题解答.docx_第8页
第8页 / 共33页
操作系统习题解答.docx_第9页
第9页 / 共33页
操作系统习题解答.docx_第10页
第10页 / 共33页
操作系统习题解答.docx_第11页
第11页 / 共33页
操作系统习题解答.docx_第12页
第12页 / 共33页
操作系统习题解答.docx_第13页
第13页 / 共33页
操作系统习题解答.docx_第14页
第14页 / 共33页
操作系统习题解答.docx_第15页
第15页 / 共33页
操作系统习题解答.docx_第16页
第16页 / 共33页
操作系统习题解答.docx_第17页
第17页 / 共33页
操作系统习题解答.docx_第18页
第18页 / 共33页
操作系统习题解答.docx_第19页
第19页 / 共33页
操作系统习题解答.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

操作系统习题解答.docx

《操作系统习题解答.docx》由会员分享,可在线阅读,更多相关《操作系统习题解答.docx(33页珍藏版)》请在冰点文库上搜索。

操作系统习题解答.docx

操作系统习题解答

 

操作系统习题解答(总20页)

操作系统习题解答

1.存储程序式计算机的主要特点是什么

答:

主要特点是以顺序计算为基础,根据程序规定的顺序依次执行每一个操作,控制部件根据程序对整个计算机的活动实行集中过程控制,即为集中顺序过程控制。

这类计算是过程性的,实际上这种计算机是模拟人们的手工计算的产物。

即首先取原始数据,执行一个操作,将中间结果保存起来;再取一个数,和中间结果一起又执行一个操作,如此计算下去。

在遇到多个可能同时执行的分支时,也是先执行完一个分支,然后再执行第二个分支,直到计算完毕。

2.批处理系统和分时系统各具有什么特点

答:

批处理系统是在解决人—机矛盾以及高速度的中央处理机和低速度的I/O设备这两对矛盾的过程中发展起来的。

它的出现改善了CPU和外设的使用情况,其特点是实现了作业的自动定序、自动过渡,从而使整个计算机系统的处理能力得以提高。

在多道系统中,若采用了分时技术,就是分时操作系统,它是操作系统的另一种类型。

它一般采用时间片轮转的办法,使一台计算机同时为多个任务服务。

对用户都能保证足够快的响应时间,并提供交互会话功能。

它与批处理系统之间的主要差别在于,分时系统是人机交互式系统,响应时间快;而批处理系统是作业自动定序和过渡,无人机交互,周转时间长。

3.实时系统的特点是什么一个实时信息处理系统和一个分时系统从外表看来很相似,它们有什么本质的区别呢

答:

实时系统对响应时间的要求比分时系统更高,一般要求响应时间为秒级、毫秒级甚至微秒级。

将电子计算机应用到实时领域,配置上实时监控系统,便组成各种各样的专用实时系统。

实时系统按其使用方式不同分为两类:

实时控制系统和实时信息处理系统。

实时控制是指利用计算机对实时过程进行控制和提供监督环境。

实时信息处理系统是指利用计算机对实时数据进行处理的系统。

实时系统大部分是为特殊的实时任务设计的,这类任务对系统的可靠性和安全性要求很高。

与分时系统相比,实时系统没有那样强的交互会话功能,通常不允许用户通过实时终端设备去编写新的程序或修改已有的程序。

实时终端设备通常只是作为执行装置或询问装置,属专用系统。

4.什么是多道程序设计技术试述多道程序运行的特征。

答:

多道程序设计技术是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制下,相互穿插地运行。

多道程序运行的特征如下:

(1)多道:

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

(2)宏观上并行:

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

(3)微观上串行:

从微观上看,内存中的多道程序轮流地或分时地占有处理机,交替执行(单处理机情况)。

5.什么是操作系统从资源管理的角度去分析操作系统,它的主要功能是什么

答:

操作系统是一个大型的程序系统,它负责计算机的全部软、硬件资源的分配与回收,控制与协调等并发活动,实现信息的存取和保护。

它提供用户接口,使用户获得良好的工作环境,为用户扩展新的系统功能提供软件平台,操作系统使整个计算机系统实现了高效率和高度自动化。

操作系统的主要功能是管理系统的软、硬件资源,它们可归为四类:

处理机管理、存储管理、设备管理和文件管理等。

6.操作系统的主要特征是什么为什么会具有这样的特征

答:

操作系统的特征有:

并发性,共享性,不确定性,虚拟性。

其中并发性和共享性是其主要特征。

由于操作系统建立并控制着多个并发执行的进程,完成着同时进行的几项任务,进程之间相互制约,并且共享着系统的某些资源,进程的这些活动便形成了操作系统的主要特征。

并且许多事件的产生是随机的,而且事件产生的先后顺序又有许多可能组合,但操作系统必须能处理任何一种可能的事件序列。

所以,操作系统又具有不确定性。

另外,操作系统中还广泛使用了虚拟技术,使得配备了操作系统之后的系统在资源的使用上更加自由和灵活,不受物理设备数量的限制。

7.设一计算机系统有输入机一台、打印机两台,现有二道程序同时投入运行,且程序A先开始运行,程序B后运行。

程序A的运行轨迹为:

计算50ms,打印信息100ms,再计算50ms,打印信息100ms,结束。

程序B运行的轨迹为:

计算50ms,输入数据80ms,再计算100ms,结束。

要求:

(1)用图画出这二道程序并发执行时的工作情况。

(2)说明在二道程序运行时,CPU有无空闲等待若有,在哪段时间内等待为什么会空闲等待

(3)程序A、B运行时有无等待现象在什么时候会发生等待现象

答:

(1)工作情况如图。

程序A

 

程序B

 

时间

(2)CPU有空闲等待,它发生在100ms150ms时间段内,此时间段内程序A与程序B都在进行I/O操作。

(3)程序A无等待现象,程序B在0ms50ms时间段与180ms200ms时间段内有等待现象。

进程管理习题

1现代操作系统中为什么要引入“进程”概念它与程序有什么区别

答:

之所以要引入进程的概念,是因为在一些可以并发的程序段之间,存在着某种相互制约的关系,每个程序段的执行不仅要受到其它程序执行的制约,而且还要动态地依赖系统资源的分配情况,因此每个可以并发执行的程序段就会因外界条件的限制而不能运行,被迫处于阻塞状态。

仅用程序的概念无法表示程序的走走停停以及程序运行过程中对资源的竞争现象,因此需要采用一种动态的概念描述并发程序这种走走停停的现象,这就产生了进程的概念。

进程和程序的区别:

(1)进程是程序的执行过程,是动态的过程,属于一种动态概念。

程序是一组有序静态指令和数据的集合,用来指示处理机的操作,是一种静态概念。

(2)从结构上看,每个进程实体是由程序段和相应的数据段两部分构成,并且进程结构中还要包含PCB,即进程控制块。

(3)一个进程可以涉及到一个或几个程序的执行;反之,同一程序可以对应多个进程,即同一个程序段可以在不同数据集合上运行,可以构成不同的进程。

(4)进程能真实地描述并发执行的过程,而程序仅仅是静态指令堆积的序列。

(5)进程有可创建其他进程的功能,而一般的程序不具有创建其它程序的功能。

(6)每一个程序都是在一个进程现场中运行的。

2叙述进程的并发性和制约性。

答:

并发性是进程的重要特征。

即多道程序中多个进程同时向前推进的过程,没个进程总是与其它进程并发地执行的。

进程的制约性是指一个进程的运行受到另一进程的制约。

比如有的进程可能正在等待另一进程的计算结果而无法运行,或者进程所需的资源被别的进程占有而无法运行。

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,emptyR,fullR,emptyP,fullP:

semaphere;

inR,outR,inP,outP:

integer;

buffer:

array0..k-1ofitem;

bufferP:

array0..k-1ofitem;

procedureR

begin

whiletruedo

begin

输入数据data1;

P(emptyR);

P(mutexR);

bufferR(inR):

=data1;

inR:

=(inR+1)mod(k);

V(mutexR);

V(fullR);

end

end;

procedureM

begin

whiletruedo

begin

P(fullR);

P(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);

end

end;

procedureP:

begin

whiletruedo

begin

P(fullP);

P(mutexP)

data3:

=bufferP(outP);

outP:

=(outP+1)mod(k);

V(mutexP);

V(emptyP);

打印data3;

end

end;

begin

seminitinal,1;,1;,k;,0;,k;,0);

inR:

=0;outR:

=0;

inP:

=0;outP:

=0;

cobegin

R;

M;

P;

coend

end.

(2)单缓冲区,大小为k

var

empty,full,ok,mutex:

semaphere;

inR,outR,inP,outP:

integer;

buffer:

array0..k-1ofitem;

procedureR:

begin

whiletruedo

begin

输入数据data1;

P(empty);

P(mutex);

buffer(inR):

=data1;

inR:

=(inR+1)mod(k);

V(mutex);

V(full)

end

end;

procedureM:

begin

whileturedo

begin

P(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);

end

end;

proedureP:

begin

whileturedo

begin

P(ok);

P(mutex);

data3:

=buffer(outP);

outP:

=(outP+1)mod(k);

V(mutex);

V(empty);

打印data3;

end;

end

begin

seminitial,k;,0;,0;,1);

inR:

=0;outR:

=0;

inP:

=0;outP:

=0;

cobegin

R;

M;

P;

coend

end.

5在生产者与消费者问题的算法中,交换两个V操作的次序会有什么结果交换两P操作的次序呢说明理由。

答:

交换两P操作的次序有可能造成死锁。

例如,当无空缓冲区时,如果此时生产者先做互斥操作,即:

P(mutex),然后才做同步操作P(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操作描述它们之间的同步关系。

答:

var

mutexA,emptyA,fullA,mutexC,emptyC,fullC:

semaphere;

i,j,a,b:

integer;

bufferA:

array0..n-1ofitem

bufferC:

array0..m-1ofitem;

procedureproduceA:

生产者进程A

begin

whileturedo

begin

Producenextproduct;

P(emptyA);

P(mutexA);

bufferA(i):

=products;

i:

=(i+1)mod(n);

V(mutexA);

V(fullA)

end

end

procedureconsumer_procedurerB:

消费者和生产者进程B

begin

whileturedo

begin

P(fullA);

P(mutexA);

Goods:

=buffer(j);

j:

=(j+1)mod(n);

V(mutexA);

V(emptyA);

ConsumegoodsandProducenextproductC;

P(emptyC);

P(mutexC);

BufferC(a):

=productC;

a:

=(a+1)mod(m);

V(mutexC);

V(fullC)

end

end;

procedureconsumerC;消费者C进程

begin

whileturedo

begin

P(fullC);

P(mutexC);

Goods:

=bufferC(b);

b:

=(b+1)mod(m);

V(mutexC);

V(emptyC);

Consumeproduct;

end

end;

begin

Seminitsal,1;,1;,n;,m;,0;,0);

i:

=0;j:

=0;a:

=0;b:

=0;

cobegin

produceA

consumer_procedurerB;

consumerC

coend

end.

 

7有一阅览室,共有100个座位。

读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名。

读者离开时要消掉登记内容。

试用P、V操作描述读者进程的同步结构。

答:

var

mutex:

semaphere;信号量,用于互斥

full:

semaphere;信号量,用于同步

table:

array0..n-1ofitem;登记表

procedurereader;读者进程

begin

P(full);

P(mutex);

Register_name(table);

V(mutex);

Reading;

P(mutex);

Delet_name(table);

V(mutex);

V(full)

end;

begin

seminitsal,1;,100);初始化

cobegin

reader;

reader;

...

coend

end.

8.引入线程的目的是什么

答:

引入线程的目的是提高程序执行的并行度。

9引入管程的目的是什么

答:

引入管程的目的把分散的临界区集中起来管理,为每个可共享的资源设立一个专门的机构来统一管理各进程对该共享资源的访问。

这样使互斥操作更安全,既便于系统管理共享资源,又能保证互斥访问。

10用管程实现读者与写者关系。

管程部分描述如下:

monitorrw;

conditionwrt;

varreadcount:

integer;

procedureentryread_start();

begin

readcount:

=readcount+1;

end;

procedureentryread_finish();

begin

readcount:

=readcount-1;

ifreadcount=0thensingal(wrt)

end;

procedureentrywrite();

begin

ifreadcount>0thenwait(wrt);

performwriting;

end

begin

readcount:

=0

end

end;

主程序部分:

procedurewritter:

begin

repeat

();

untilfalse;

end

procedurereader:

begin

repeat

();

performreading;

();

untilfalse;

end

cobegin

reader;

writter;

coend.

11何谓进程通信

答:

进程通信是指进程之间的信息交换。

12消息通信机制中应设置哪些基本通信原语

答:

应设置send(A)(发送消息)原语,A是原语的参数,表示发送区的起始地址。

receive(B)(接受消息)原语,B是接受进程提供的接收区起始地址。

13何谓死锁举例说明之。

答:

两个以上的进程相互等待一个永远不可能发生的条件而无法向前推进,这种僵局称为死锁。

例如:

如图所示的单行道上的交通阻塞。

 

存储管理习题

1.何谓名字空间何谓地址空间何谓存储空间

答:

名字空间:

程序中符号名的集合。

地址空间:

在目标模块中的地址的集合。

存储空间:

实际内存地址的集合。

汇编编译地址重定位

连接

名字空间地址空间存储空间

2.在分区分配方案能用于实现虚拟内存吗

答:

不能,因为虚拟存储最重要的特点就是离散性,而分区分配方案只适用于连续分配方式,即全部程序都放在内存,而不允许程序运行时一部分在内存、一部分在外存。

所以,无法提供内存的逻辑扩充功能。

3.为什么要引入动态重定位如何实现

答:

动态重定位便于程序浮动。

由于在目标模块装入内存时无需对其进行任何修改,因而装入之后再搬迁也不会影响其正确执行。

实现时,需要采用动态重定位硬件机构:

重定位寄存器和加法器。

如图所示。

4.请详细说明,引入分页存储管理是为了满足用户哪几方面的需求

答:

1、为了充分利用空闲的存储空间,采取内存的不连续分配;

2、为了消除外零头,采用等分内存;

3、为了程序的浮动方便,采用动态地址重定位;

4、为了从逻辑上扩充内存,按照逻辑地址空间来访问程序,采用了虚拟存储管理。

5.为什么说分段系统较之分页系统更易于实现地址变换

答:

因为分段是按照逻辑功能分段,这样在地址变换时,针对的是一个完整的逻辑功能段,所以可以在实际需要时进行动态连接。

而分页则是按照物理页的大小划分所以一定要事先将所有的页面联接成一个整体后才能实现地址变换。

6.分页存储管理中有哪几种常用的页面置换算法试比较它们的优缺点。

答:

(1)先进先出(FIFO)

(2)最近最少使用的淘汰算法(LRU)

(3)最近不经常使用的淘汰算法(LFU)

(4)最优算法(OPT)

FIFO算法最简单,但效率不高。

LRU的近似算法和LFU是较为实用的算法,效果较好,实现也不难。

OPT算法是最佳算法,但并不实用,因为要跟踪各页面方可预测未来,而这种预测往往是困难的。

输入/输出系统习题

1.设备管理的目标和功能是什么

答:

设备管理的主要目标是:

1)选择和分配输入/输出设备以便进行数据传输操作;

2)控制输入/输出设备和CPU(或内存)之间交换数据;

3)为用户提供一个友好的透明接口,把用户和设备的硬件特性分开,使得用户在编制应用程序时不必涉及具体设备,系统按用户要求控制设备工作;

4)提高设备和设备之间、CPU和设备之间以及进程和进程之间的并行操作度,以使操作系统获得最佳效率。

设备管理程序的主要功能是:

1)提供和进程管理系统的接口。

当进程申请设备资源时,该接口将进程的请求转送给设备管理程序;

2)进行设备分配;

3)实现设备和设备、设备和CPU等之间的并行操作;

4)进行缓冲区管理。

2.数据传送控制方式有哪几种试比较它们各自的优缺点。

答:

外部设备和内存之间的常用数据传送控制方式有四种。

它们是:

1)程序直接控制方式;其优点是控制简单,所需硬件支持少。

其缺点是CPU和外部设备只能串行工作,CPU的利用率低;不能实现设备之间的并行工作;只适用于那些CPU执行速度较慢,而且外部设备较少的系统。

2)中断控制方式;其优点是所需硬件支持较少,与程序直接控制方式相比,使CPU的利用率大大提高且能支持多道程序和设备的并行操作。

其缺点是消耗的CPU处理时间较多;随着外部I/O设备的增多和速度的提高,可能会造成CPU无法响应中断和出现数据丢失现象。

3)DMA方式;其优点是I/O速度较快,大大减少了CPU进行中断处理的次数;排除了因并行操作设备过多时CPU来不及处理或因速度不匹配而造成数据丢失等现象。

其缺点是所需硬件较多;多个DMA控制器的同时使用会引起内存地址的冲突并使得控制过程进一步复杂化。

4)通道方式;其优点是I/O速度快,进一步减轻了CPU的工作负担和增加了计算机系统的并行工作能力。

其缺点是控制较复杂,所需的硬件最复杂。

3.何谓通道试画出通道控制方式时的CPU、通道和设备的工作流程图。

答:

通道是一个独立于CPU的专管输入/输出控制的处理机,它控制设备与内存直接进行数据交换。

它有自己的通道指令,可由CPU执行相应指令来启动通道,并在操作结束时向CPU发中断信号。

在运行的时候,通道有自己的总线控制部分,可以进行总线操作。

在有了通道之后,CPU仅需发出一条I/O指令给通道,说明要执行的I/O操作和要访问的I/O设备。

通道接到指令后,就启动相应的通道程序来完成I/O操作。

如下图:

 

4.何谓中断何谓中断处理何谓中断响应

答:

中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后,又返回原来被中断处继续执行的过程。

CPU转去执行相应的事件处理程序的过程称为中断处理。

CPU收到中断请求后转到相应的事件处理程序称为中断响应。

5.何谓开中断何谓关中断何谓中断屏蔽

答:

尽管产生了中断源和发出了中断请求,但CPU内部的处理机状态字PSW的中断允许位已被清除,从而不允许CPU响应中断。

这种情况称为禁止中断,也称为关中断。

CPU禁止中断后只有等到PSW的中断允许位被重新设置后才能接收中断,PSW的中断允许位的设置被称为开中断。

中断屏蔽是指在中断请求产生之后,系统用软件方式有选择地封锁部分中断而允许其余部分的中断仍能得到响应。

6.何谓陷入何谓软中断试述中断、陷入和软中断之间异同。

答:

陷入是指中断指令造成中断;而由程序运算引起的各种错误,如地址非法等称为异常。

软中断是通信进程之间用来模拟硬中断的一种信号通信方式,它的处理过程类似于中断过程,但不需要通过硬件来产生中断请求。

中断则是指外部设备发出的中断;

中断与陷入除在优先级设置方面有区别之外,还有如下区别:

(1)陷入通常由处理机正在执行的现行指令引起,而中断则是由与现行指令无关的中断源引起的。

也即:

对处理机来说,陷入是主动的,而中断是被动的。

(2)陷入处理程序提供的服务为当前进程所用,而中断处理程序提供的服务则不是为了当前进程的。

(3)CPU在执行完

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2