计算机专业基础综合(进程管理)模拟试卷1(共103题)_第1页
计算机专业基础综合(进程管理)模拟试卷1(共103题)_第2页
计算机专业基础综合(进程管理)模拟试卷1(共103题)_第3页
计算机专业基础综合(进程管理)模拟试卷1(共103题)_第4页
计算机专业基础综合(进程管理)模拟试卷1(共103题)_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

计算机专业基础综合(进程管理)模拟试卷1(共4套)(共103题)计算机专业基础综合(进程管理)模拟试卷第1套一、单选题(本题共15题,每题1.0分,共15分。)1、正在运行的进程,因某种原因而暂时停止运行,等待某个事件的发生,此时处于()状态。A、运行B、完成C、就绪D、阻塞标准答案:D知识点解析:此题主要考查进程的基本状态及其转换等相关内容。在操作系统中,进程的三种基本状态之一的阻塞状态是指正在运行的进程,因某种原因而暂停运行(如发生了I/O请求等),等待某个事件的发生,导致进程不能继续运行且交出处理机时的状态。2、进程从运行状态转换为就绪状态的可能原因是()。A、被调度程序选中占用处理机B、等待某一事件C、等待的事件已经发生D、时间片用完标准答案:D知识点解析:就绪状态是指一个进程获得了除处理机以外的一切资源,当得到调度时,就由就绪状态转换为运行状态;运行状态就是一个进程在处理机上正在运行。当处于运行状态的进程在运行过程中所分配的时间片用完,则会被强制撤离处理机,以便调度其他进程运行。由于原先运行的进程是非自愿地离开运行状态,所以没有其他的事件相关,只有继续在就绪队列中等候下一次的调度,所以选项D是正确的。选项A的情形是由就绪状态转换为运行状态;选项B的情形是由运行状态转换为阻塞状态;选项C的情形是由阻塞状态转换为就绪状态。3、设m为同类资源数,n为系统中并发进程数。当n个进程共享m个互斥资源时,每个进程的最大需求是w,则下列情况中会出现系统死锁的是()。A、m=2,n=1,w=2B、m=2,n=2,w=1C、m=4,n=3,w=2D、m=4,n=2,w=3标准答案:D知识点解析:本题考查死锁的检测。选项A不会发生死锁,只有一个进程时不会发生死锁。选项B不会发生死锁,两个进程各需要一个资源,而系统中恰好有2个资源。选项C不会发生死锁,3个进程需要的最多资源数都是2,系统总资源数是4,所以总会有一个进程得到2个资源,运行完毕后释放资源。选项D可能会发生死锁,当2个进程各自都占有了2个资源后,系统再无可分配资源。由此可得出结论:当满足m≥n(w-1)+1时,不会产生死锁。4、在操作系统中引入并发可以提高系统效率。若有三个进程P1、P2和P3,按照P1,P2到P3的优先次序运行,采用可抢占式调度,其运行过程如下:P1:计算6ms,I/O8ms,计算2msP2:计算12ms,I/O6ms,计算2msP3:计算4ms,I/O8ms,计算4ms不计系统开销,相比单通道顺序运行,多道并发可以节省的时间和CPU利用率分别是()。A、14ms;79%B、16ms;83%C、12ms;75%D、22ms;100%标准答案:A知识点解析:本题考查多道程序运行的工作方式,解决此类问题的关键一般是根据进程的优先级和时序关系画出时序图,注意I/O设备不能抢夺,CPU可以根据优先级来抢夺。根据题意,进程运行时序图如下:单道运行时需要耗时:6+8+2+12+6+2+4+8+4=52(ms)从表中分析,并发运行时需要耗时:6+8+2+4+4+2+2+6+4=38(ms)节省时间为52-38=14(ms)CPU效率为(6+8+2+4+4+2+4)/38=79%5、系统产生死锁的可能原因是()。A、共享资源分配不当B、系统资源不足C、进程运行太快D、CPU内核太多标准答案:A知识点解析:系统死锁的可能原因主要是时间上和空间上的。时间上由于进程运行中推进顺序不当,即调度时机不合适,不该切换进程时进行了切换,可能会造成死锁。空间上的原因是对共享资源分配不当,互斥资源部分分配又不可剥夺,极易造成死锁。那么,为什么系统资源不足不是造成死锁的原因呢?系统资源不足只会对进程造成“饥饿”,例如,某系统只有3台打印机,若进程运行中要申请4台,显然不能满足,该进程会永远等待下去。如果该进程在创建时便声明需要4台打印机,那么操作系统立即就会拒绝,不会创建该进程。一般地,系统由于部分分配的剩余资源不足时,可能会造成死锁,这实际上是资源分配不当的一种表现。不能以系统资源不足来描述剩余资源不足的情形。6、若有一进程拥有100个线程,这些线程都属于用户级线程,则在系统调度执行时间上占用的时间片是()。A、1B、100C、1/100D、0标准答案:A知识点解析:本题主要考查关于进程和线程之间资源共享的知识点。在引入线程的操作系统中,线程是进程中的一个实体,是系统独立调度和分派的基本单位。但是线程自己基本上不拥有系统资源,所以它不是资源分配的基本单位,它只拥有一部分在运行中必不可少的与处理机相关的资源,如线程状态、寄存器上下文和栈等,它同样有就绪、阻塞和执行三种基本状态。它可与同属一个进程的其他线程共享进程所拥有的全部资源。一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行。由于用户线程不依赖于操作系统内核,因此,操作系统内核是不知道用户线程的存在的,用户线程是由用户来管理和调度的,用户利用线程库提供的API来创建、同步、调度和管理线程。所以,用户线程的调度在用户程序内部进行,通常采用非抢占式和更简单的规则,也无须用户态和核心态切换,所以速度很快。由于操作系统不知道用户线程的存在,所以,操作系统把CPU的一时间片分配给用户进程,再由用户进程的管理器将时间分配给用户线程。那么,用户进程能得到的时间片即为所有用户线程共享。因此,正确答案应为A。7、有五个进程共享一个互斥段,如果最多允许两个进程同时进入互斥段,则所采用的互斥信号量初值应该是()。A、5B、2C、1D、0标准答案:B知识点解析:因为最多允许两个进程同时进入互斥段,所以信号量为2。如果一个互斥段可以同时允许两个进程进入,则相当于有两个互斥段。8、2个优先级相同的并发进程P1和P2,它们的执行过程如下所示,假设当前信号量s1=0,s2=0,当前的z=2,进程运行结束后,x、y和z的值分别为()。进程P1进程P2y:=1;x:=1;y:=y+2;x:=x+1;z:=y+1;P(s1);V(s1);x:=x+y;P(s2);z:=x+z;y:=z+y;V(s2);A、5,9,9B、5,9,4C、5,12,9D、5,12,4标准答案:C知识点解析:本题考查并发进程的特点,并结合信号量进行同步的原理。由于进程并发,所以进程的执行具有不确定性,在P1、P2执行到第一个P、V操作前,应该是相互无关的。现在考虑第一个对1的P、V操作,由于进程P2是P(s1)操作,所以,它必须等待P1执行完V(s1)操作以后才可继续运行,此时x、y、z的值分别为3、3、4,当进程P1执行完V(s1)以后便在P(S2)上阻塞,此时P2可以运行直到V(s2),此时x、y、z值分别为5、3、9,进程Pl继续运行直到结束,最终的x、y、z值分别为5、12、909、设有3个作业,其运行时间分别为2小时、5小时、3小时,假定它们同时到达,并在同一台处理机上以单道运行方式运行,则平均周转时间最小的执行顺序是()。A、J1,J2,J3B、J3,J2,J1C、J2,J1,J3D、J1,J3,J2标准答案:D知识点解析:本题考查平均周转时间的概念,周转时间=等待时间+运行时间,平均周转时间=总周转时间÷n。在本题中,选项A的顺序J1,J2,J3的平均周转时间是(2+7+10)÷3=19÷3=6.3(小时);选项B的顺序J3,J2,J1的平均周转时间是(3+8+10)÷3=21÷3:7(小时);选项C的顺序J2,J1,J3的平均周转时间是(5+7+10)÷3=22÷3=7.3(小时);选项D的顺序J1,J3,J2的平均周转时间是(2+5+10)÷3=17÷3=5.7(小时)。因此,答案为D。10、关于临界区问题(criticalsectionproblem)有如下算法(假设只有进程P0和P1可能进入该临界区),算法如下(i为0或1),该算法()。repeatretry:if(turn≠一1)turn:=i;if(tum≠i)gotoretry;turn:=一1;criticalsection(临界区)turn=0:remaindersection(其他区域)untilfalse;A、不能保证进程互斥进入临界区,且会出现“饥饿”B、不能保证进程互斥进入临界区,但不会出现“饥饿”C、保证进程互斥进入临界区,但会出现“饥饿”D、保证进程互斥进入临界区,不会出现“饥饿”标准答案:A知识点解析:例如当P0执行完语句turn:=-1,刚好要进入临界区时,CPU又调度P1执行,Pl能够顺利进入临界区,不能满足互斥。当P0执行完临界区时,CPU调度P1执行,P1在retry循环,CPU调度P0执行,P0继续执行,重复以上过程,会导致P1“饥饿”。11、下列死锁的论述中,正确的是()。A、由于产生死锁的基本原因是系统资源不足,因而,预防死锁最常用的方法是根据系统规模,配置足够的系统资源B、由于产生死锁的另一个基本原因是进程推进顺序不当,因而,预防死锁的常用方法是使进程的推进顺序合法C、只要系统不进入不安全状态,便不会产生死锁,因而,预防死锁的常用方法是防止系统进入不安全状态D、可以通过破坏产生死锁的四个必要条件之一或其中几个的方法来预防发生死锁标准答案:D知识点解析:选项A,不可能根据系统的规模,配置足够的系统资源,因为系统的资源是有限的。选项B,这种方法不能保证死锁不发生,而且进程推进过程很复杂,实现合理的顺序不太可能。选项C,系统进入不安全状态不一定会产生死锁,防止系统进入不安全状态不太可能,故不是常用的方法。12、下列关于进程的叙述中,最不符合操作系统对进程的理解的是()。A、进程是在多程序并行环境中的完整的程序B、进程可以由程序、数据和进程控制块描述C、线程是一种特殊的进程D、进程是程序在一个数据集合上运行的过程,是系统进行资源管理的一个独立单位标准答案:A知识点解析:A的说法不够全面。13、下列进程调度算法中,综合考虑了CPU密集型进程和I/O密集型进程的是()。A、时间轮转B、优先级C、多重队列D、FIFO标准答案:C知识点解析:多重队列通过将进程分类,在系统中设置若干队列进行进程调度,综合考虑了CPU密集型进程和I/0密集型进程。14、进程P1、P2和P3单独执行时间分别为10min、15min和20min,其中处理机占用时间分别为2min、3min和12min。如果采用多道程序设计技术使其并发,并假设处理机的利用率可以达到60%,加上系统开销5min,则并发使得计算机系统的效率提高了()。A、63%B、38%C、74%D、26%标准答案:D知识点解析:本题考查并发的计算。由于本题并没有详细描述进程的执行过程,所以,计算是以总体效率来进行的。总体效率是指并发执行所花费的时间值与原时间值相比提高了多少。依本题题意,可以计算出处理机所需时间为2+3+12=17(min),按处理机60%的利用率,并发所需总时间为17÷60%+5=33.33(min),单道运行时所需要的总时间为10+15+20=45(min),则系统效率提高了(45—33.33)÷45=26%。注意题意,并发时不要忘记系统开销5min。单道执行时由于较少需要进程切换,因此系统开销一般忽略不计。并发时系统要进行大量的进程切换,因此,系统开销有时会比较大,此时就应该纳入计算。15、进程创建的时候,不需要做的是()。A、填写一个该进程的进程表项B、分配该进程适当的内存C、将该进程插入就绪队列D、为该进程分配CPU标准答案:D知识点解析:本题考查的是进程创建的过程。进程创建最主要的工作是为该进程申请并填写一张进程表。进程表内包含有多个与进程有关的数据结构,例如,进程号、进程组、进程的优先级、进程所分配的内存、进程需要的I/O设备、进程要打开的文件等。当填写好了进程表以后,进程创建模块便将进程表按照该系统规定的法则插入到就绪队列的适当位置,等待进程调度模块进行下一步的调度。所以进程创建的过程中不会包含分配CPU的过程,这不是进程创建的工作,而是调度器的工作。二、综合应用题(本题共11题,每题1.0分,共11分。)16、有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。标准答案:(1)使用信号量和P、V操作:varA:array[1..100]ofRec;Rec=recordnumber:integer;name:string;end;i:integer;fori:=1to100do{A[i].number:=i;A[i].name:=null;}mutex,seatcount:semaphore;//semaphore:信号量mutex:=1:seatcount:=100;cobeginprocessreaderi(varreadername:string)(i=1,2,…){P(seatcount);P(mutex);fori:=1to100do{i++:ifA[i].name=-nullthenA[i].name:=readername;//读者登记}/*必须采用这种方式,因为该空位是随机产生的。我们无法知道哪个读者何时离开*/V(mutex)进入阅览室,座号i,坐下读书:P(mutex);//读书完毕,需要退场A[i]name:=null;V(mutex);V(seatcount);离开阅览室;}coend(2)使用管程操作:TYPEreadbook=monitorVARR:condition;i,seatcount:integer;name:array[1..100]ofstring;DEFINEreadercome,readerleave;USEcheck,wait,signal,release;procedurereadereome(readername)begancheck(IM):ifseatcount≥1100wait(R,IM)seatcount:=seatcount+1:fori=1to100doi++ifname[i]==nullthenname[i]:=readername:gettheseatnumber=i;release(IM);endprocedurereaderleave(readername)begincheck(IM);seatcount--:fori=1t0100doi++ifname[i]==readernamethenname[i]:=null:release(IM):endbeginseatcount:=100;name:=null:endeobeginprocessreaderi(1=1,2.…)begmreadercome(readername);readthebook:readerleave(readername):leavethereadroom;endcoend知识点解析:暂无解析17、设有n个进程共享一个互斥段,如果:(1)每次只允许一个进程进入互斥段;(2)每次最多允许m个进程(m≤n)同时进入互斥段。试问:所采用的信号量初值是否相同?信号量值的变化范围如何?标准答案:所采用的互斥信号量初值不同。(1)互斥信号量初值为1,变化范围为[-n+1,1]。当没有进程进入互斥段时,信号量值为1;当有1个进程进入互斥段但没有进程等待进入互斥段时,信号量值为0;当有1个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为一1:最多可能有n-1个进程等待进入互斥段,故此时信号量的值应为-(n-1),也就是-n+1。(2)互斥信号量初值为m,变化范围为[-n+m,m]。当没有进程进入互斥段时,信号量值为m;当有1个进程进入互斥段但没有进程等待进入互斥段时,信号量值为m-1;当有m个进程进入互斥段且没有一个进程等待进入互斥段时,信号量值为0;当有m个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1;最多可能有n-m个进程等待进入互斥段,故此时信号量的值应为-(n-m),也就是-n+m。知识点解析:暂无解析设某系统采用可抢占的优先级进程调度算法,系统在某一段时间内有A、B、C三个进程,进程C优先级最高,进程A优先级最低,进程B优先级介于进程A、C之间,它们的就绪时刻、计算与I/O所需时间如下表所示:18、若系统采用多道方式运行,给出这三个进程运行完成总共所需的时间,并用图示给出三个进程的实际运行过程(忽略进行系统调度所需时间)。标准答案:若系统采用多道方式运行,这三个进程运行完成总共所需的时间为68ms。知识点解析:暂无解析19、采用多道方式运行比采用单道方式运行可节省多少时间?标准答案:采用单道方式运行,这三个进程运行完成总共所需的时间为113ms。采用多道方式运行比采用单道方式运行节省时间:113-68=45(ms)知识点解析:暂无解析某系统中进程有如下的状态变化图:请回答下列问题:20、该系统采用了怎样的进程调度算法?说明理由。标准答案:该系统采用的是时间片轮转调度算法。该调度算法让就绪进程按就绪的先后次序排成队列,每次总是选择就绪队列中的第一个进程占用处理器,但规定只能使用一个时间片。如果一个时间片用完,进程工作尚未结束,则它也必须让出处理器而被重新排到就绪队列的末尾,等待再次运行,当再次轮到运行时,重新开始使用一个新的时间片。这样,就绪队列中的进程就依次轮流地占用处理器运行。知识点解析:暂无解析21、把图中发生①~④的状态变化原因填入下表中。标准答案:知识点解析:暂无解析22、中断分为哪几种类型?请给出各自的含义。标准答案:(1)硬件故障中断。它是由于机器故障造成的,例如,电源故障、主存出错等。(2)程序中断。这是由于程序执行到某条机器指令时可能出现的各种问题而引起的中断,例如,发现定点操作数溢出、除数为“0”、地址越界、使用非法指令码、目态下的用户使用了特权指令等。(3)外部中断。这是由各种外部事件引起的中断,例如,按压了控制板上的一个中断键、设置的定时时钟的时间周期到。(4)输入/输出中断。输入/输出控制系统发现外围设备完成了输入/输出操作或在执行输入/输出操作时通道或外围设备产生错误而引起的中断。(5)访管中断。它是正在运行的进程为了请求调用操作系统的某个功能而执行一条访管指令所引起的中断。例如,用户要求分配一台外围设备、要求分配一些主存区域、要求启动外围设备读一批数据等。知识点解析:暂无解析23、引起进程切换的时机有哪些?标准答案:我们把处理机从一个进程转到另一个进程称为进程切换。引起进程切换的时机有以下几种情况:(1)一个进程从运行状态变为等待状态。(2)一个进程从运行状态变为就绪状态。(3)一个进程从等待状态变为就绪状态。(4)一个进程运行完成而撤离系统。知识点解析:暂无解析24、时间片轮转调度算法中,时间片值的选取对系统有什么影响?标准答案:(1)时间片取值的大小关系到计算机系统的效率和用户的满意度,所以,时间片的值应根据进程要求系统给出应答的时间和进入系统的进程数来决定。如果要求系统快速应答,则时间片小些,这样使轮转一遍的总时间减少而可对进程尽快应答。如果进程数少,则时间片可以大些,这样可减少进程调度的次数,提高系统效率。(2)对每个进程可规定相同的时间片,但有的系统对不同的进程规定不同的时间片,例如,对很少使用外围设备而需要运算时间长的进程,给一个大一些的时间片,以达到减少调度次数,加快进程执行速度的目的。但应注意到,时间片值过大时该算法退化为先来先服务;时间片值过小时加重系统开销。知识点解析:暂无解析25、什么是抢占式优先级调度和非抢占式优先级调度?标准答案:采用“非抢占式”调度时,一旦有某个高优先数的进程占用了处理器,就一直让它运行下去,直到该进程由于自身的原因主动让出处理器或进程执行结束而让出处理器。此时,进程调度才重新再按优先数选择另一个占用处理器的进程。采用“可抢占”式的调度方式严格保证任何时刻总是让具有最高优先数的进程在处理器上运行。也就是说,当某一进程在处理器上运行时,一旦有另一个更高优先数的进程就绪,进程调度就要剥夺正在处理器上运行的进程使用处理器的权力,抢回分配给它的处理器,而把处理器让给具有更高优先数的进程使用。这种抢占式的优先数调度算法在实时系统中很有用。例如,在实际系统中可把处理紧急情况的报警进程赋予最高优先数,一旦有紧急事件发生,触发报警进程就绪,进程调度就让这个报警进程抢占处理器进行紧急处理和发出警告信号。知识点解析:暂无解析26、设有三个进程A、B、C,进程A和进程B各需要运行3ms的处理器时间,而进程C却要24ms的处理器时间,分别考虑当三个进程到达顺序为A,B,C时及C,B,A时,用先来先服务进行调度时各自的平均等待时间。标准答案:(1)当三个进程到达顺序为A、B、C时,按照先来先服务的顺序,进程A先占用处理器,进程B需等待3ms后才能去占用处理器,进程C在等待6ms的时间后可以占用处理器。于是,它们的平均等待时间为(0+3+6)÷3=3(ms)。(2)如果进程是按C、B、A的次序排入队列,则进程C先占用处理器运行24ms后才能让进程B占用,即进程B需等待24ms,而进程A在等了27ms后才可占用处理器,现在这三个进程的平均等待时间为(27+24+0)÷3=17(ms)。可见当运行时间长的进程先就绪时,先来先服务算法使系统效率受到影响。知识点解析:暂无解析计算机专业基础综合(进程管理)模拟试卷第2套一、单选题(本题共15题,每题1.0分,共15分。)1、临界区是指()。A、一组临界资源的集合B、可共享的一块内存区C、访问临界资源的一段代码D、请求访问临界资源的代码标准答案:C知识点解析:每个进程中访问临界资源的那段程序称为临界区(临界资源是一次仅允许一个进程使用的可轮流分享的资源)。使用时,每次只准许一个进程进入临界区,一旦一个进程进入临界区之后,不允许其他进程同时进入。进程进入临界区的调度原则是:(1)如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。(2)任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其他所有试图进入临界区的进程必须等待。(3)进入临界区的进程要在有限时间内退出,以便其他进程能及时进入自己的临界区。(4)如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。2、在一段时间内,只允许一个进程访问的资源称为()。A、共享资源B、独占资源C、临界资源D、共享区标准答案:C知识点解析:在现代计算机系统中,有一些资源不能被多个进程同时使用,这样的资源如果使用或分配不当会造成错误,它们只能被排他地使用,这样的资源就是临界资源。3、不需要信号量能实现的功能是()。A、进程同步B、进程互斥C、执行的前趋关系D、进程的并发执行标准答案:D知识点解析:本题考查信号量的功能。在多道程序系统中,信号量机制是一种有效的实现进程同步与互斥的工具。进程执行的前趋关系实质上是指进程的同步关系。除此以外,只有进程的并发执行不需要信号量来控制,因此正确答案为D。4、当中断发生后,进入中断处理的程序属于()。A、用户程序B、OS程序C、可能是用户程序,也可能是OS程序D、单独的程序,既不是用户程序,也不是OS程序标准答案:B知识点解析:在现代操作系统的设计中,为了保证系统的安全,将系统的工作状态划分为目态和管态两种,只有操作系统的核心才能工作在管态,而中断处理程序必须工作在管态,故其属于操作系统程序。5、某计算机系统中有8台打印机,有K个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发生死锁的K的最小值是()。A、2B、3C、4D、5标准答案:C知识点解析:当K<4(即K的值取为3及其以下值)的时候,系统可以为某个进程分配打印机资源,并可以确保在有限的时间内使某个进程完成并且退还其已经占用的打印机,进而使各个进程能够依次顺利地完成。而当K>14的时候,就构成了死锁需要的条件,会引起死锁的产生,所以答案为C。6、进程P0和P1的共享变量定义及其初值如下:booleanflag[2];intturn=0;flag[0]=false;flag[1]=false;若进程P0和P1访问临界资源的伪代码按照下面设计:voidP0(){//进程P0voidP1(){//进程P1while(TRUE){while(TRUE){flag[0]=TRUE;flag[0]=TRUE;turn=1;turn=0;while(nag[1]&&(turn==1))while(nag[0]&&(torn==0))临界区;临界区;flag[0]=FALSE;flag[1]=FALSE;}}}}则并发执行进程P0和P1时产生的情况是()。A、不能保证进程互斥进入临界区,会出现“饥饿”现象B、不能保证进程互斥进入临界区,不会出现“饥饿”现象C、能保证进程互斥进入临界区,会出现“饥饿”现象D、能保证进程互斥进入临界区,不会出现“饥饿”现象标准答案:A知识点解析:从题中给出的伪代码可知,由于信号量flag的赋值方法不对,因此会使得不能保证进程互斥进入临界区,会出现“饥饿”现象。7、下列选项中,降低进程优先级的合理时机是()。A、进程的时间片用完B、进程刚完成I/O,进入就绪列队C、进程长期处于就绪列队D、进程从就绪状态转为运行状态标准答案:A知识点解析:在此题中,进程完成I/O,进入就绪队列;长期处于就绪队列的进程需要尽快得到处理机为它服务,进程从就绪状态转为运行状态的时候也不能降低进程的优先级,只有在进程的时间片用完才是降低进程优先级的最好时机。8、假设与某类资源相关联的信号量初值为3,当前值为1,若M表示该资源的可用个数,N表示等待该资源的进程数,则M、N分别是()。A、0、1B、1、0C、1、2D、2、0标准答案:B知识点解析:按照信号量的定义,与资源相关联的信号量的取值是与当前可用资源数量一致的,因此M为1,而依题意,目前没有等候该资源的进程,故N的值为0。9、下列选项中,导致创建新进程的操作是()。I.用户登录成功Ⅱ.设备分配Ⅲ.启动程序执行A、仅Ⅰ和ⅡB、仅Ⅱ和ⅢC、仅Ⅰ和ⅢD、Ⅰ、Ⅱ、Ⅲ标准答案:C知识点解析:用户登录成功、启动程序执行均会导致创建新进程,而设备分配则不会。10、下列选项中,操作系统提供给应用程序使用的接口是()。A、系统调用B、中断C、库函数D、原语标准答案:A知识点解析:在现代操作系统中,操作系统提供了包括系统调用、命令接口、图形接口等方便用户使用系统资源的接口,在上述接口中,只有系统调用是提供给程序使用的。11、下列进程调度算法中,综合考虑了进程等待时间和执行时间的是()。A、时间片轮转调度算法B、最短进程优先调度算法C、先来先服务调度算法D、高响应比优先调度算法标准答案:D知识点解析:在若干进程调度算法中,时间片轮转调度算法考虑的是时间分配上的均衡,最短进程优先调度算法主要考虑的是短作业的等待时间,先来先服务调度算法考虑的是到达顺序的合理性,而只有高响应比优先调度算法做到了综合考虑进程等待时间和执行时间。12、单处理机系统中,可并行的是()。Ⅰ.进程与进程Ⅱ.处理机与设备Ⅲ.处理机与通道Ⅳ.设备与设备A、Ⅰ、Ⅱ和ⅢB、Ⅰ、Ⅱ和ⅣC、Ⅰ、Ⅲ和ⅣD、Ⅱ、Ⅲ和Ⅳ标准答案:D知识点解析:在单处理机系统中,仅有一个处理机,所以在一个特定的时刻只能有一个进程能够获得处理机的使用权,因而排除选项A、B和C,只有选项D是合理的答案。13、如果有一个进程从运行状态变成等待状态,或完成工作后就撤销,则必定会发生()。A、进程切换B、存储器再分配C、时间片轮转D、死锁标准答案:A知识点解析:此题主要考查进程切换的相关内容。进程调度将从就绪队列中另选一个进程占用处理机。使一个进程让出处理要,由另一个进程占用处理机的过程称为进程切换。若有一个进程从运行状态变成等待状态,或者进程完成工作后被撤销,则必定会发生进程切换;若一个进程从等待状态变成就绪状态,则不一定会发生进程切换。14、在时间片轮转算法中,()的大小对计算机性能有很大影响。A、对换B、分页C、时间片D、程序段标准答案:C知识点解析:此题主要考查在时间片轮转算法中时间片大小对于系统性能的重要性。在时间片轮转算法中,时间片的大小对计算机性能有很大影响。如果时间片划分不当,则系统不能提供令用户满意的响应时间。时间片的大小应选择得适当,通常要考虑以下几个因素:(1)系统对响应时间的要求;(2)就绪队列中进程的数目;(3)系统的处理能力。15、在操作系统中,资源分配、调度和管理的最小单位是()。A、进程B、线程C、作业D、程序段标准答案:A知识点解析:此题主要考查进程调度的基本概念等相关内容。进程的引入可以更好地描述系统中的并发活动。它被定义为一个具有独立功能的程序关于某个数据集合的一次运行活动。在操作系统中,进程是进行系统资源分配、调度和管理的最小独立单位,操作系统的各种活动都与进程有关。二、综合应用题(本题共10题,每题1.0分,共10分。)16、简述预防死锁的办法。标准答案:(1)方法一:如果系统当前存在的资源数量能够满足进程的资源需求,便一次性地为进程分配其所需的全部资源;在该进程完成之后再一次性地回收全部资源。这个做法被称为摒弃“请求和保持”条件,该方法可以预防死锁。(2)方法二:当系统中某些进程在已经占有一定数量资源的情况下,又提出新的资源请求,操作系统不能立即满足该进程的需求时,该进程必须立即释放已经占有和保持的所有资源,待以后需要时再重新申请;这种可以剥夺进程资源的做法可以有效地防止死锁的产生。其被称为摒弃“不可剥夺”条件。(3)方法三:就是采用一定的方法,将所有可提供的资源按类型排序编号,所有进程对资源的请求也必须严格按序号递增的次序提出,避免产生资源占有和资源需求的回路出现,造成死锁的产生。此方法也被称为摒弃“环路等待”条件。知识点解析:暂无解析17、为使用户进程互斥地进入临界区,可以把整个临界区实现成不可中断的过程,即用户有屏蔽所有中断的能力。每当用户程序进入临界区的时候,屏蔽所有中断;当出了临界区的时候,再开放所有中断。你认为这种方法有什么缺点?标准答案:此题主要考查中断概念在操作系统设计过程中的重要作用与临界区的概念。用户进程进入临界区时屏蔽所有中断,包括系统程序的中断。假如屏蔽的是用户进程,确实可以保护临界资源,但如果连系统所发出的中断也被屏蔽的话,就会引起系统错误。虽然系统外中断往往与当前运行的程序无关,但如果是一些重要的硬件中断,如电源故障等,就可能会引起错误,故不可盲目屏蔽所有中断。知识点解析:暂无解析18、有三个进程PA、PB和PC合作解决文件打印问题:PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录;PC将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录的大小。请用P、V操作来保证文件的正确打印。标准答案:(1)进程PA、PB、PC之间的关系为:PA与PB共用一个单缓冲区,PB又与PC共用一个单缓冲区,其合作方式如下图所示。当缓冲区1为空时,进程PA可将一个记录读入其中;若缓冲区1中有数据且缓冲区2为空,则进程PB可将记录从缓冲区1复制到缓冲区2中;若缓冲区2中有数据,则进程PC可以打印记录。其他条件下,相应进程必须等待。事实上,这是一个生产者一消费者问题。为遵循这一同步规则。应设置4个信号量empty1、empty2、fulll、full2,信号量empty1和empty2分别表示缓冲区1及缓冲区2是否为空,其初值为1;信号量full1和full2分别表示缓区1及缓冲区2是否有记录可供处理,其初值为0。(2)相应的进程描述如下:semaphoreempty1=1://缓冲区1是否为空semaphorefull1=0://缓冲区1是否有记录可供处理semaphoreempty2=l://缓冲区2是否为空semaphorefull2=0://缓冲区2是否有记录可供处理cobegin{processPA(){while(TRuE){从磁盘读入一条记录;P(emptyl);将记录存入缓冲区1;V(full1);}}processPB(){while(TRUE){P(full1);从缓冲区1中取出一条记录;V(empty1);P(empty2);将取出的记录存入缓冲区2;V(full2);}}processPC(){while(TRUE){P(full2);从缓冲区2中取出一条记录;V(empty2);将取出的记录打印出来;}}}coend知识点解析:暂无解析19、在一间酒吧里有3个音乐爱好者队列,第l队的音乐爱好者只有随身听,第2队只有音乐磁带,第3队只有电池。而要听音乐就必须随身听、音乐磁带和电池这3种物品俱全。酒吧老板一次出售这3种物品中的任意两种。当~名音乐爱好者得到这3种物品并听完一首乐曲后,酒吧老板才能再一次出售这3种物品中的任意两种。于是第2名音乐爱好者得到这3种物品,并开始听乐曲。全部买卖就这样进行下去。试用P、V操作正确解决这一买卖。标准答案:(1)第1队音乐爱好者要竞争“待出售的音乐磁带和电池”,而且在初始状态下系统并无“待出售的音乐磁带和电池”,故可为该种资源设置一初值为0的信号量buy1;同样,需设置初值为0的buy2、buy3分别对应“待出售的随身听和电池”、“待出售的随身听和音乐磁带”。另外,为了同步买者的付费动作和卖者的给货动作,还需设置信号量payment和goods,以保证买者在付费后才能得到所需商品。信号量music_over用来同步音乐爱好者听乐曲和酒吧老板的下一次出售行为。(2)具体的算法描述如下:semaphorebuy1=buv2=buy3=0:semaphorepayment=0:semaphoregoods=0;semaphoremusic_over=0;cobegin{processboss(){//酒吧老板while(TRUE){拿出任意两种物品出售;if(出售的是音乐磁带和电池)V(buyl);elseif(出售的是随身听和电池)V(buy2);elseif(出售的是随身听和音乐磁带)V(buy3);P(payment);//等待付费V(goods);//给货P(music_over);//等待乐曲结束}}processfanl(){//第1队音乐爱好者while(TRUE){P(buy1);//等待有音乐磁带和电池出售V(payment);//付费P(goods);//取货欣赏一曲乐曲;V(music_over);//通知老板乐曲结束}}processfan2(){//第2队音乐爱好者while(TRUE){P(buy2);//等待有随身听和电池出售V(payment);//付费P(goods);//取货欣赏一曲乐曲;V(music_over);//通知老板乐曲结束}}processfan3(){//第3队音乐爱好者while(TRUE){P(buy3);//等待有随身听和音乐磁带出售V(payment);//付费P(goods);//取货欣赏一曲乐曲:V(music_over);//通知老板乐曲结束}}}coend知识点解析:暂无解析兄弟俩共同使用一个账号,每次限存或取10元,存钱与取钱的进程分别如下所示:intamount=0:SAVE(){TAKE(){intm1;intm2:m1=amount;m2=amount;m2=m2—10:amount=m2;}m1=m1+10:amount=m1:}由于兄弟俩可能同时存钱和取钱,因此两个进程是并发的。若哥哥先存了两次钱,但在第三次存钱时弟弟在取钱。请问:20、最后账号amount上面可能出现的值是多少?标准答案:哥哥存两次钱后,共享变量amount的值为20。哥哥的第三次存钱与弟弟的取钱同时进行,如果两者顺序执行,则最后amount的值为20;如果在一个进程的执行过程中进行CPU调度,转去执行另一进程,则最后amount的值取决于amount=ml及amount=m2的执行先后次序,若前者先执行,则最后amount的值为10,若后者先执行,则最后amount的值为30。因此,最后账号amount上可能出现的值有10、20、30。知识点解析:暂无解析21、如何用P、V操作实现两并发进程的互斥执行?标准答案:在上述问题中,共享变量amount是一个临界资源,为了实现两并发进程对它的互斥访问,可为它设置一初值为1的互斥信号量mutex,并将上述算法修改为:intamount=0;semaphoremutex=1;//互斥访问amount变量的信号量cobegin{processSAVE(){intml;P(mutex):ml=amount;ml=ml+10;amount=m1;V(mutex);}processTAKE(){intm2;P(mutex);m2amount;m2=m2-10:amount=m2;V(mutex);}}coend知识点解析:暂无解析某系统有R1、R2和R3三种资源,在T0时刻P1、P2、P3和P4四个进程对资源的占用和需求情况如下表所示,此时系统的可用资源向量为(2,1,2)。试问:22、系统是否处于安全状态?如安全,请给出一个安全序列。标准答案:利用安全性算法对T0时刻的资源分配情况进行分析,可得到如下表所示的安全性检测情况。可以看出,此时存在一个安全序列{P2,P3,P4,P1},故该系统是安全的。知识点解析:暂无解析23、如果此时P1和P2均发出资源请求向量Request(1,0,1),为了保证系统的安全性,应该如何分配资源给这两个进程,7说明你所采用的策略的原因。标准答案:若此时P1发出资源请求Request1(1,0,1),按银行家算法进行检查:Request1(1,0,1)≤Need1(2,2,2)Request1(1,0,1)≤AVailable(2,1,2)试分配并修改相应的数据结构,由此形成的资源分配情况如下表所示。知识点解析:暂无解析24、如果(2)中两个请求立即得到满足,系统此刻是否处于死锁状态?标准答案:如果(2)中两个请求立即得到满足,此刻系统并没有立即进入死锁状态,因为这时所有进程没有提出新的资源申请,全部进程均没有因资源请求没有得到满足而进入阻塞状态。只有当进程提出资源请求,且全部进程都进入阻塞状态时,系统才处于死锁状态。知识点解析:暂无解析25、系统有5个进程,其就绪时刻(指在该时刻已进入就绪队列)、服务时间如下表所示。分别计算采用先来先服务、短作业优先、高响应比优先的平均周转时间和带权周转时间。标准答案:(1)采用先来先服务调度时,执行作业的次序为P1、P2、P3、P4、P5,如下表所示。(2)采用短作业优先调度时,执行作业的次序为P1、P2、P5、P3、P4,如下表所示。(3)采用高响应比优先调度时,响应比=响应时间/运行时间。在时刻0,只有进程P1就绪,执行P1,在时刻3结束。此时刻只有P2就绪,执行P2,在时刻9结束。此时刻P3、P4、P5均就绪,计算它们的响应比分别为2.25、1.6、1.5,则选择执行P3,在时刻13结束。此时刻P4、P5均就绪,计算它们的响应比分别为2.4、3.5,则选择执行P5,在时刻15结束。此时刻只有P4就绪,执行P4,在时刻20结束。整个执行作业的次序为P1、P2、P3、P5、P4,如下表所示。知识点解析:暂无解析计算机专业基础综合(进程管理)模拟试卷第3套一、单选题(本题共16题,每题1.0分,共16分。)1、“可抢占”和“不可抢占”的优先级调度算法相比,()。A、前者开销小B、前者开销大C、两者开销大致相同D、两者开销不能相比标准答案:B知识点解析:因为“可抢占”优先级调度始终保证在处理机上运行的是优先级最高的进程,这样,当处理机正在运行某个进程时,很可能会被其他优先级更高的进程“抢占”引起处理机调度,与“不可抢占”算法相比,前者的调度次数会更频繁,而每调度一次都会引起保护现场、恢复现场的工作,所以“可抢占”的优先级调度算法开销更大。2、一个进程获得了除CPU以外的所有资源,则该进程可能处于()状态。A、运行B、就绪C、等待D、就绪和等待标准答案:B知识点解析:处于就绪状态的进程,只要获得处理机(被进程调度选中),即可变为运行状态。3、银行家算法在解决死锁问题中是用于()的。A、预防死锁B、避免死锁C、检测死锁D、解除死锁标准答案:B知识点解析:本题考查银行家算法在分配资源时采用安全性检查,从而避免死锁。4、保护现场是指将现场信息保存至()。A、磁盘B、各相应的寄存器C、进程的PCB中D、内存系统区标准答案:C知识点解析:进程控制块(PCB)是记录进程有关信息的一块主存,其中包括该进程的中断现场保护区,它是进程存在的唯一标识。5、计算机系统中判别是否有中断事件发生应是在()。A、进程切换时B、执行完一条指令后C、执行P操作后D、由用户态转入核心态时标准答案:B知识点解析:系统中,只有当执行完一条指令后,才判别是否有中断发生。6、若当前进程因时间片用完而让出处理机时,该进程应转变为()状态。A、就绪B、等待C、运行D、完成标准答案:A知识点解析:当时间片用光后,进程变为就绪状态。7、一种既有利于短小作业又兼顾到长作业的作业调度算法是()。A、先来先服务B、轮转C、最高响应比优先D、均衡调度标准答案:C知识点解析:暂无解析8、作业调度程序是从处于()状态的作业中选取一个作业并把它装入主存。A、输入B、收容C、执行D、完成标准答案:B知识点解析:在作业调度中,选取的是正在收容的作业装入内存。9、进程处于下列()等待状态时,它是处于非阻塞状态。A、等待从键盘输入数据B、等待协作进程的一个信号C、等待操作系统分配CPU时间D、等待网络数据进入内存标准答案:C知识点解析:等待操作系统分配CPU时间属于就绪状态,其他三种均属于阻塞状态。10、若系统中有五个并发进程涉及某个相同的变量A,则变量A的相关临界区是由()临界区构成。A、2个B、3个C、4个D、5个标准答案:D知识点解析:暂无解析11、在多进程的并发系统中,肯定不会因竞争()而产生死锁。A、打印机B、磁带机C、磁盘D、CPU标准答案:D知识点解析:暂无解析12、通常不采用()方法来解除死锁。A、终止一个死锁进程B、终止所有死锁进程C、从死锁进程处抢夺资源D、从非死锁进程处抢夺资源标准答案:D知识点解析:解除死锁的主要方法有:①终止一个或多个死锁进程;②剥夺死锁进程的资源。13、进程所请求的一次打印输出结束后,将使进程状态从()。A、运行态变为就绪态B、运行态变为等待态C、就绪态变为运行态D、等待态变为就绪态标准答案:D知识点解析:暂无解析14、共享变量是指()访问的变量。A、只能被系统进程B、只能被多个进程互斥C、只能被用户进程D、可被多个进程标准答案:D知识点解析:暂无解析15、UNIX系统中,进程调度采用的技术是()。A、时间片轮转B、先来先服务C、静态优先数D、动态优先数标准答案:D知识点解析:暂无解析16、死锁现象是由于()造成的。A、CPU数量不足B、内存数量不足C、多个进程抢夺并独占资源D、作业批处理标准答案:C知识点解析:死锁是指多个进程在占有一定资源的同时还寄希望得到其他进程占有的资源,而该进程也是占有一定的资源且不放弃的同时期望获得其他进程占有的资源,进程间相互不让步,造成各个进程均无法推进的现象。二、综合应用题(本题共10题,每题1.0分,共10分。)17、我们为某临界区设置一把锁W,当W=1时表示关锁,W=0时表示锁已打开。试写出开锁原语和关锁原语,并利用它们去实现互斥。标准答案:(1)开锁原语:unlock(W):W=0;关锁原语:lock(W);if(W==1)dono_op;W=1;(2)利用开关锁原语实现互斥:valW:semaphore:=0;beginparbeginprocess:beginrepeatlock(W);criticalsectionunlock(W);remaindersectionuntilfalse;endparend知识点解析:暂无解析18、试修改下面生产者一消费者问题解法中的错误。producer;beginrepeatproduceraniteminnextp;wait(mutex);wait(full);buffer(in):=nextp;signal(mutex);untilfalse;endconsumer:beginrepeatwait(mutex);wait(empty);nextc:=buffer(out);out:=out+1;signal(mutex);consumeriteminnextc;untilfalse;end标准答案:producer;beginrepeatproduceraniteminnextp;wait(mutex);wait(full);/*应为wait(empty),而且还应该在wait(mutex)的前面*/buffer(in):=nextp;/木缓冲池数组游标应前移:in:=(in+1)modn:*/signal(mutex);/*signal(full);*/untilfalse;endconsumer;beginrepeatwait(mutex);wait(empty);/*应为wait(full),而且还应该在wait(mutex)的前面*/nextc:=buffer(out);out:=out+1;/*考虑循环,应改为:out:=(out+1)modn;*/signal(mutex);/*signal(empty);*/consumeriteminnextc:untilfalse;end知识点解析:暂无解析19、3个进程P1、P2、P3互斥使用一个包含Ⅳ个(N>0)单元的缓冲区,P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用geteven()从该缓>中区中取出一个偶数并用counteven()统计偶数个数。请用信号量机制实现这3个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。标准答案:(1)定义信号量sl控制P1与P2之间的同步,s2控制P1与P3之间的同步,empty控制生产者与消费者之间的同步,mutex控制进程间互斥使用缓冲区。(2)程序如下:varsl=0,s2=0,empty=N,mutex=1;parbeginP1:beginX=produce();/*生成一个数*/P(empty);/*判断缓冲区是否有空单元*/P(mutex);/*缓冲区是否被占用术/Put();Ifx%2==0V(s2);/*如果是偶数,向P3发出信号*/elseV(s1);/*如果是奇数,向P2发出信号*/V(mutex);/*使用完缓冲区,释放木/endP2:beginP(s1);/*收到P1发来的信号,已产生一个奇数*/P(mutex);/*缓冲区是否被占用木/Getodd();Countodd():=countodd()+1;V(mutex);/*释放缓冲区*/V(empty);/*向P1发信号,多出一个空单元*/endP3:beginP(S2)/*收到P1发来的信号,已产生一个偶数*/P(mutex);/*缓冲区是否被占用*/Geteven():Counteven():=counteven()+1;V(mutex);/*释放缓冲区*/V(empty);/*向P1发信号,多出一个空单元*/endparend知识点解析:暂无解析20、假设程序PA和PB单独执行时所需的时间分别用TA和TB表示,并且假设TA=1h,TB=1.5h,其中处理器工作时间分别为TA=18min,TB=27min,如果采用多道程序设计方法,让PA和PB并行工作,假定处理器利用率达到50%,系统开销为15min,请问系统效率能提高多少?标准答案:(1)在串行情况下,两个程序运行时间共计2.5h;在并行方式下,处理器利用率为50%,说明处理器的工作时间占总运行时间的50%。根据已知条件,“处理器工作时间分别为TA=18min,TB=27min”,即总运行时间为(18+27)÷50%(min),考虑到还有15min系统开销,故并行与串行的效率比为并行处理所需的时间÷串行处理所需要的时间总和=[(18+27)÷50%+15]÷2.5÷60=70%。(2)即采用多道处理技术之后,完成程序PA和程序PB所需的时间为串行处理方法的70%。因此可以说效率提高了30%。知识点解析:暂无解析某多道程序设计系统配有一台处理器和两台外设101、102,现有3个优先级由高到低的J1、J2、J3都已装入了主存,它们使用资源的先后顺序和占用时间分别是:j1:IO2(30ms),CPU(10ms);IO1(30ms),CPU(10ms);J2:IO1(20ms),CPU(20ms);IO2(40ms);J3:CPU(30ms),IO1(20ms)。处理器调度采用可抢占的优先数算法,忽略其他辅助操作时间,回答下列问题。21、分别计算作业J1、J2和J3从开始到完成所用的时间。标准答案:为了清楚地描述作业执行情况,我们对题目假设的情况分析如下:J1占用IO2传输30ms时,J1传输完成,抢占J2的CPU,运行10ms,再传输30ms,运行10ms,完成。J1从开始到完成所用的时间为:30+10+304+10=80(ms)。J2与其并行地在I1上传输20ms,抢占J3的CPU,J2运行10ms后,被J1抢占CPU,等待10ms之后,J2再次得到CPU,运行10ms,J2启动IO2传输,40ms完成。J2从开始到完成所用的时间为:20+10+10+10+40=90(ms)。J3在CPU上执行20ms,被J2抢占CPU,等待30ms,再运行10ms,等待10ms,J3启动IO1运行20ms的传输,完成。J3从开始到完成所用的时间为20+304-10+10+20=90(ms)。知识点解析:暂无解析22、3个作业全部完成时CPU的利用率。标准答案:三个作业全部完成时,CPU的利用率为(10+20+30+10)/90=7/9=7.8%。知识点解析:暂无解析23、3个作业全部完成时外设IO1的利用率。标准答案:三个作业全部完成时,外设IO1的利用率为(20+30+20)/90=7/9=78%。知识点解析:暂无解析有A、B两个程序,程序A按顺序使用CPU为10s,使用设备甲为5s,使用CPU为5,使用设备乙为5s,最后使用CPU为10s。程序B按顺序使用设备甲为10s、使用CPU为10s,使用设备乙为5s,再使用CPU为5s,使用设备乙为10s,试问:24、在顺序环境下执行程序A和程序B,CPU的利用率是多少?标准答案:程序A和程序B顺序执行时,程序A执行完毕程序B才开始执行。两个程序共耗时75s,其中占用CPU的时间为40s,因此顺序执行时CPU的利用率为40÷75=53%。知识点解析:暂无解析25、在多道程序环境下,CPU的利用率是多少?标准答案:在多道程序环境下,两个程序并发执行,其执行情况如下表所示。由表中数据可以看出,两个程序共耗时40s,其中CPU运行时间为40s,故此时CPU的利用率为40/40=100%。知识点解析:暂无解析26、何谓死锁?产生死锁的原因和必要条件是什么?在解决死锁问题的几个方法中,哪种方法最容易实现?哪种方法使资源的利用率最高?标准答案:(1)死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。(2)产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法。(3)产生死锁的必要条件是互斥条件、请求和保持条件、不可剥夺条件和循环等待条件。(4)解决死锁可归纳为四种方法:预防死锁、避免死锁、检测死锁和解除死锁。(5)解决死锁的四种方法中,预防死锁是最容易实现的,而避免死锁的发生则可以使资源的利用率最高。知识点解析:暂无解析计算机专业基础综合(进程管理)模拟试卷第4套一、单选题(本题共16题,每题1.0分,共16分。)1、进程处于()等待状态时,它是处于非阻塞状态的。A、等待从键盘输入数据B、等待协作进程的一个信号C、等待操作系统分配CPU寸间D、等待网络数据进入内存标准答案:C知识点解析:暂无解析2、下列叙述中,错误的是()。A、操作系统是用户与计算机之间的接口B、程序的并发执行,使程序失去了顺序执行时具有的封闭性和可再现性,程序与程序的执行不再一一对应C、进程从一个状态到另一个状态的转换,都是靠使用不同的原语来实现的D、在单CPU系统中,任何时刻处于就绪状态的进程有多个,而且只有处于就绪状态的进程经调度程序选中后才可进入运行状态标准答案:C知识点解析:从用户的角度看,操作系统是用户使用计算机的桥梁,用户通过操作系统的两类接口来达到操纵计算机的目的。选项A正确。选项B的叙述也是正确的,因为这正是引入进程概念的原因。进程从一个状态到另一个状态的转换是一个非常复杂的过程,除了要使用不同的原语外,有时还要借助于硬件触发器才能完成。例如,UNIX系统中,从系统态到用户态的转换要借助硬件触发器。因此,选项C错误。处于就绪状态的进程已经获得了除CPU之外的所有资源,由于只有一个CPU,任何时刻就只能有一个进程获得CPU,而其他的就只能在就绪状态对应的队列上排队等待调度程序的调度。所以选项D也正确。3、进程调度是从()选择一个进程投入运行的。A、就绪队列B、等待队列C、作业后备队列D、提交队列标准答案:A知识点解析:处于就绪队列的进程是获得了除处理机以外的所有资源处于准备执行的状态。进程调度就是负责从就绪队列中挑选进程投入运行的。4、下列叙述中,正确的是()。A、分时系统中,时间片越小,响应时间越长B、多道程序的引入,主要是为了提高CPU及其他资源的利用率C、飞机票订票系统是分时系统D、PCB是进程存在的唯一标志,而程序是系统感知进程存在的唯一实体标准答案:B知识点解析:分时系统的响应时间T≈nq,n是用户数目,而q是时间片。当在用户数目一定的情况下,时间片越小,响应时间越短。因此,选项A错误。在单道程序环境中,系统的全部资源为一个作业所独占,如果该作业在进行输入或输出时,CPU仍然被它所占有,处于等待状态。由于CPU与外设处理速度上的差异,如果采用多道程序设计技术,当某个作业输入或输出时,CPU就可处理其他的作业,其他资源也是类似的。因此,选项B正确。飞机票订票系统是实时信息处理系统。所以,选项C错误。PCB是进程存在的唯一标志,也是系统感知进程存在的唯一实体,而进程的程序部分描述了进程所要完成的功能。因此,选项D错误。5、一个进程被唤醒,意味着()。A、该进程重新占有了CPUB、进程状态变为就绪C、它的优先权变为最大D、其PCB移至就绪队列的队首标准答案:B知识点解析:进程被唤醒是进入就绪队列。是否插入到就绪队列的什么地方,取决于就绪的管理方法和进程调度的算法。如果进程调度是最高优先数优先,该进程按优先数插入该队列中;如果该队列是按到达的先后次序排列的,则按到达的先后插入。6、进程和程序的本质区别是()。A、存储在内存和外存B、顺序和非顺序执行机器指令C、分时使用和独占使用计算机资源D、动态和静态特征标准答案:D知识点解析:程序是指令的集合,而进程是可以和其他程序并发执行的程序的一次执行过程。程序可以作为资料长期保存,而进程有从产生到消亡的过程。7、系统感知进程的唯一实体是()。A、JCBB、FCBC、PCBD、SJT标准答案:C知识点解析:进程控制块PCB是进程存在的唯一标志。8、一进程在某一时刻具有()。A、一种状态B、两种状态C、三种状态D、四种状态标准答案:A知识点解析:进程可能处于就绪、运行、等待三种基本状态,但进程在任一时刻只能处于一种状态。9、在单处理机的多进程系统中,进程什么时候占用处理机以及决定占用时间的长短是()。A、进程相应的代码长度B、进程总共需要运行的时间C、进程特点和进程调度策略D、进程完成什么功能标准答案:C知识点解析:本题考查进程调度的时机和进程调度的策略。进程调度的时机与进程特点有关,例如,进程是CPU繁忙型还是I/O繁忙型、自身的优先级等。但是仅有这些特点是不够的,能否得到调度还取决于进程调度策略,若采用优先级调度算法,则进程的优先级才起作用。至于占用处理机运行时间的长短,则要看进程自身,若进程是I/O繁忙型,运行过程中要频繁访问I/O,也就是说,可能会频繁主动放弃CPU,所以,占用CPU的时间就不会长,一旦放弃CPU,则必须等待下次调度。若进程是CPU繁忙型,则一旦占有CPU就可能会运行很长时间,但是,运行时间还取决于进程调度策略。多数情况下,交互式系统为改善用户的响应时间,大多采用时间片轮转算法,这种算法在进程长期占用CPU到一定时间后,会强制将其换下,以保证其他进程的CPU使用权。所以,本题的正确答案应为选项C。10、进程从运行状态变为阻塞的原因可能是()。A、输入/输出事件发生B、时间片到C、输入/输出事件完成D、某个进程被唤醒标准答案:A知识点解析:正在运行的进程如果要申请输入或输出,这时进程的状态将从运行变为等待,将CPU让出,等待输入或输出完成。11、进程创建原语的任务是()。A、为进程编制程序B、为进程建立PCB表C、为进程分配CPUD、为进程分配所需的各种资源标准答案:B知识点解析:进程存在的标志是进程控制块,所以创建进程就是要创建PCB,并将有关参数填入PCB中。12、进程被创建后即进入()排队。A、阻塞队列B、就绪队列C、缓冲队列D、运行队列标准答案:B知识点解析:进程创建后,按就绪队列的排列顺序插入其中,等待进程调度程序的调度。13、多道程序系统中,()的作用是从就绪状态中挑选一个进程投入运行。A、作业调度B、交换调度C、进程调度D、SPOOLing调度标准答案:C知识点解析:暂无解析14、多道系统环境下,操作系统分配资源以()为基本单位。A、作业B、指令C、程序D、进程标准答案:D知识点解析:多道环境下,程序这个概念已经难以反映程序并发执行的特点,所以,在多道环境下,为了更好地描述程序并发执行的特点,引入了进程的概念。进程是在多道环境下资源分配的基本单位。15、进程调度主要负责()。A、选作业进入内存B、选一进程占有CPUC、建立一进程D、撤销一进程标准答案:B知识点解析:进程调度主要负责选择下一个将要运行的进程,进程运行与进程占用CPU是同一过程。16、出现下列的情况可能导致死锁的是()。A、进程释放资源B、一个进程进入死循环C、多个进程竞争资源出现了循环等待D、多个进程竞争使用共享型的设备标准答案:C知识点解析:死锁的定义:两个或两个以上并发进程,如果每个进程持有某种资源,而又等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进。此时,每个进程都占用了一定的资源,但又都不能向前推进。这种现象称为死锁。死锁的起因:互斥条件,不可剥夺条件,部分分配,环路条件。二、综合应用题(本题共10题,每题1.0分,共10分。)17、简述判断死锁的必要条件。标准答案:(1)互斥条件。进程竞争的资源必须互斥使用。(2)请求与保持条件。当前已拥有资源的进程,仍能申请新的资源,而当该进程因为新的资源被其他进程占据而被阻塞时,它仍保持自己的资源不释放。(3)不可剥夺条件。进程申请的资源只能在使用完毕时自行释放。(4)循环等待条件。存在一个至少包含两个进程的循环等待链,链中的每个进程都在等待下一个进程所占有的资源。知识点解析:暂无解析18、假定系统有三个并发进程read、move和print共享缓冲器B1和B2。进程read负责从输入设备上读信息,每读出一条记录后把它存放到缓冲器B1中。进程move从缓冲器B1中取出一条记录,加工后存入缓冲器B2。进程print将B2中的记录取出打印输出。缓冲器B1和B2每次只能存放一条记录。要求三个进程协调完成任务,使打印出来的与读入的记录的条数,次序完全一样。请用wait和signal原语写出它们的并发程序。标准答案:beginSR,SM1,SM2,SP:semaphore;B1,B2:record;SR:=1;SM1:=0;SM2:=1;SP:=0;cobeginprocessreadX:record;beginR:(接收来自输入设备上一条记录)X:=接收的一条记录;wait(SR);B1:=X;signal(SM1);gotoR;end;ProcessmoveY:record;beginM:wait(SMl);Y:=B1:Signal(SR)加工Ywait(SM2);B2:=Y;signal(SP);gotoM;end;ProcessprintZ:record;beginP:wait(SP);Z:=B2;signal(SM2)打印ZgotoP;end;coend;end;知识点解析:暂无解析19、举例说明,P、V操作为什么要求设计成原语(即对同一信号量上的操作必须互斥)。P(S)操作:S.value--;if(S.value<0){AddthisprocesstoS.L;Block();}V(S)操作:S.value++:if(s.value<=0){RemoveaprocessPfromS.L:Wakeup(P);}标准答案:例如,用P、V操作来实现进程对临界资源互斥使用。此时,只需定义一个信号量S,其初值{1,NULL},并在临界区前执行P(S)操作,而在临界区后执行V(S)操作。此时P、V操作不设计成原语,那么在执行P、V操作时进程可以被中断。由于在初始状态下临界资源空闲,故应允许第一个申请临界资源的进程进入临界区使用临界资源,但如果该进程在执行到P操作的语句S.value一一后(此时S.Value的值为0)便被另一个进程中断,而那个进程也企图通过执行P(S)操作进入临界区,则第二个进程也必须执行语句S.value一,从而将S.value的值为一1,并由于S.value<0而被阻塞,而第一个进程再次获得CPU后也同样由于S.value<0而被阻塞,这就造成了临界资源虽然空闲但进程却申请不到临界资源的情况,也就是说,此时的P、V操作已无法满足同步机制的要求。同样,一个执行P(S)操作的进程被中断后另一进程去执行V(S)操作,一个执行V(S)操作的进程被中断后而另一个进程去执行P(S)或V(S)操作,都将发生混乱而难以实现进程同步。因此,P、V操作必须设计成原语的方式。知识点解析:暂无解析20、并发使得处理机的利用率得到提高,其主要原因是处理机与I/O可以同时为多个进程服务,也即处理机与I/O设备真正地并行。但是处理机的利用率提高并不是简单地将两个进程的处理机利用率相加,而是遵循一定的规律。现在有一个计算机系统采用多道程序技术实现了并发,调度算法采用时间片轮转,时间片很小可以不计进程并发时的次序。忽略计算机系统的开销。假设进程创建时间和完全占有CPU运行的确切时间如下表所示。已知其I/O繁忙率为80%,处理机的利用率为20%。请计算并填写下列空格和图表空格处。标准答案:本题考查的是并发进程之间的计算。计算机引入多道程序设计技术主要是为提高处理机的利用率。在多道程序并发的情况下,处理机的利用

温馨提示

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

评论

0/150

提交评论