《操作系统复习题2.docx》由会员分享,可在线阅读,更多相关《操作系统复习题2.docx(12页珍藏版)》请在优知文库上搜索。
1、一、选择题1 .在进程的组成局部之中,进程在运行中不可修改的局部是_B.A,私用程序段C.数据段B.共享程序段D.进程控制块2 .响应比高者优先作业调度算法是以计算时间和D一来考虑的。A.输入时间B.完成时间C.周转时间D.等待时间3 .在消息缓冲通信中,消息队列属于一A_资源。A.临界B.共享C.永久D,可剥夺4 .进程间的同步是指进程间在逻辑上的相互B关系。A.联接B.制约C.继续D.调用5 .最适合于分时系统的进程调度算法是D_oA.先来先效劳(FCFS)C.优先数法B.最短作业优先(SSJF)D.轮转法(RR)6 .进程A和进程B通过共享缓冲区协作完成数据处理,进程A负责生产数据并放入
2、缓冲区,进程B从缓冲区中读数据并输出。进程A和进程B之间的关系是_B_oA.互斥关系7.在优先级调度中,A.短进程 1B.同步关系 C.互斥和同步D.无制约关系c_类进程可能被“饿死”,即长时间得不到调度。B.长进程C.低优先级进程D.大内存进程8 .进程从运行状态到阻塞状态可能是由于C_oA,进程调度程序的调度B.现运行进程的时间片耗尽C.现运行进程执行了Wait操作D.现运行进程执行了SignaI操作9 .银行家算法在解决死锁问题中是用于.的。A.预防死锁 B.防止死锁10 . D不是进程调度算法。A.时间片轮转法B.C.响应比高者优先法D.C.检测死锁D.解除死锁先来先效劳方法 均衡调度
3、算法11.下面关于线程的表达中正确的选项是一A。A.线程包含CPU现场,可以独立执行程序B.C.线程之间的通信必须使用系统调用函数D.每个线程有自己独立的地址空间 进程只能包含一个线程12.并发进程之间.A.彼此无关B.必须同步 C.必须互斥D.可能需要同步或互斥13 .当一个进程运行时,系统可能基于某种原那么强行将其撤下,把处理器分配给其他进程,这种调度方式是_BoA.非剥夺方式B.剥夺方式C.中断方式D.查询方式14.信号量S不能用于.A. signalB. waitD_操作。C.赋初值D.运算表达式15.A.调度B.进程C.同步D.信号量D_是种只能进行wait操作和SignaI操作的特
4、殊变量16 .分配给进程占用处理机的时间到而强迫进程P让出处理器,或有更高优先级的进程要运行,迫使正在运行的进程P让出处理器,那么进程P状态变化的情况为-AA.运行态一就绪态B.运行态一等待态C.就绪态一运行态D.等待态一就绪态17 .下面关于进程的表达中正确的选项是_AoA.进程获得CPU运行是通过调度得到的B.优先级是进程调度的重要依据,一旦确定就不能改变C.在单CPU的系统中,任何时刻都有一个进程处于运行状态D.进程申请CPU得不到满足时,其状态变为阻塞18 .操作系统通过B对进程进行管理。A.进程B.进程控制块C.进程启动程序D.进程控制区19 .假设一个进程拥有100个线程,这些线程
5、属于用户级线程,它们在系统调度执行时间上占用的时间片个数是一AoA.1B.100C.1/100D.020 .解除死锁通常不采用的方法是_DoA.终止一个死锁进程B.终止所有死锁进程C.从死锁进程处抢夺资源D.从非死锁进程处抢夺资源21 .到其他3种状态的进程状态是_DoA.就绪B.阻塞C.完成D.执行22 .信号量的初值为2,当前值为-3,那么表示等待进程有_C一A.1个B.2个C.3个D.5个23 .Wait操作可能导致_CoA.进程就绪B.进程结束C.进程阻塞(等待)D.新进程创立24 .在操作系统中为防止系统的死锁采用一AoA.银行家算法B.破坏占有并等待条件C.死锁检测和恢复D.破坏非
6、剥夺条件25 .以下的进程状态变化中不可能发生的变化是_AoA.等待一运行B.运行一等待C.运行一就绪D.等待一就绪26 .如果有三个进程共享同一互斥段,而且每次最多允许两个进程进入该互斥段,那么信号量的初值应设置为一COA.3B.1C.2D.027 .进程之间交换数据不能通过_C途径进行。A,共享文件B.消息传递C.访问进程地址空间D.访问共享存储区域28 .进程控制块PCB不包括的内容是一DoA.CPU现场B.进程优先级C.进程运行状态D.文件缓冲区29 .PCB是描述进程状态和特性的数据结构,一个进程_DoA,可以有多个PCBB.可以和其他进程共用一个PCBC.可以没有PCBD,只能有唯
7、一的PCB30 .资源顺序分配法破坏了死锁发生的一D必要条件。A.互斥占用B.占有等待C,非剥夺D.循环等待31 .进程和程序的本质区别是_B0A,内存和外存B.动态和静态特征C.共享和独占使用计算机资源D.顺序和非顺序执行指令32 .设有两个进程共享3个同类资源,为使系统不死锁,每个进程最多可以申请_C资源。A.0B.1C.2D.333 .作业调度中的先来先效劳算法是以一C_为出发点考虑的。A.作业执行时间B.作业的周转时间C.作业等待时间D,等待时间加运行时同34 .设m为同类资源数,n为系统中的并发进程数。当n个进程共享m个互斥资源时,每个进程的最大需求是w。以下情况下,系统会死锁的是_
8、DoA.m=2,n=l,w=2B.m=2,n=2,w=lC.m=4,n=3,W=2D.m=4,n=2,w=335 .用于解决进程间互斥的方法是Bo信号量及wait、Signal操作加锁与解锁信箱方式消息缓冲方式特权指令方式A.、和B.和C.和D.和36 .在操作系统中,每个进程具有独立性,进程之间又具有相互制约性。对于任何两个并发进程,它们_COA.必定无关B.必定相关C.可能相关D.可能相同二、简答题1.什么是线程?进程和线程的关系是什么?线程可定义为进程内的一个执行单位,或者定义为进程内的一个可调度实体。在具有多线程机制的操作系统中,处理机调度的根本单位不是进程而是线程。一个进程可以有多个
9、线程,而且至少有一个可执行线程。进程和线程的关系是:(1)线程是进程的一个组成局部。(2)进程的多个线程都在进程的地址空间活动。(3)资源是分给进程的,而不是分给线程的,线程在执行中需要资源时,系统从进程的资源分配额中扣除并分配给它。(4)处理机调度的根本单位是线程,线程之间竞争处理机,真正在处理机上运行的是线程。(5)线程在执行过程中,需要同步。2 .进程能自己将自己唤醒吗?进程能自己将自己撤销吗?唤醒进程和撤消进程都是要通过CPU上运行程序来实现的。一个进程入睡了,它就不可能被调度到CPU上运行;一个进程在撤消前必须先进入终止状态,而处于终止状态的进程不可能被调度到CPU上运行。因此,进程
10、被唤醒、被撤消都不能由自己来完成,只能由别的进程实现。3 .父进程创立子进程之后,父子进程间的关系是什么?一个进程创立子进程之后,进程与产生的进程之间的关系是父子关系,分别成为进程和子进程。子进程一经产生就与你进程并发执行,子进程共享父进程和子进程。子进程一经产生就与你进程并发执行,子进程共享父进程的正文段和已经翻开的文件。4 .简述引进线程的好处。(1)以线程作为系统调度的根本单位,减少了系统的时空开销。以进程为系统调度的根本单位的系统中,进程的切换是很频繁的。在切换中由于要保存当时的运行环境,还要设置新选中的进程的运行环境,这既花费了处理机的时间,又增加了主存的空间,从而也限制了系统进程的
11、数量和进程的切换速度。(2)引进线程提高了系统的并行能力。线程作为进程内的一个可执行实体,减少了并行粒度。线程作为调度的根本单位而不是资源分配的根本单位,调度更为容易,而且采用线程提高系统的并行能力比采用进程更为有效。(3)同一进程的线程共享进程的用户地址空间,所以同一进程的线程间的通信更容易实现。5 .当一个进程的父进程被撤销时,该进程是撤销好还是不撤销好?在实际系统中,两种处理方法都是可行的,且各有优缺点。假设撤消,那么该进程的任务可能还没有完成,这显然是不利的,特别是当该进程的运行结果对其他进程的运行很重要(如该进程是其他进程的前趋进程,没有它的运行结果其他进程无法运行)时;假设不撤消,
12、那么该进程又可能成为不可控的”孤儿”,从而产生不可预测的结果。比拟好的做法是,当一个进程的父进程被撤消时,可以将该进程”过继”给系统内一个级别较高的进程(如UniX中的1#进程),让它有一个“新的父亲”,这样既可以继续完成其任务又不会成为不可控的。6 .为什么说进程同步问题关系到OS的成败?同步机制应遵循的准那么是什么?进程同步问题假设处理不当,有可能会产生种种”与时间有关性错误”,特别是当两个或多个进程共享了公共变量而又没有互斥地使用这些变量时,极有可能导致用户程序运行结果的不正确,这量种灾难性的后果。这种OS显然是不成功的,是用户不敢使用的。有以下四条准那么:空闲让进、忙那么等待、有限等待
13、、让权等待。7 .进程之间存在哪几种相互制约关系?各是什么原因引起的?以下活动分别属于哪种制约关系?(1)假设干同学去图书馆借书。(2)两队举行篮球比赛。(3)流水线生产的各道工序。(4)商品生产和消费。进程间存在着两种相互制约的关系:直接制约关系(即同步问题)和间接制约关系(即互斥问题)。同步问题是存在逻辑关系的进程之间相互等待产生的制约关系,互斥问题是相互无逻辑关系的进程间竞争使用相同的资源所发生的制约关系。(1)属于互斥关系,因为书的个数是有限的,一本书只能借给一个同学。(2)属于互斥关系,篮球只有一个,两队都要争夺。(3)属于同步关系,各道工序的开始都依赖前道工序的完成。(4)属于同步
14、关系,商品没生产出来,消费无法进行,商品未消费完,生产也无需进行。8 .高级调度和低级调度的主要任务是什么?为什么引入中级调度?(1)高级调度又称为作业调度。它是批处理系统中使用的一种调度。其主要任务是按照某种算法从外存的后备队列上选择一个或多个作业调入内存,并为其创立进程、分配必要的资源,然后再将所创立的进程控制块插入就绪队列中。(2)低级调度又称进程调度。它是距离硬件最近的一级调度。其主要任务是按照某种算法从就绪队列上选择一个(或多个)进程,使其获得CPU。(3)引入中级调度的目的是为了提高内存利用率和系统存吐量。其功能是,让那些暂时不能运行的进程不再占用珍贵的内存资源,而是调其到外存上等
15、候。此时的进程状态为挂起状态。当这些进程重新具备运行条件且内存空闲时,由中级调度选择一局部挂起状态的进程调入内存并将其状态变为就绪状态。9 .在剥夺调度中,有哪些剥夺原那么?(1)时间片原那么。在轮转算法中,CPU轮流为诸多进程效劳,每个进程运行完自己的时间片后,系统就将CPU剥夺过来,交给下一个进程使用。(2)优先级原那么。为紧迫的作业赋予较高的优先级,这种作业到达系统或由阻塞状态被唤醒后,假设其优先级高于当前运行的进程的优先级,可以剥夺当前运行进程的CPUo(3)短作业(进程)优先原那么。假设一个作业(进程)到达系统,其运行长度比当前运行的进程长度明显的短,那么剥夺当前运行的进程CPU。10 .引起进程调度的主要因素。1) 一个进程运行完毕。(2) 一个正在运行的进程被阻塞。(3)在抢占式调度中,一个高优先级的进程被创立。(4)在抢占式调度中,一个高优先级进程