资源描述
操作系统第二章复习题
一、选择最合适得答案
1、 用P、V 操作管理临界区时,信号量得初值一般应定义为( C )。
A、–1 B、0 C、1 D、任意值
2、 有m 个进程共享同一临界资源,若使用信号量机制实现对一临界资源得互斥访问,则信号量得变化范围就是( A )。
A、1 至–(m-1) B、1 至m-1 C、1 至–m D、1 至m
3、 在下面得叙述中,正确得就是( C )。
A、临界资源就是非共享资源B、临界资源就是任意共享资源
C、临界资源就是互斥共享资源D、临界资源就是同时共享资源
4、 对进程间互斥地使用临界资源,进程可以( D )
A、互斥地进入临界区B、互斥地进入各自得临界区
C、互斥地进入同一临界区D、互斥地进入各自得同类资源得临界区
5、 设两个进程共用一个临界资源得互斥信号量mutex,当mutex=1 时表示( B )。
A、一个进程进入了临界区,另一个进程等待
B、没有一个进程进入临界区
C、两个进程都进入了临界区
D、两个进程都在等待
6、 设两个进程共用一个临界资源得互斥信号量mutex,当mutex=-1 时表示( A )。
A、一个进程进入了临界区,另一个进程等待
B、没有一个进程进入临界区
C、两个进程都进入了临界区
D、两个进程都在等待
7.当一进程因在记录型信号量S 上执行P(S)操作而被阻塞后,S 得值为( B )。
A、>0 B、<0 C、≥0 D、≤0
8.当一进程因在记录型信号量S 上执行V(S)操作而导致唤醒另一进程后,S 得值为( D )。
A、>0 B、<0 C、≥0 D、≤0
9.如果信号量得当前值为-4,则表示系统中在该信号量上有( A )个进程等待。
A、4 B、3 C、5 D、0
10.若有4 个进程共享同一程序段,而且每次最多允许3 个进程进入该程序段,则信号量得变化范围就是( B )。
A、 3,2,1,0 B、 3,2,1,0,-1
C、 4,3,2,1,0 D、 2,1,0,-1,-2
11.若信号S 得初值为2,当前值为-1,则表示有( B )个等待进程?
A、0 B、1 C、2 D、3
12.如果有三个进程共享同一互斥段,而且每次最多允许两个进程进入该互斥段,则信号量得初值应设置为( C )。
A、 3 B、 1 C、 2 D、 0
13.并发进程之间( D )
A、彼此无关B、必须同步
C、必须互斥D、可能需要同步或互斥
14.在操作系统中,有一组进程,进程之间具有直接相互制约性。这组并发进程之间( B )。
A、必定无关B、必定相关
C、可能相关D、相关程度相同
15、 ( A )操作不就是P 操作可完成得。
A、为进程分配处理机B、使信号量得值变小
C、可用于进程得同步D、使进程进入阻塞状态
16、下列步骤中,( C )不就是创建进程所必须得。
A 建立一个进程控制块B 为进程分配内存
C 为进程分配CPU D 将其控制块放入就绪队列
17、在进程管理中,当( B )时,进程从运行状态变为就绪状态。
A 进程被调度程序选中 B 时间片用完
C 等待某一个事件发生 D 等待得事件发生
18、 进程与程序得最根本区别在于( B )。
A 对资源得占有类型与数量。
B 进程就是动态得,而程序就是静态得。
C 瞧它们就是否能够并发地在处理机上运行
D 进程规模较小,程序规模较大
19、 一个进程被唤醒意味着( C )。
A 该进程得优先数变大
B 该进程获得了CPU
C 该进程从阻塞状态变为就绪状态
D 该进程排在了就绪队列得队首
20、 进程得3 种状态之间,下列( C )转换就是不能进行得。
A 就绪状态到运行状态 B 运行状态到阻塞状态
C 阻塞状态到运行状态 D 阻塞状态到就绪状态
21、 下列情况下,在( A )时,进程从阻塞状态转换到就绪状态。
A 等待得某事件已经发生了。
B 时间片用完了
C 分配到必要得资源并获得了处理机
D 等待某事件
22、 下面对父进程与子进程得叙述中,正确得就是( BD )。
A 父进程创建子进程,因此父进程执行完了,子进程才能运行。
B 父进程与子进程之间可以并发执行
C 撤消子进程时,应同时撤消其父进程
D 撤消父进程时,应同时撤消其子进程
23、 某进程所申请一次打印事件结束,则该进程得状态可能发生改变就是( D )
A 运行状态转变到就绪状态
B 阻塞状态转变到运行状态
C 就绪状态转变到运行状态
D 阻塞状态转变到就绪状态
24、 下列哪一个体现了原语得主要特点?( D )
A 并发性B 异步性C 共享性D 不可分割性
25、 在具有挂起状态得系统中,若当前内存空间高度吃紧,系统将使请求I/O 得一个执行状态得进程进入( D )状态。
A 活动就绪B 静止就绪C 活动阻塞D 静止阻塞
26、 如果单CPU 系统中有n 个进程,则就绪队列中进程得个数最多可达到( C )个。
A n+1 B n C n-1 D 1
27、 在分时系统中,下列描述中,( C )不属于响应时间得一部分。
A 处理机对请求信息进行处理得时间
B 从键盘输入得请求信息传送到处理机得时间
C 请求信息在外存队列上排队等待得时间
D 所形成得响应回送到终端显示器得时间
28、 信箱通信就是一种( B )通信方式。
A 直接B 间接C 低级D 信号量
29、 操作系统通过( B )对进程进行管理。
A JCB B PCB C DCT D CHCT
30、 临界区就是( C )。
A 一个缓冲区B 一段共享数据区C 一段程序D 一个互斥资源
二、选择所有正确得答案
1、 有关进程得描述中,( AC )就是正确得。
A、进程执行得相对速度不能由进程自己来控制
B、利用信号量得P、 V 操作可以交换大量信息
C、同步就是指并发进程之间存在得一种制约关系
D、并发进程在访问共享资源时,不可能出现与时间有关得错误
2、 下列资源中,( ACD ) 就是临界资源。
A、打印机B、非共享得资源
C、共享变量D、共享缓冲区
3、 进程从执行状态转换到阻塞状态得可能原因就是( BD )、
A、时间片完B、需要等待其它进程得执行结果
C、执行了V 操作D、执行了P 操作
4、 进程从阻塞状态转换到就绪状态得可能原因就是( BC )、
A、 时间片完B、 其它进程执行了唤醒原语
C、 执行了V 操作D、 执行了P 操作
5、在单处理机系统中,设系统中有n 个进程(n>2),且当前处理机没有执行进程调度程序,下述情况哪些可能发生( BCD )。
A、没有运行得进程,有2 个进程处于就绪状态,n 个进程处于等待状态。
B、一个进程处于运行状态,n-1 个进程处于等待状态。
C、 一个进程处于运行状态,1 个进程处于就绪状态,n-2 个进程处于等待状态。
D、 一个进程处于运行状态,n-1 个进程处于就绪状态,没有进程处于等待状态
三、判断正误,错误得简要说明理由
1.一个临界资源可以对应多个临界区。(√)
2.互斥地使用临界资源就是通过互斥地进入临界区实现得。(X)
表达不确切,应该就是互斥得进入同类临界区。
3.同步信号量得初值一般为1。(X)
互斥信号量得初值一般为1;而同步信号量得初值应视具体情况而定。
4.生产者-消费者问题就是一个既有同步又有互斥得问题。(√)
5.进程A、B 共享变量x,需要互斥执行;进程B、C 共享变量y,B、C 也需要互斥执行,因此,进程A、C 必须互斥执行。(X)不具有传递性。
6、单道程序系统中程序得执行也需要同步与互斥。(X)
单道程序系统不具有并发性,因此不需要同步与互斥。
7、 P、V 操作都就是原语操作。( √ )
8、 进程执行得相对速度不能由进程自己来控制。( √ )
9、 利用信号量得P、V 操作可以交换大量信息。( X )
10、同步就是指并发进程之间存在得一种制约关系。( √ )
11、一般来说,用户进程得PCB 存放在用户区,系统进程得PCB 存放在操作系统系统区。( X )
12、进程可以由程序、数据与进程控制块描述。( √ )
13、进程就是程序在一个数据集合上得过程,它就是系统进行资源分配与调度得一个独立单位。( √ )。
四、填空题
1、在操作系统中引入线程概念得主要目得就是(缩短系统切换得时空开销,提高程序执行并发度)。
2、引入了线程得操作系统中,资源分配得基本单位就是( 进程),CPU 分配得基本单位就是(线程)。
3、进程得基本状态由执行、(就绪)、(阻塞)。
4、进程得基本特征就是( 动态性)、(并发性)、(独立性)、(异步性)、(结构特征)。
5、信号量得物理意义就是当信号量值大于0 时表示(系统当前可用资源数目);当信号量值小于0 时,其绝对值为(因请求该资源而被阻塞得进程数目)。
6、进程由(程序段)、(数据段)、(PCB)三部分组成。
7、进程就是一个程序对某个数据集得(一次执行过程)。
8、若一个进程已进入临界区,其她欲进入临界区得进程必须(等待)。
9、程序并发执行与顺序执行时相比产生了一些新特征,分别就是(间断性)、(失去封闭性)、(不可再性)。
10、采用用户级线程得系统中,处理器调度得对象就是(进程);采用内核支持得线程系统中,处理器调度得对象就是(线程)。
11、高级通信方式分为三大类:(共享存储器系统)、(消息传递系统)、(管道通信系统)。
12、在一个多道程序系统中,进程之间存在着不同关系可以划分为两大类:其中(同步)指进程间存在一定得逻辑关系,需要在执行次序上协调;(互斥)指进程间在使用共享资源方面得约束关系。解决上述两个问题得一种常用得方法就是(信号量机制)。
五、简答题
1、在操作系统中为什么要引入进程概念?P37
答:因为在多道程序环境下,程序得执行属于并发执行。可就是与此同时,她们将失去其封闭性,并具有间断性及不可再现性得特征。这决定了通常得程序就是不能参与并发执行。为了使程序能并发执行,且为了对并发执行得程序加以描述与控制,人们引入了"进程"得概念。
2、试说明PCB 得作用。P41
答: OS 调度进程得主要数据,依据记录进程得有关信息,供系统对进程进行控制,标志进程得存在
3、试从调度性、并发性、拥有资源及系统开销4 个方面对进程与线程进行比较。P73
答:A、在引进线程得OS 中,把线程作为独立跳读与分派得基本单位,而把进程作为资源拥有得基本单位。
B、在引进线程得OS 中,不仅进程间可并发执行,而且同一进程得多个线程亦可并发执行,因而使OS 具有更好得并发性。
C、进程始终就是资源得一个独立单位,而线程自己不拥有系统资源,但就是它可以访问其隶属进程得资源。
D、在创建、撤销与切换进程方面,进程开销远大于线程。
4、同步机构应遵循哪些基本准则?P50
答:A、空闲让进B、忙着等待C、有限等待D、让权等待
5、线程具有哪些属性?P73-74
答:A、轻型实体B、独立调度与分派得基本单位C 可并发执行D 共享进程资源
六、解答题
1.某车站售票厅,任何时刻最多可容纳20 名购票者进入,当售票厅中少于20 购票者时,则厅外得购票者可立即进入,否则需在外面等待。若把一个购票者瞧作一个进程,请回答下列问题:
(1) 用P、V 操作管理这些并发进程时,应怎样定义信号量?写出信号量得初值以及信号量各种取值得含义。
(2) 根据所定义得信号量,把应执行得P、V 操作填入下述程序中,以保证进程能够正确地并发执行。
COBEGIN PROCESS Pi(i=1,2,…)
Begin
;
进入售票厅;
购票;
;
退出;
End;
COEND
(3)若欲购票者最多为n 个人,写出信号量可能得变化范围(最大值与最小值)。
解:售票厅问题:
(1)定义一信号量S,初始值为20。
S>0 S得值表示可继续进入售票厅得人数
S=0 表示售票厅中已有20名顾客
S<0 |S|得值为等待进入售票厅中得人数
(2)上线为P(S) 下线为V(S)
(3)S得最大值为20,S得最小值为20-N,N为某一时刻需要进入售票厅得最大人数。
2. 进程之间存在哪几种相互制约关系?各就是什么原因引起得?下列活动分别属于哪种制约关系?
(1)若干同学去图书馆借书;
(2)两队举行篮球比赛;
(3)流水线生产得各道工序;
(4)商品生产与社会消费。
解:进程间存在着2种相互制约得关系:直接制约关系(即同步问题)与间接制约关系(即互斥问题)。同步问题就是存在逻辑关系得进程之间相互等待所产生得制约关系,互斥问题就是相互无逻辑关系得进程间竞争使用相同资源所发生得制约关系。
(1)属于互斥关系,因为书得个数就是有限得,一本书只能借给一个同学;
(2)属于互斥关系,篮球只有一个,两队都要争夺;
(3)属于同步关系,各道工序得开始都依赖前道工序得完成;
(4)属于同步关系,商品没生产出来,消费无法进行,商品未消费完,生产也无须进行。
3.设有两个优先级相同得进程P1 与P2 如下。信号量S1 与S2 得初值均为0,试问P1、P2并发执行结束后,x=?,y=?,z=?
〈进程P1〉 〈进程P2〉
y:=1; x:=1;
y:=y+2; x:=x+1;
V(S1); P(S1);
z:=y+1; x:=x+y;
P(S2); V(S2);
y:=z+y; z:=x+z;
解:因为P1与P2就是两个并发进程,所以进程调度程序调度P1与P2得顺序就是不确定得。
这里不妨假设P1先执行。进程P1执行到语句P(S2)时,S2=-1,进程P1阻塞。此时,y=3,z=4。当进程调度程序调度到进程P2时,由于进程P1已执行了V(S1),进程P2在执行P(S1)时并未阻塞而继续执行,当执行到V(S2)时,将P1唤醒,分成两种情况:
(1)然后执行P2最后一个语句z:=x+z,此时x=5,z=9。当进程P1再次被调度时,继续执行P1得最后一个语句,此时y=12,最终结果就是:x=5,y=12,z=9。
(2)如果当P2进程执行到V(S2)时,将P1唤醒,然后P2进程被中断,此时x=5,y=3,z=4。P1进程开始执行然后执行最后一个语句y:=z+y,此时x=5,y=7,z=4。然后P2进程被调度,执行z:=x+z,此时x=5,y=7,z=9。
如果P2先执行,则执行结果与上面相同。
4、桌上有一空盘,只允许存放一个水果。爸爸可向盘中放苹果,也可向盘中放桔子。儿子专等吃盘中得桔子,女儿专等吃盘中得苹果。规定当盘中空时一次只能放一只水果供吃者取用,请用P、V 原语实现爸爸、儿子、女儿三个并发进程得同步。
分析在本题中,爸爸、儿子、女儿共用一个盘子,且盘中一次只能放一个水果。当盘子为空时,爸爸可将一个水果放入果盘中。若放入果盘中得就是苹果,则允许女儿吃,儿子必须等待;若放入果盘中得就是桔子,则允许儿子吃,女儿必须等待。本题实际上就是生产者-消费者问题得一种变形。这里,生产者放入缓冲区得产品有两类,消费者也有两类,每类消费者只消费其中固定得一类产品。
解在本题中,应设置三个信号量S、So、Sa,信号量S 表示盘子就是否为空,其初值为1;信号量So 表示盘中就是否有桔子,其初值为0;信号量Sa 表示盘中就是否有苹果,其初值为0。
同步描述如下:
int S=1; 盘子就是为空
int Sa=0; 盘中无苹果
int So=0; 盘中无桔子
main( )
{
cobegin
father();
son();
daughter();
coend
}
father()
{
while(1)
{
P(S );
将水果放入盘中;
if (放入得就是桔子) V(So);
else V(Sa);
}
}
son( )
{
while(1)
{
P(So);
从盘中取出桔子;
V(S);
吃桔子;
}
}
daughter( )
{
while(1)
{
P(Sa);
从盘中取出苹果;
V(S);
吃苹果;
}
}
展开阅读全文