第二章习题1

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

15
独木桥问题
3、某条河上只有一座独木桥(东西向),以便行人过河。现在 河的两边都有人要过桥,按照下面的规则过桥,为了保证过 桥安全,请用P、V操作分别实现正确的管理。 规则:(1)每次只有一个人通过桥。 (2)同一方向的可连续过桥,某方向有人过桥时另一方向 的人要等待。
2017/10/10
16
(1) var mutex:semaphore:=1; begin parbegin Process(E-W)i(i=1,2,…) begin P(mutex); 过桥; V(mutex); end; parend; end;
2017/10/10
1
习题
1、对一个可执行程序文件,该程序与执行它的进程是 ( 一对多 )的关系。 2、在单CPU系统中实现并发技术后( A ) A.进程间在一个时间段内同时执行,CPU与外设并行工作。 B.进程间在一个时刻同时执行,CPU与外设并行工作。 C.进程间在一个时间段内同时执行,CPU与外设串行工作。 D.进程间在一个时刻同时执行,CPU与外设串行工作。 3、从静态角度上看,进程是由( PCB(或进程控制块) )、 ( 程序段 )、( 数据段 )三部分组成。 4、正在执行的进程由于用完其时间片而被暂停执行,此时进程 应从执行状态变成为( 就绪 )状态。 2017/10/10
2017/10/10
Process(W-E)j(j=1,2,…) begin P(mutex); 过桥; V(mutex); end;
17
(2) var S,S1,S2:semaphore:=1,1,1; rc1,rc2:integer:=0,0; begin parbegin Process (E-W)i (i=1,2,…) begin P(S1); rc1:=rc1+1; if rc1=1 then P(S); V(S1); 过桥; P(S1); rc1:=rc1-1; if rc1=0 then V(S); V(S1); end; parend; 2017/10/10 end;
5
17、在直接通信方式中,系统通常提供的两条通信原语如下, 请选择适当的参数填入。 B D A D send(________,_______);receive(________,_______) A.Sender B.receiver C.text D.message E.mailbox 18、下列原语中,能进行进程通信的原语是( C )和( D ) A.挂起/撤销 B.创建/撤销 C.P、V操作 D.锁/开锁 19、消息缓冲队列通信中的临界资源是( B ) A.队列中的某个消息缓冲区 B.整个消息缓冲队列 C.信箱 D.管道 20、处于执行状态中的进程若同时发生了下列两种情况:(a) 对某信号量执行P操作后,其结果为负。(b)时间片到了中断 发生。则该进程将由执行状态变迁为( A )状态。 A.阻塞 B.就绪 C.阻塞或就绪 D.不定
多项选择
c,e 不会出现。 1.在进程调度状态转换中, a.就绪→ 运行 b.运行→ 阻塞 c.就绪→ 阻塞 d.阻塞→ 就绪 e.阻塞→ 运行 2.一个进程从运行状态到阻塞状态,其原因可能是 a.进程调度程序的重新调度 b.现运行的进程时间片用完 c.现运行的进程正地等待I/O操作完成 d.现运行的进程的I/O操作已完成 e.现运行的进程执行了wait(S)操作
2017/10/10 6
单项选择
21.在多进程系统中,为了保证共享变量的完整性,各进程应 互斥进入临界区。所谓临界区是指 d 。 a. 一个缓冲区 b. 一段数据区 c. 同步机制 d. 一段程序 22.一个进程是 c 。 a. 由处理机执行的一个程序 b. 一个独立的程序加数据集 c. PCB结构与程序和数据的组合 d. 一个独立的程序
2017/10/10
21
答:var S1,S2:semaphore:=1,0; begin paerbegin Process A Process B begin begin repeat repeat P(S1); P(S2); 拣黑子; 拣白子; V(S2); V(S1); until false; until false; end; end; parend; 2017/10/10 end;
2017/10/10
11
1、设有无穷多个缓冲区和无穷多个信息,A进程把信息逐个地 写入每个缓冲区,B进程则逐个地从缓冲区中取出信息。 试问:(1)两个进程之间的制约关系。 (2)用P、V操作写出两进程的同步算法,并给出信号量的初值。 (3)指出信号量的变化范围和其值的含义。
2017/10/10
12
2017/10/10 19
T
答:var S,SK,T,TL:semaphore:=1,1,1,1; begin parbegin Process ST Process TS begin begin P(S); P(T); P(SK); P(TL); 通过SK; 通过TL; 进入M; 进入M; V(SK); V(TL); P(TL); P(SK); 通过LT; 通过KS; V(TL); V(SK); V(S); V(T); end; end; parend; 2017/10/10 end;
2017/10/10
c,e

10
填空
1.当系统创建进程时,系统就为其建立一个 PCB ,当进程被 撤消时就将其回收。 2.当多个进程等待分配处理机时,系统按一种规定的策略从多 个处于 就绪 状态的进程中选择一个进程,让它占有处理机, 运行 被选中的进程进入 ___ 状态。 3.临界区是指 进程中访问临界资源的那段代码_。 4.若信号量的当前值为-4,则表示系统中在该信号量上有 ______ 4 个等待进程。 5.实现一个管程时必须考虑的3个主要问题 互斥,同步,条件变量 是 。
2017/10/10 3
10、为实现消息缓冲队列通信,在PCB中应增加( 消息队列首 指针 )、 ( 消息队列互斥信号量 )和( 消息队列资源信号量 ) 三个数据项。 11、若记录型信号量S的初值为2,当前值为-1,则表示有( B ) 等待进程。 A.0个 B.1个 C.2个 D.3个 12、当( B )时,进程从执行状态转变为就绪状态。 A.进程被调度程序选中 B.有高优先级进程来 C.等待某一事件 D.等待的事件发生 13、在进程状态转换时,下列( D )转换是不可能发生的。 A.就绪态—>执行态 B.执行态—>就绪态 C.执行态—>阻塞态 D.阻塞态—>执行态
2、购物问题。某超级市场,可容纳100人同时购物,入口处备 有篮子,每个购物者可持一个篮子入内购物,出口处结帐,并 归还篮子(出、入口(2个口)仅容纳一人通过),请用P、V操 作完成购物同步算法。
2017/10/10
14
答:var
S,mutex1,mutex2:semaphore; S:=100; mutex1:=1; mutex2:=1; begin parbegin process Pi begin P(S); P(mutex1); 进入口处,取一只篮子; V(mutex1); 选购商品; P(mutex2); 结帐,并归还篮子; V(mutex2); V(S); end; 2017/10/10parend; end;
Process (W-E)j (j=1,2,…) begin P(S2); rc2:=rc2+1; if rc2=1 then P(S); V(S2); 过桥; P(S2); rc2:=rc2-1; if rc2=0 then V(S); V(S2); end;
18
4、小路问题。在两地之间有一条弯曲小路,其中S到T的一段 路每次只允许一辆自行车通过,但中间有一个小的“安全 岛”M(同时允许两辆自行车停留),可供两辆自行车在从两 端进入小路情况下错车使用,如图,试设计一个算法使来往 的自行车均可顺利通过。 K M L S
2017/10/10 4
14、下列各项工作步骤中,( B )不是创建进程所必需的步 骤。 A.申请一个PCB B.阻塞进程 C.为进程分配内存等必要资源 D.将PCB连接入进程就绪队列 15、在操作系统中,死锁出现指的是( C ) A.计算机发生了重大故障 B.资源数远远少于进程数 C.若干进程因竞争资源而无限等待其他进程释放已占有的资源 D.进程同时申请的资源数超过资源总数。 16、下列关于进程的叙述中,正确的是( A ) A.进程获得CPU而运行是通过调度得到的。 B.优先级是进行进程调度的重要依据,一旦确定不能改变。 C.在单CPU系统中,任一时刻都有1个进程处于运行状态。 D. 进程申请CPU得不到满足时,其状态变为等待状态。 2017/10/10
2
5、引入进程,可带来( 资源利用率的提高 )和( 系统吞吐量的 增加 )的好处,但却增加了系统的( 时间 )和( 空间 )开销。 6、临界区是指进程中用于(访问临界资源)的那段代码。 C 是一种只能由P和V操作所改变的整型变量,(1)可用于 7、(1) D 和(3),(2) A 实现进程的(2) 是指排他性地访问临界资源。 (1)A.控制变量 B.锁 C.整型信号量 D.记录型信号量 (2)(3)A.同步 B.通信 C.调度 D.互斥 8、设有6个进程共享同一互斥段,若最多允许有3个进程进入 互斥段,则所采用的信号量的初值为( 3 )。 9、有3个进程共享同一程序段,而每次最多允许两个进程进入 该程序段,若用P、V操作作同步机制,则记录型信号量S的取 值范围为( 2,1,0,-1(或[2,-1]) )。
答:(1)B进程不能超前A进程,但A进程不受B进程的约束。 (2)var S:semaphore; S:=0; begin parbegin process B process A begin begin j:=0; i:=0; M:j:=j+1; L:i:=i+1; P(S); 写入第i个缓冲区; 取出第j个缓冲区信息; V(S); goto M; goto L; end; end; parend; end; (3)信号量S的值域为[-1,∞]中的整数,当S=-1时,表示缓冲区 2017/10/10 没有信息(或B读空),且B要求进一步读出,也即超前A欲读取 13 信息而受阻。
22
2017/10/10
wenku.baidu.com
7
单项选择
23. 并发进程之间 d 。 a. 彼此无关 b. 必须同步 c. 必须互斥 d. 可能需要同步或互斥 24. 实现进程之间同步与互斥的通信工具为 a 。 a. wait和signal操作 b. 信箱通信 c. 消息级冲 d. 高级通信 25. 当 b 时,进程从执行状态转为就绪状态。 a. 进程被调度程序选中 b. 时间片到 c. 等待某一事件 d. 等待的事件发生
2017/10/10
8
单项选择
26. 对两个并发进程,其互斥信号量为mutex;若mutex=0,则 b 表明 。 a. 没有进程进入临界区 b. 有一个进程进入临界区 c. 一个进程进入临界区而另一个进程正处于等待进入 d. 有两个进程进入临界区 27. 支持多道程序设计的操作系统在运行中,不断的选择新进 程运行来实现CPU共享,但其中 d 不是引起操作系统选择新 进程的直接原因。 a. 运行进程的时间片用完 b. 运行进程出错 c. 运行进程要等待某一事件的发生 2017/10/10 9 d. 有新进程进入就绪状态
K M L S
T
20
5、拣棋子问题。生产围棋的工人不小心把相等数量的黑棋子 和白棋子混装在一个箱子里,现要用自动分拣系统把黑棋子 和白棋子分开,该系统由两个并发执行的进程组成,系统功 能如下: (1)进程A专门拣黑子,进程B专门拣白子; (2)每个进程每次只拣一个,当一个进程在拣子时,不允许另一 个进程去拣子; (3)当一个进程拣了一个子(黑或白)以后,必让另一个进程拣 一个子(白或黑);
相关文档
最新文档