第二章 进程管理
一、单项选择题
1、在单一处理机上执行程序,多道程序的执行是在(B)进行的。
A.同一时刻 B. 同一时间间隔内 C.某一固定时刻 D. 某一固定时间间隔内 2、引入多道程序技术后,处理机的利用率( C)。
A.降低了 B. 有所改善 C.大大提高 D. 没有变化,只是程序的执行方便了 3、顺序程序和并发程序的执行相比,( C)。
A.基本相同 C.并发程序执行总体上执行时间快 B. 有点不同 D.顺序程序执行总体上执行时间快
4、单一处理机上,将执行时间有重叠的几个程序称为(C )。 A.顺序程序 B. 多道程序 C.并发程序 D. 并行程序 5、进程和程序的本质区别是(D )。
A.存储在内存和外存 B.顺序和非顺序执行机器指令
C.分时使用和独占使用计算机资源 D.动态和静态特征
6、进程就是程序在并发环境中的执行过程,它是系统进行资源分配和调度的一个基本单位。进程具有[1A]、[2D]、调度性、异步性和结构性等基本特征。进程是一次执行过程,具有生命期体现了进程的[1]特征。进程由程序段、[3B]、[4C]组成,其中[4]是进程在系统中存在的唯一标识。
供选择的答案:
[1][2] :A、动态性 B、静态性 C、共行性 D、并发性 E、可执行性 F、易用性 [3] :A、过程 B、数据 C、进程标识符 D、函数 [4] :A、FCB B、FIFO C、PCB D、JCB
7、进程执行时的间断性,决定了进程可能具有多种状态。进程的基本状态有三种,在分时系统中,当一个进程拥有的时间片到时,则该进程即由[1D]进入[2A]。如果出现因某种原因使得处理机空闲时,则需要从就绪队列中选择一进程,并将处理机分配给它,此时该进程进入[3D],这个过程是由[4C]来完成。供选择的答案:
[1][2][3] :A、就绪状态 B、静止状态 C、阻塞状态 D、运行状态
[4] :A、进程控制程序 B、资源分配程序 C、进程调度程序 D、处理机分配程序 8、为描述进程的动态变化过程,采用了一个与进程相联系的(C ),根据它而感知进程的存在。 A.进程状态字 B. 进程优先数 C.进程控制块 D. 进程起始地址 9、下列进程状态的转换中,哪一个是不正确的( C)。
A. 就绪->运行 B. 运行->就绪 C. 就绪->阻塞 D. 阻塞->就绪 10、下列各项步骤中,哪一个不是创建进程所必须的步骤( B)。 A. 建立一个进程控制块PCB B. 由CPU调度程序为进程调度CPU C. 为进程分配内存等必要的资源 D. 将PCB链入进程就绪队列 11、在下列特性中,哪一个不是进程的特性( C)。 A. 异步性 B. 并发性 C. 静态性 D. 动态性
12、在单处理机系统中,处于运行状态的进程(A )。
A.只有一个 B. 可以有多个 C.不能被挂起 D. 必须在执行完后才能被撤下 13、如果某一进程在运行时,因某种原因暂停,此时将脱离运行状态,而进入( C) A.自由状态 B. 停止状态 C.阻塞状态 D. 静止状态
14、已经获得除( C)以外的所有运行所需资源的进程处于就绪状态。 A.存储器 B. 打印机 C. CPU D. 磁盘空间
1 / 13
15、一个进程被唤醒意味着(B )。
A.该进程重新占有了CPU B.进程状态变为就绪 C.它的优先权变为最大 D.其PCB移至就绪队列的队首 16、进程从运行状态变为阻塞状态的原因是(A)。
A.输入或输出事件发生 B.时间片到 C.输入或输出事件完成 D.某个进程被唤醒 17、在操作系统中同时存在多个进程,它们( C)。 A. 不能共享系统资源 B. 不能调用同一段程序代码
C. 可以共享允许共享的系统资源 D. 可以共享所有的系统资源 18、操作系统中有一组常称为特殊系统调用的程序,它不能被系统中断,在操作系统中称为( B)。 A.初始化程序 B. 原语 C.子程序 D. 控制模块 19. 作业调度的关键在于( B)。
A.选择恰当的进程管理程序 B.选择恰当的作业调度算法 C.用户作业准备充分 D.有一个较好的操作环境
20、进程间的同步与互斥,分别表示了各进程间的( B)。
A.相互独立与相互制约 B.协调与竞争 C.不同状态 D. 动态性与独立性
21、两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的(A )关系。 A.同步 B. 互斥 C.竞争 D. 合作
22、在一段时间内,只允许一个进程访问的资源称为(C )。 A. 共享资源 B. 临界区 C. 临界资源 D. 共享区 23、操作系统中,对信号量S的P原语操作定义中,使进程进入相应阻塞队列等待的条件是(C )。 A. S>0 B. S=0 C. S<0 D. S≤0
24.设有n个进程共享一程序段,而每次至多允许m 个进程进入该程序段(n>m),则所采用的互斥信号量的取值范围可能是(D )
(A)-n到m间的所有整数 (B)0到n-m间的所有整数 (C)m-n到n-m间的所有整数( D)m-n到m间的所有整数
25.设有5个进程共享一互斥段,如果至多允许两个进程同时进入,则所采用的互斥信号量初值是(B )(西安理工大学 2000) (A)5 (B)2 (C)1 (D) 0
26.如果系统中有n个进程,则就绪队列中进程个数最多有(C) (A)n+1 (B)n (C) n-1 (d)1 27.在操作系统中,( B)是竞争和分配计算机系统资源的基本单位。 A程序 B进程 C作业 D用户
28.10个进程共享3台打印机,则与打印机对应的互斥信号量的初值应是( A) A3 B10 C7 D1
29.P、V操作是(A )
A两条低级通信原语 B两条高级通信原语 C两组不同的机器指令 D两条系统调用命令 30.消息缓冲队列中的临界资源是( C) A信箱 B队列中的某个消息缓冲区 C整个消息缓冲队列 D无临界资源存在 31.分时系统中,一运行进程用完了分给它的时间片后,还未完成计算任务,它的状态将变为(A ) A就绪 B阻塞 C运行 D挂起
32.分时系统经常采用的调度算法是( C)
A先来先服务 B优先数算法 C时间片轮转算法 D随机算法
2 / 13
33. 进程是程序的执行过程,可以处于不同的状态,这种性质称作进程的(A ) A、动态性 B、并发性 C、调度性 D、异步性
34、进程的动态、并发等特征是利用( D)表现出来的 A、程序 B、数据 C、程序和数据 D、进程控制块 35. 时间片轮转法进行进程调度是为了( A )。 A. 多个终端都能得到系统的及时响应 B. 先来先服务
C. 优先级较高的进程得到及时响应 D.需要cpu最短的进程先做
36. 某进程在运行过程中需要等待从磁盘上读入数据,此时该进程的状态将(D )。 A.从就绪变为运行 B.从运行变为就绪 C.从等待变为就绪 D.从运行变为等待
37. 在采用微内核结构的操作系统中,处理机调度的基本单位是(B ) A、微指令 B、进程 C、作业 D、线程 38. 用户在一次计算过程中,或一次事物处理中,要求计算机完成所做工作的集合,这是指( C)。 A.进程 B.程序 C.作业 D.系统调用 二、多项选择题
1.下述进程状态转换中,不可能的是(be )
A执行态到就绪态B阻塞态到执行态C阻塞态到就绪态D执行态到阻塞态E就绪态到阻塞态 2.下面列出的是系统选择进程调度算法的准则,其中面向用户的有( cd) A吞吐量高B公平性原则C响应时间快D周转时间短E各类资源的均衡利用 3.产生死锁的原因是(cd )
A系统处于不安全状态B并发执行的进程数太多C系统资源不足D进程推进顺序不当 三、应用题
1.在一个只允许单向行驶的十字路口,分别有若干由东向西,由南向北的车辆在等待通过十字路口。为了安全,每次只允许一辆车通过(东向西或南向北)。当有车辆通过时其它车辆等待,当无车辆在路口行驶时则允许一辆车进入。请用PV操作实现能安全行驶的自动管理系统。(西安电子科技大学2001) var s:semaphore; s=1; begin parbegin
EastToWest:begin
P(s);
通过十字路口; V(s); End
SouthToWest: begin
P(s);
通过十字路口; V(s); End
Parend
End(本题属于简单的两进程同步问题)
2.有一材料保管员,负责管理纸和笔。另有A、B两组学生,A组学生每人都备有纸,B组学生都备有笔任一学生只要能得到其它任一种材料就可以写信。有一个可以放一张纸或一支笔的
3 / 13
小盒,当小盒中无物品时,保管员就可以任意放一张纸或一支笔供学生取用。当盒中有学生所需材料时,每次允许一个学生从中取出自己所需的材料,当一个学生从盒中取走材料后,允许保管员再存放一件材料。请用管程写出他们并发执行时能正确工作的程序(哈尔滨工业大学1999)
条件变量s表示保管员放材料的条件;条件变量paper表示学生取纸的条件;条件变量pencil表示学生取笔的条件。empty=1表示小盒为空,empty=0表示小盒非空。管程描述如下: 3.理发师问题(西安电子科技大学2000) var customers,barber,s:semaphore; barber=0; customers:=0; s:=1;
waiting,chairs:interger; waiting:=0; chaires:=n; begin parbegin barber:begin
p(customers); p(s);
V(barber);{空出理发师椅子} 等待的顾客坐到理发椅子上;
waiting:=waiting-1;{等待的顾客减少一个,空椅子增加一个} v(s); 理发。。。; end
customers:begin p(s);
if(waiting>=chairs) then v(s);{没有空椅子,顾客就离开} else begin
waiting:= waiting+1;{等待的顾客增加一个,空椅子减少一个} v(customers); v(s);
坐在空椅子上等待; p(barber);{申请理发椅子} end
end parend end
分析:本题属于生产者消费者问题。其特点是多个生产者(顾客),并且生产者数目受限(n把空椅子),消费者只有一个(理发师)。消费者缓冲区和生产者缓冲区不共用,且数目不一样。值得注意的是waiting的改变必须在p(s)和v(s)中进行,并且由于消费者缓冲区小于生产者缓冲区,因此消费者缓冲区状态应时刻被关注,本题中即p(barber)的作用。
4.一批数据n个,每个数据经计算进程计算后存入缓冲区,缓冲区有数据时,打印进程从缓冲
4 / 13
区中取出数据进行打印,用pv操作描述计算和打印进程的同步算法。 分析:本题是典型的生产者-消费者问题。
5.某火车订票系统,提供给多个用户同时共享一个订票数据库。规定多个用户允许同时查询该数据库,有查询者时,用户不能订票;有用户订票而需要更新数据库时,不可以有其它用户使用数据库。请用PV操作描述查询和订票者的同步执行程序。 分析:本题是典型的读者-写者问题。
下面改一下要求:规定多个用户允许同时查询该数据库,当有定票者到达时,不允许后来者查询数据库,且多个订票者可以互斥使用数据库。 Var rmutex,wmutex,r,w:=semaphore:=1,1,1,1; Readcount:integer:=0; Writecount;integer:=0; Begin
Parbegin
Inquirer:begin Repeat P(r);
P(rmutex);
If readcount:=0 then p(w); Readcount:=readcount+1;
V(rmutex);
V(r);
查询数据库; p(rmutex);
readcount:=readcount-1; if readcount=0 then v(w); v(rmutex); until false; end
booker:begin Repeat
P(wmutex);
If writecount:=0 then p(r); writecount:=writecount+1;
V(wmutex);
p(w);
使用数据库,订票; v(w);
p(wmutex);
if writecount =0 then v(r); writecount:=writecount-1; v(wmutex); until false; end parend
5 / 13