计算机操作系统(习题集)第二章答案_第1页
计算机操作系统(习题集)第二章答案_第2页
计算机操作系统(习题集)第二章答案_第3页
计算机操作系统(习题集)第二章答案_第4页
计算机操作系统(习题集)第二章答案_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章进程管理一、单项选择题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、FCBB、FIFOC、PCBD、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.建立一个进程控制块PCBB.由CPU调度程序为进程调度CPUC.为进程分配内存等必要的资源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.CPUD.磁盘空间15、一个进程被唤醒意味着(B)。A.该进程重新占有了CPUB.进程状态变为就绪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>0B.S=0C.S<0≤024.设有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)026.如果系统中有n个进程,则就绪队列中进程个数最多有(C)(A)n+1(B)n(C)n-1(27.在操作系统中,(B)是竞争和分配计算机系统资源的基本单位。

A程序B进程C作业D用户28.10个进程共享3台打印机,则与打印机对应的互斥信号量的初值应是(A)A3B10C7D129.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随机算法

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)vars:semaphore;s=1;beginparbeginEastToWest:beginP(s);通过十字路口;V(s);EndSouthToWest:beginP(s);通过十字路口;V(s);End

ParendEnd(本题属于简单的两进程同步问题)2.有一材料保管员,负责管理纸和笔。另有A、B两组学生,A组学生每人都备有纸,B组学生都备有笔任一学生只要能得到其它任个可以放一张纸或一支笔的小盒,当小就可以任意放一张纸或一支笔供学生取用。学生所需材料时,每次允许一材料,当一个学生从盒中取走材料后,允许保管员写出他们并发执行时能正确工作的程序(哈尔滨工业大学一种材料就可以写信。有一盒中无物品时,保管员当盒中有个学生从中取出自己所需的再存放一件材料。请用管程1999)条件变量s表示保管员纸的条件;条件变量pencil表示学生取笔的盒为空,empty=0表示小盒非空。管程描述如下:3.理发师问题(西安电子科技大学2000)放材料的条件;条件变量paper表示学生取条件。empty=1表示小varcustomers,barber,s:semaphore;barber=0;customers:=0;s:=1;waiting,chairs:interger;waiting:=0;chaires:=n;begin

parbeginbarber:beginp(customers);p(s);V(barber);{空出理发师椅子}等待的顾客坐到理发椅子上;waiting:=waiting-1;{等待的顾客减少一个,空椅子增加一个}v(s);理发。。。;endcustomers:beginp(s);if(waiting>=chairs)thenv(s);{没有空椅子,顾客就离开}elsebeginwaiting:=waiting+1;{等待的顾客增加一个,空椅子减少一个}v(customers);v(s);坐在空椅子上等待;p(barber);{申请理发椅子}

endendparendend分析:本题属于生产者消费者问题。其特点是多个生产者(顾客),并且生产者数目受限(n把空椅子),消费者只有一个(理发师)。消费者缓冲区和生产者缓冲区不共用,且数目不一样。值得注意的是waiting的改变必须在p(s)和v(s)中进行,并且由于消费者缓冲区缓冲区状态应时刻被关注,本题中小于生产者缓冲区,因此消费者即p(barber)的作用。4.一批数据n个,每个数据经计算进程计算后存入缓冲区,缓冲区有数据时,打印进程从缓冲区中取出数据进行打印,用pv操作描述计算和打印进程的同步算法。分析:本题是典型的生产者-消费者问题。5.某火车订票系统,提供给多个用户同时共享一个订票数据库。规定多个用户允许同时查询该数据库,有查询者时,用户不能订票;有用户订票而需要更新数据库时,不可有以其它用户使用数据库。请用PV操作描述查询和订票者的同步执行程序。分析:本题是典型的读者-写者问题。下面改一下要求:规定多个用户允许同时查询该数据库,当有定票者到达时,不允许后来者查询数据库,且多个订票者可以互斥使用数据库。

Varrmutex,wmutex,r,w:=semaphore:=1,1,1,1;Readcount:integer:=0;Writecount;integer:=0;BeginParbeginInquirer:beginRepeatP(r);P(rmutex);Ifreadcount:=0thenp(w);Readcount:=readcount+1;V(rmutex);V(r);查询数据库;p(rmutex);readcount:=readcount-1;ifreadcount=0thenv(w);v(rmutex);untilfalse;endbooker:beginRepeat

P(wmutex);Ifwritecount:=0thenp(r);writecount:=writecount+1;V(wmutex);p(w);使用数据库,订票;v(w);p(wmutex);ifwritecount=0thenv(r);writecount:=writecount-1;v(wmutex);untilfalse;endparendend6.试从多个方面比较线程和进程从四个方面:(1)调度:在传统的操作系统中,拥有资源的基本单位和独立调度、分派的基本单位都是进程。而在引入线程的os中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位。使传统进程的两个属性分开,线程便能轻装运行,从而可显著地提高系统的并发程度。在同一进程中,线程的切换

不会引起进程切换,在由一个进程中的线程切换到另一进程中的线程时,将会引起进程切换。(2)并发性:在引入线程的os中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,亦可并发执行,因而使操作系统具有更好的并发性,从而能更有效地使用系统资源和提高系统吞吐量。(3)拥有资源:不论是传统的操作系统,还是设有线程的操作系统,进程都是拥有资源的一个独立单位。一般地说,线程不拥有系统资源,但它可以访问期隶属进程的资源。(4)系统开销:创建或撤销进程时,系统都要为之分配或回收资源。而线程切换只需保存和设置少量寄存器的内容。因此,进程切换的开销远大于线程切换的开销。7.汽车司机与售票员之间必须协同工作。假定某辆公共汽车上有一名司机与两名售票员,汽车当前正在始发站停车上客,写出它们的同步过程(用管程或信号量机制均可)(哈尔滨工业大学2000)varrun1run2,stop1,stop2:semaphore:=0,0,0,0;beginparbegindriver:beginrepeatp(run1);p(run2);开车;

停车;v(stop1);v(stop2);untilfalseendseller1:beginrepeat上乘客;关车门;v(run1);售车票;p(stop1);开车门;下乘客;untilfalseendseller2:beginrepeat上乘客;关车门;v(run2);售车票;

p(stop2);开车门;下乘客;untilfalseendparendend分析:司机必须等到两个售票员都完成关车门后(两次能开车,同样到站后应让两个售票员都知道(两次v操作)8.今有三个并发进程R、M、P,它们共享了一个可循环使用的缓冲区B,缓冲区B共有N个单元。进程R负责从输入设备读信息,每读一个字符后,把它存入到缓冲区B的一个单元中;进程M负责处理读p操作)才入的字符,若发现读入的字符中有空格,则把它改成“,”;进程P负责被进程P取出又可用来存放下一次读入的字符。请用PV操作为同步机制写出把处理后的字符取出并打印输出。当缓冲区单元中的字符后,则它们能正确并发执行的程序。设置四个信mutex:用于实现号量:对缓冲区的互斥访问,初值为1;empty:表示缓冲区中可用单元数目,初值为N;full1:表示已读入字符个数,初值为0;full2:表示已处理字符个数,初值为0。相应地设置in,out1,out2.

Semaphoremutex=1;Semaphoreempty=N;Semaphorefull1=0;Semaphorefull2=0;Charbhffer[N];Intin=0,out1=out2=0;Main(){cobeginR();M();P();Coend}R(){while(true){charx;读入一个字符到x;p(empty);p(mutex);

buffer[in]=x;in=(in+1)%N;v(mutex);v(full1);}}M(){charx;while(true){p(full1);p(mutex);x=buffer[out1];if(x==”“){x=”,”;buffer[out1]=x;}out1=(out1+1)%N;v(mutex);v(full2);

}}P(){charx;while(true){p(full2)p(mutex);x=buffer[out2]out2=(out2+1)%N;v(mutex);v(empty);输出字符x;}}9.一个数据采集系统,有数据采样进程和数据处理进程及数据输出进程。采样进程把采到的数据送到buf1中,由数据处理进程取出处理并存入buf2中,然后由数据输出进程将其从buf2中输出,试给出实现三个进程同步的算法。empty1=empty2=1;full1=full2=0;

A(){while(true){采集一个数据;p(empty1);将数据存入buf1;v(full1);}}B(){while(true){p(full1);从buf1中取出数据;v(empty1);处理数据;p(empty2);将处理结果存入buf2;v(full2);}

}C(){while(true){p(full2);从buf2中取出结果;v(empty2);打印输出;}}10.超市可容纳50人同时购物,入口处有篮子,每个顾客可拿一只篮子入内购物,出口处结账,并归还篮子(出入口禁止多人同时通过)分析:(1)购物者进超市需要互斥,超市是临界资源(设信号量S=50)(2)入口拿篮子以及结账互斥。设mutex=1购物者i进程:P(S);P(mutex);从入口拿篮子V(mutex);选购商品;P(mutex);

出口结账V(mutex);离开超市V(S);以上为出入口合一的情况。若出入口分开,如何实现?设两个互斥信号量:mutex1=1;mutex2=1若设置一个信号量会怎样?(如果一个结账的话其他顾客无法进入超市)11.桌上有一个只能盛得下一子,女儿专吃苹果。分析:个水果的空盘子,爸爸放水果,儿子专吃桔(1)设互斥信号量empty=1(2)设同步信号量orange=0(3)设同步信号量apple=0爸爸:(生产者)P(empty);将水果放入盘中;若放入的是桔子,则V(orange)否则V(apple);儿子(消费者1)P(orange);取桔子

V(empty);吃桔子女儿(消费者2)类似于进程12.和尚吃水问题寺庙里住着一群老和尚和一群小和尚,小和尚负责挑水喝。庙里有5个水桶和一个大缸,大缸可盛8桶水。大缸每次只允许一个人使用。请写出他们之间的同步问题。资源信号量:s1=5;表示水桶的数量s2=8;表示缸空的数量(水桶)s3=0;表示缸满的数量(水桶)互斥信号量:mutex=1;用于互斥的使用大缸小和尚:P(s1);取水桶;挑水;P(s2);P(mutex);往水缸倒水;V(mutex);V(s3);V(s1);老和尚:

P(s3);P(mutex);吃水;V(mutex);V(s2);13.试用信号量机制描述两人下象棋的过程类似于一个生产者和一个消费者利用单缓冲(棋盘)通信的例子14.设AB两点之间是一段东西向的单行车道,现在要设计一个AB路段自动管理系统,规则如下:当AB间有车辆在行驶时同方向的车可以驶入,另一方向的车必须在AB段外等待;当AB段之间无车辆行驶时,任一方向到达的车都可驶入,但不能从两个方向同时驶入;当某方向在AB段行驶的车辆驶出了AB段且暂无车辆进入AB段时,应让另一方向等待的车辆进入AB段行驶。试用信号量和P、V操作管理AB路段车辆的行驶分析:这是读者—写者问题的变形,相当于两组读者(即两个方向的车辆)访问同一个(1)信号量及其设置S1、S2初值均为0,分别用于对从A、B点驶入AB的车辆计数共享文件(即AB路段)的互斥问题。互斥信号量mutex,初值为1,用于实现不同方向的第一辆车互斥驶入AB路段。

互斥信号量ma、mb,初值均为1,分别用于两个方向的车互斥的访问计数器变量。向西行驶的车辆:P(ma);IfS1=0thenP(mutex);S1++;V(ma);车辆从A点通过AB路段到达B点P(ma);S1--;IfS1=0thenV(mutex);V(ma);向东行驶的车辆:P(mb);IfS2=0thenP(mutex);S2++;V(mb);车辆从B点通过AB路段到达A点P(mb);S2--;IfS2=0thenV(mutex);

V(mb);15.在4×100接力赛中,四个运动员之间存在2号传给3号,3号传给4号,4号跑完全程。试用信号量机制进行描述。如下关系:1号传给2号,用前驱图描述:运动员1——运动员2——运动员3——运动员4信号量S12运动员1:S23初值均为0S34持棒跑100米;交棒给运动员2;V(S12);运动员2:P(S12);持棒跑100米;交棒给运动员3;V(S23);运动员3同运动员2运动员4:P(S34);

持棒跑100米;16.今有一文件F供A、B两组进程共享,规定同组的进程可以同时读文件F;但当有A组(或B组)的进程在读文件F时就不允许B组(或A组)的进程读文件。定义整形计数器变量C1和C2,分别记录A组和B组中读文件F的进程数,初值均为0.设置3个初值均为1的信号量S1、S2和SAB。进程Ai:_______________;将C1加1;若C1=1则_________________;_________________;读文件F;__________________;将C1减1;若C1=0则________________;_________________;进程Bi:

_______________;将C2加1;若C2=1则_________________;_________________;读文件F;__________________;将C2减1;若C2=0则________________;_________________;要求:(1)说明信号量S1、S2、SAB的作用;S1是用于A组进程互斥使用计数器C1的互斥信号量;S2是用于B组进程互斥使用计数器C2的互斥信号量;SAB是用于A、B两组进程互斥访问文件F的互斥信号量(2)填上合适的P、V操作P(S1),P(SAB),V(S1),P(S1),V(SAB),V(S1);P(S2),P(SAB),V(S2),P(S2),V(SAB),V(S2)设有两个进程P、Q;Q的优先级高于P,同时进入就绪队列;17.各自运行的程序段如下:

进程P:P1Y=8;P2Y=A-Y;P3V(S1);P4Y=A+X;P5P(S2);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论