苏州大学操作系统习题集(大学期末复习资料)_第1页
苏州大学操作系统习题集(大学期末复习资料)_第2页
苏州大学操作系统习题集(大学期末复习资料)_第3页
苏州大学操作系统习题集(大学期末复习资料)_第4页
苏州大学操作系统习题集(大学期末复习资料)_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

PAGE22PAGE16选择题在计算机系统中配置操作系统的主要目的是(A),操作系统的主要功能是管理计算机系统中的(B),其中包括(C)、(D),以及文件和设备。这里的(C)管理主要是对进程进行管理。A:提高系统资源利用率B:资源;C:处理机;D:存储器操作系统有多种类型:允许多个用户以交互方式使用计算机的操作系统,称为(A);允许多个用户将若干个作业提交给计算机系统集中处理的操作系统称为(B);在(C)的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应;在IBM-PC机上的操作系统称为(D)。A,B,C,D:(1)批处理操作系统;(2)分时操作系统;(3)实时操作系统;(4)微机操作系统;(5)多处理机操作系统。操作系统是一种(A),它负责为用户和用户程序完成所有(B)的工作,(C)不是操作系统关心的主要问题。A:(1)应用软件;(2)系统软件;(3)通用软件;(4)软件包。B:(1)与硬件无关并与应用无关;(2)与硬件相关并与应用无关;(3)与硬件无关并与应用相关;(4)与硬件相关并与应用相关。C:(1)管理计算机裸机;(2)设计、提供用户程序与计算机硬件系统的接口;(3)管理计算机中的信息资源;(4)高级程序设计语言的编译。用户在程序设计过程中,可通过(A)获得操作系统的服务。A:(1)库函数;(2)键盘命令;(3)系统调用;(4)内部命令。在OS中采用多道程序设计技术,能有效地提高CPU、内存和I/O设备的(A),为实现多道程序设计需要有(B)A:(1)灵活性;(2)可靠性;(3)兼容性;(4)利用率。B:(1)更大的内存;(2)更快的CPU;(3)更快的外部设备;(4)更先进的终端。推动批处理系统形成和发展的主要动力是(A),推动分时系统形成和发展的动力是(B),推动微机OS发展的主要动力是(C)。A:提高系统资源利用率;B:方便用户;C:计算机硬件的不断更新换代;在设计分时操作系统时,首先要考虑的是(A);在设计批处理操作系统时,首先要考虑的是(B);在设计实时操作系统时,首先要考虑的是(C)。A:交互性和响应时间;B:周转时间和系统吞吐量;C:实时性和可靠性。在多道批处理系统中,为了充分利用各种资源,系统总是优先选择(A)多个作业投入运行;为了提高吞吐量,系统总是想方设法缩短用户作业的(B)。A:(1)适应于内存容量的;(2)计算量大的;(3)I/O量大的;(4)计算型和I/O型均衡的。B:(1)周转时间;(2)运行时间;(3)提交时间;(4)阻塞时间。从下面关于操作系统的论述中,选出一条正确的论述。(3)(1)对于批处理作业必须提供相应的作业控制信息。(2)对于分时系统,不一定全部提供人机交互功能。(3)从响应角度看,分时系统与实时系统的要求相似。(4)采用分时系统的计算机系统中,用户可以独占计算机操作系统中的文件系统。(5)从交互角度看,分时系统与实时系统相似。分时系统的响应时间(及时性)主要是根据(A)确定的,而实时系统的响应时间则是由(B)确定的。A:控制对象所能接受的时延;B:用户所能接受的等待时间;在分时系统中,为使多个用户能够同时与系统交互,最关键的问题是(A);当用户数目为100时,为保证响应时间不超过2s,此时的时间片最大应为(B)。A:(1)计算机具有足够高的运行速度;(2)内存容量应足够大;(3)系统能及时地接收多个用户的输入;(4)能在一较短的时间内,使所有用户程序都得到运行;(5)能快速进行内外存对换。B:(1)10ms;(2)20ms;(3)50ms;(4)100ms;(5)200ms。分时系统和实时系统都具有交互性,实时系统的交互性允许用户访问(A);分时系统的交互性允许用户请求系统提供(B)。A:(1)文字编辑程序;(2)专用服务程序;(3)专用硬件;(4)数据处理程序。B:(1)数据处理服务;(2)资源共享服务;(3)数据通信服务;(4)多方面的服务;(5)数据处理和资源共享服务。实时操作系统必须在(A)内处理完来自外部的事件,(B)不是设计实时系统主要追求的目标。A:(1)响应时间;(2)周转时间;(3)规定时间;(4)调度时间。B:(1)安全可靠;(2)资源利用率;(3)及时响应;(4)快速处理。在下列系统中,(A)是实时信息系统,(B)是实时控制系统。A,B:(1)计算机激光照排系统;(2)民航售票系统;(3)办公自动化系统;(4)计算机辅助设计系统;(5)火箭飞行控制系统。从下面关于并发性的论述中,选出一条正确的论述。(1)并发性是指若干事件在同一时刻发生。(2)并发性是指若干事件在不同时刻发生。(3)并发性是指若干事件在同一时间间隔内发生。(4)并发性是指若干事件在不同时间间隔内发生。从下述关于模块化程序的叙述中,选出5条正确的叙述。(1)使程序设计更为方便,但比较难维护。(2)便于由多人分工编制大型程序。(3)便于软件功能扩充。(4)在内存能够容纳的前提下,应使模块尽可能大,以减少模块的个数。(5)模块之间的接口叫数据文件。(6)只要模块接口不变,各模块内部实现细节的修改,不会影响别的模块。(7)使程序易于理解,也利于排错。(8)模块间的单向调用关系,形成了模块的层次式结构。(9)模块越小,模块化的优点越明显,一般来说,一个模块的大小在10行以下。(10)一个模块实际上是一个进程。采用(A)结构时,将OS分成用于实现OS最基本功能的内核和提供各种服务的服务器两个部分;通常,下列模块中必须包含在操作系统内核中的是(B)模块。A:(1)整体化;(2)模块化;(3)层次式;(4)微内核。B:(1)内存分配;(2)中断处理;(3)文件处理;(4)命令处理。与早期的OS相比,采用微内核结构的OS具有很多优点,但这些优点不包含(A)。A:(1)提高系统的可扩展性;(2)提高了OS的运行效率;(3)增强了系统的可靠性;(4)使OS的可移植性更好。在8位微机上占据统治地位的操作系统是(A),16位微机事实上的操作系统标准是(B)。A,B:(1)CP/M;(2)MS-DOS;(3)UNIX;(4)Xenix。在3.X版本以前的MS-DOS是(A)操作系统,Windows95是(B)操作系统,WindowsXP是(C),它们都是由(D)开发的。A,B,C:(1)单用户单任务;(2)单用户多任务;(3)多用户单任务;(4)多用户多任务。D:(1)IBM公司;(2)Microsoft公司;(3)Microsoft和IBM联合;(4)Bell实验室。OS/2操作系统最初是由(A)开发的,它属于(B)类操作系统;UNIX操作系统最初是由(C)推出的,它属于(D)类操作系统。A,C:(1)IBM公司;(2)Microsoft公司;(3)Microsoft和IBM联合;(4)Bell实验室。B,D:(1)单用户单任务;(2)单用户多任务;(3)多处理机;(4)多用户多任务。在WINDOWS98操作系统中,用户在用word输入文字的同时用realplayer看电影,那么,word和realplayer这两个进程是D执行。A.并行 B.串行 C.顺序 D.并发一般来说,为了实现多道程序设计,计算机首先需要有A。A.更大的内存 B.更快的外部设备 C.更快的CPU D.更先进的终端采用Microkernel结构的操作系统有B。A.DOS B.WINDOWSXP C.WINDOWS98 D.Linux紧耦合系统就是D。A.分时操作系统 B.分布式操作系统 C.网络操作系统 D.并行操作系统以下不属于操作系统部件的是B。A.进程管理 B.数据库管理 C.保护系统 D.命令解释器系统从用户的观点看,操作系统是A。A.用户与计算机之间的接口B.控制和管理计算机资源的软件C.合理地组织计算机工作流程的软件D.由若干层次的程序按一定的结构组成的有机体操作系统的功能是进行处理机管理、B管理、设备管理及信息管理。A.进程 B.存储器 C.硬件 D.软件操作系统中采用多道程序设计技术提高CPU和外部设备的A。A.利用率 B.可靠性 C.稳定性 D.兼容性操作系统是现代计算机系统不可缺少的组成部分,是为了提高计算机的B和方便用户使用计算机而配备的一种系统软件。A.速度 B.利用率 C.灵活性 D.兼容性操作系统的基本类型主要有B。A.批处理系统、分时系统及多任务系统B.实时操作系统、批处理操作系统及分时操作系统C.单用户系统、多用户系统及批处理系统D.实时系统、分时系统和多用户系统所谓B是指将一个以上的作业放入主存,并且同时处于运行状态,这些作业共享处理机的时间和外围设备等其他资源。A.多重处理 B.多道程序设计 C.实进处理 D.共行执行多道批处理系统硬件支持是20世纪60年代初发展起来的B。A.RISC技术 B.通道和中断机构 C.集成电路 D.高速内存C操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。A.网络 B.分布式 C.分时 D.实时如果分时操作系统的时间片一定,那么,则响应时间越长。A.用户数越少 B.用户数越多 C.内存越少 D.内存越多分时操作系统通常采用B策略为用户服务。A.可靠性和灵活性 B.时间片轮转 C.时间片加权分配 D.短作业优先C操作系统允许用户把若干个作业提交计算机系统。A.单用户 B.分布式 C.批处理 D.监督若把操作系统看作计算机系统资源的管理者,下列的D不属于操作系统所管理的资源。A.程序 B.内存 C.CPU D.中断在进程管理中,当C时,进程从阻塞状态变为就绪状态。A.进程被进程调度程序选中 B.等待某一事件C.等待的事件发生 D.时间片用完分配到必要的资源并获得处理机时的进程状态是B。A.就绪状态 B.执行状态 C.阻塞状态 D.撤消状态P、V操作是A。A.两条低级进程通信原语 B.两组不同的机器指令C.两条系统调用命令 D.两条高级进程通信原语设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是A。A.没有运行进程,有2个就绪进程,n个进程处于等待状态。B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。若P、V操作的信号量S初值为2,当前值为-1,则表示有B等待进程。A.0个 B.1个 C.2个 D.3个进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是D。A.时间片用完 B.等待某事件发生C.等待的某事件已发生 D.被进程调度程序选中进程的三个基本状态在一定条件下可以相互转化,进程由运行状态变为阻塞状态的条件是B。A.时间片用完 B.等待某事件发生C.等待的某事件已发生 D.被进程调度程序选中下列的进程状态变化中,C变化是不可能发生的。A.运行就绪 B.运行就绪 C.等待运行 D.等待就绪一个运行的进程用完了分配给它的时间片后,它的状态变为A。A.就绪 B.等待 C.运行 D.由用户自己确定用V操作唤醒一个等待进程时,被唤醒进程的状态变为B。A.等待 B.就绪 C.运行 D.完成操作系统通过B对进程进行管理。A.JCB B.PCB C.DCT D.CHCT用P、V操作可以解决A互斥问题。A.一切 B.某些 C.正确 D.错误一个进程被唤醒意味着D。A.该进程重新占有了CPU B.它的优先权变为最大C.其PCB移至等待队列队首 D.进程变为就绪状态多道程序环境下,操作系统分配资源以C为基本单位。A.程序 B.指令 C.进程 D.作业在一个单处理机系统中,存在5个进程,最多可有(A)个进程处于就绪队列;如果这5个进程中有一个系统进程IDLE(也叫空转进程,因为它只是不断循环地执行空语句),则最多可有(B)个进程处于阻塞状态。A,B:(1)5;(2)4;(3)3;(4)2;(5)1;(6)0。在分时系统中,导致进程创建的典型事件是(A);在批处理系统中,导致进程创建的典型事件是(B);由系统专门为运行中的应用进程创建新进程的事件是(C)。在创建进程时,(D)不是创建所必需的步骤。A:(1)用户注册;(2)用户登录;(3)用户记账;(4)用户通信。B:(1)作业录入;(2)作业调度;(3)进程调度;(4)中级调度。C:(1)分配资源;(2)进行通信;(3)共享资源;(4)提供服务。D:(1)为进程建立PCB;(2)为进程分配内存等资源;(3)为进程分配CPU;(4)将进程插入就绪队列。从下面对临界区的论述中,选出一条正确的论述。(1)临界区是指进程中用于实现进程互斥的那段代码。(2)临界区是指进程中用于实现进程同步的那段代码。(3)临界区是指进程中用于实现进程通信的那段代码。(4)临界区是指进程中用于访问共享资源的那段代码。(5)临界区是指进程中访问临界资源的那段代码。进程A和B共享同一临界资源,并且进程A正处于对应的临界区内执行。请从下列描述中选择一条正确的描述。CA.进程A的执行不能被中断,即临界区的代码具有原子性。B.进程A的执行能被中断,但中断A后,不能将CPU调度给进程B。C.进程A的执行能被中断,而且只要B进程就绪,就可以将CPU调度给进程B。D.进程A的执行能被中断,而且只要B进程就绪,就必定将CPU调度给进程B。(A)是一种只能由wait和signal操作所改变的整型变量,(A)可用于实现进程的(B)和(C),(B)是排他性访问临界资源。A:(1)控制变量;(2)锁;(3)整型信号量;(4)记录型信号量。B:(1)同步;(2)通信;(3)调度;(4)互斥。C:(1)同步;(2)通信;(3)调度;(4)互斥。对于记录型信号量,在执行一次wait操作时,信号量的值应当(A),当其值为(B)时,进程阻塞。在执行signal操作时,信号量的值应当为(C),当其值为(D)时,应唤醒阻塞队列中的进程。A:(1)不变;(2)加1;(3)减1;(4)加指定数值;(5)减指定数值。B:(1)大于0;(2)小于0;(3)大于等于0;(4)小于等于0.C:(1)不变;(2)加1;(3)减1;(4)加指定数值;(5)减指定数值。D:(1)大于0;(2)小于0;(3)大于等于0;(4)小于等于0.用信号量S实现对系统中4台打印机的互斥使用,S.value的初值应设置为(A),若S.value的初值为-1,则表示S.L队列中有(B)个等待进程。A:(1)1;(2)0;(3)-1;(4)4;(5)-4B:(1)1;(2)2;(3)3;(4)4;(5)5;(6)6;(7)0。设有10个进程共享一个互斥段,如果最多允许有1个进程进入互斥段,则所采用的互斥信号量初值应设置为(A),而该信号量的取值范围为(B);如果最多允许有3个进程同时进入互斥段,则所采用的互斥信号量初值应设置为(C)。A:(1)10;(2);3;(3)1;(4)0。B:(1)0~1;(2)-1~0;(3)1~-9;(4)0~-9。C:(1)10;(2);3;(3)1;(4)0。从下面的叙述中选出一条正确的叙述:(1)操作系统的一个重要概念是进程,不同的进程所执行的代码也不同。(2)操作系统通过PCB来控制和管理进程,用户进程可从PCB中读出与本身运行状态相关的信息。(3)当进程由执行状态变为就绪状态时,CPU现场信息必须被保存在PCB中。(4)当进程申请CPU得不到满足时,它将处于阻塞状态。(5)进程是可与其他程序并发执行的程序在一个数据集合上的运行过程,所以程序段是进程存在的唯一标志。从下面的叙述中选出4条正确的叙述:(1)一个进程的状态发生变化总会引起其它一些进程的状态发生变化。(2)进程被挂起(suspend)后,状态变为阻塞状态。(3)信号量的初值不能为负数。(4)线程是CPU调度的基本单位,但不是资源分配的基本单位。(5)在进程对应的代码中使用wait、signal操作后,可以防止系统发生死锁。(6)管程每次只允许一个进程进入。(7)wait、signal操作可以解决一切互斥问题。(8)程序的顺序执行具有不可再现性。在引入线程的操作系统中,资源分配和调度的基本单位是(A),CPU调度和分配的基本单位是(B)。A:(1)程序;(2)进程;(3)线程;(4)作业。B:(1)程序;(2)进程;(3)线程;(4)作业。一般情况下,互斥信号量的初值为B。A.0 B.1 C.2 D.4作业调度是从处于(A)状态的队列中选取作业投入运行,(B)是指作业进入系统到作业完成所经过的时间间隔,(C)算法不适合作业调度。A:(1)运行;(2)提交;(3)后备;(4)完成;(5)阻塞;(6)就绪。B:(1)响应时间;(2)周转时间;(3)运行时间;(4)等待时间;(5)触发时间。C:(1)先来先服务;(2)短作业优先;(3)最高优先权优先;(4)时间片轮转。下列算法中,(A)只能采用非抢占调度方式,(B)只能采用抢占调度方式,而其余的算法既可采用抢占方式,也可采用非抢占方式。A:(1)高优先权优先法;(2)时间片轮转法;(3)FCFS调度算法;(4)短作业优先算法。B:(1)高优先权优先法;(2)时间片轮转法;(3)FCFS调度算法;(4)短作业优先算法。如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用(A);为照顾紧急作业的用户,应采用(B);为能实现人机交互作用应采用(C);为了兼顾短作业和长时间等待的作业,应采用(D);为了使短作业、长作业及交互作业用户都比较满意,应采用(E);为了使作业的平均周转时间最短,应采用(F)算法。A:(1)FCFS调度算法;(2)短作业优先;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法;(6)高响应比优先。B:(1)FCFS调度算法;(2)短作业优先;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法;(6)高响应比优先。C:(1)FCFS调度算法;(2)短作业优先;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法;(6)高响应比优先。D:(1)FCFS调度算法;(2)短作业优先;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法;(6)高响应比优先。E:(1)FCFS调度算法;(2)短作业优先;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法;(6)高响应比优先。F:(1)FCFS调度算法;(2)短作业优先;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法;(6)高响应比优先。从下面关于优先权大小的论述中,选择一条正确的论述。(1) 计算型作业的优先权,应高于I/O型作业的优先权。(2) 用户进程的优先权,应高于系统进程的优先权。(3) 长作业的优先权,应高于短作业的优先权。(4) 资源要求多的作业,其优先权应高于资源要求少的作业。(5) 在动态优先权中,随着作业等待时间的增加,其优先权将随之下降。(6) 在动态优先权中,随着进程执行时间的增加,其优先权降低。从下面关于安全状态和非安全状态的论述中,选出一条正确的论述。(1)安全状态是没有死锁的状态,非安全状态是有死锁的状态。(2)安全状态是可能有死锁的状态,非安全状态也可能有死锁的状态。(3)安全状态是可能没有死锁的状态,非安全状态是有死锁的状态。(4)安全状态是没有死锁的状态,非安全状态是有可能死锁的状态。银行家算法是一种2算法。(1)死锁解除(2)死锁避免(3)死锁检测(4)死锁预防作业调度又称为3。(1)进程调度 (2)短程(short-term)调度(3)长程(long-term)调度(4)中程(medium-term)调度单处理机系统中,不可并行的是()AA.进程与进程B.处理机与设备C.处理机与通道D.设备与设备操作系统负责为方便用户管理计算机系统的()CA.程序 B.文档资料C.资源 D.进程下列进程调度算法中,综合考虑进程等待时间和执行时间的是()DA.时间片轮转调度算法 B.短进程优先调度算法C.先来先服务调度算法 D.高响应比优先调度算法设有四个作业同时到达,每个作业的执行时间均为2小时,它们在一台处理器上单道运行,则平均周转时间为,平均带权周转时间为。AA.52.5 B.2.57.5C.22 D.28某计算机系统中有8台打印机,有K个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发生死锁的K的最小值是()CA.2 B.3 C.4 D.5下列选项中,操作系统提供给应用程序的接口是() AA.系统调用 B.中断 C.库函数 D.原语解析:本题考查OS提供的服务。OS提供两类接口,一类是命令接口,比如用户通过键盘命令和鼠标命令来操作计算机;另一类是程序接口,它提供一组系统调用,用户可以通过运行一些应用程序来访问OS的资源。在一般OS中必不可少的调度是____。DA.高级调度 B.中级调度 C.作业调度 D.进程调度解析:高级调度也就是作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执行。在批处理系统中,需要有高级调度,但在分时系统和实时系统中通常不需要作业调度。所以不是必不可少的调度。中级调度它按照一定的算法将外存中已具备运行条件的进程换入内存,将内存中处于阻塞状态的某些进程换出到外存。中级调度的目的是为了解决内存紧张问题,它常用于分时系统及具有虚拟存储器的系统中,也不是必不可少的调度。低级调度也称进程调度,用来决定就绪队列中哪个进程应先获得处理机,并将处理机分配给选中的进程。进程调度是最基本的调度,一般的OS中都必须配置它。下列选项中,导致创建新进程的操作是() CI用户成功登陆II设备分配III启动程序执行A:仅I和II B:仅II和III C:仅I和III D:I,II,III解析:用户登录成功后需要为这个用户创建进程来解释用户的各种命令操作;设备分配由内核自动完成,不需要创建新进程;启动程序执行的目的就是创建一个新进程来执行程序。进程的基本状态:进程执行时的间断性,决定了进程可能具有多种状态。运行中的进程可能具有以下三种基本状态。(1)就绪状态:进程已获得除处理机外的所需资源,等待分配处理机资源,只要分配到CPU就可执行。在某一时刻,可能有若干个进程处于该状态。(2)运行状态:占用处理机资源运行,处于此状态的进程的数目小于等于CPU的数目。(3)阻塞状态:由于进程等待某种条件(如IO操作或进程同步),在条件满足之前无法继续执行。该事件发生前即使把处理机分配给该进程,也无法运行。当用户程序需要使用OS功能从磁盘读取执行的程序和数据时,首先要通过专门的指令完成()。AA.从运行态到阻塞态的转换 B.进程从活动态到挂起态的转换C.进程从用户态到系统态的转换 D.进程从系统态到用户态的转换解析:用户程序需要通过系统调用OS的功能,在进行系统调用时,CPU从用户态转换到系统态,调用内核中的代码来完成读取操作,用户进程则由运行态转到阻塞态,等待OS从磁盘读取完成。设与某资源相关联的信号量初值为3,当前值为1,若M表示该资源的可用个数,N表示等待该资源的进程数,则M,N分别是() BA.0,1 B.1,0 C.1,2 D.2,0【解析】本题考查信号量机制。信号量用来表示某资源的当前可用数量。当信号量K>0时,表示此资源还有K个相关资源可用,没有等待该资源的进程。而当信号量K<0时,表示此资源还有|K|个进程在等待该资源。此题中信号量K=1,所以该资源可用数N=1,等待该资源的进程数M=0。信号量机制是OS的一个非常重要的考点,而且既可以以大题形式出现,也可以以选择题形式出现。由于2011年考研真题中,信号量机制是以大题形式考查的,有人预测2012选择题。本人认为有可能考管程/通信。这道题目考查的是信号量的概念,包括什么是信号量、信号量的用途、信号量的值的含义等。信号量可以用来实现进程之间对共享资源的互斥访问,具体来说,信号量的初始值就是总的资源的个数,当进程申请一个资源时,信号量的值就减1;当进程释放一个资源时,信号量的值就加1。因此,如果信号量的当前值为正数,表示剩余的空闲资源的个数;如果信号量的当前值为负数,表示有多少个进程在等待使用该资源。以上便是用信号量来实现进程间互斥的基本原理。为了更好地记住这个原理,可以用生活中的一个例子来类比。比如说,我们去饭店吃饭,饭店的桌子的数量是有限的,随着顾客的增多,空闲桌子的数量会越来越少。如果该数量仍然大于0,说明仍有空闲的桌子,可以进去吃饭;如果该数量等于0,说明已经客满,没有空闲的桌子;如果饭店的生意特别好,那么不仅没有空闲的桌子,而且会有顾客在门口等待,此时饭店的做法是给等待的顾客发一个号。所以如果把这个生活中的例子记住了的话,那么上述题目就变得很容易了:信号量的初值等于3,说明饭店的总的桌子数量为3。信号量的当前值为1,说明当前还剩下一张空闲的桌子,这也就说明此时门口不可能有顾客在等待。所以M等于1,N等于0。所以对于操作系统当中的概念,要善于用生活当中的例子来类比,这样的好处是形象、生动,比较容易记住。N个进程共享M台打印机(其中N>M),假设每台打印机为临界资源,必须独占使用,则打印机的互斥信号量的取值范围为()。BA.-(N-1)~M B.–(N-M)~M C.-(N-M)~1 D.–(N-1)~1解析:本题考查的是进程同步机制中的信号量机制。具有多个临界资源的系统中将能够为多个进程服务。信号量的取值范围是:一阻塞队列中的进程个数到临界资源个数。下列选项中,降低进程优先权级的合理时机是() AA.进程的时间片用完B.进程刚完成I/O,进入就绪列队C.进程长期处于就绪队列D.进程从就绪状态转为运行状态【解析】本题考查的是进程调度中的优先级算法,具体来说,操作系统会优先照顾哪一类进程。从提高系统性能和资源使用效率的角度出发,操作系统会倾向于照顾I/O繁忙的进程,因为这类进程的特点是只需要少量的CPU时间,把I/O设备启动起来,然后当I/O设备在工作的时候,CPU就可以腾出来去运行别的进程,所以操作系统会优先照顾这类进程,以提高系统的性能,所以B是错误的,对于I/O进程,不仅不会降低其优先级,反而会提高其优先级。而对于CPU繁忙的进程,由于它会一直占用CPU,这样就无法提高系统的吞吐率,所以操作系统并不会优先照顾这种进程,所以A是正确的,当进程的时间片用完却仍然没有结束的时候,可能会降低它的优先级。对于C,这里考察的是“饥饿”的概念,如果一个进程长期处于就绪队列,无法得到CPU去运行,就称为“饥饿”,为了防止这种现象,操作系统会提高这类进程的优先级,因此C是错误的。对于D,当一个进程刚从就绪状态转为运行状态时,这说明操作系统刚刚调度它去运行,在它刚开始运行的时候,不会立即去调整它的优先级,因为此时操作系统并不知道它属于什么类型。它可能马上就启动I/O操作,从而把自己阻塞起来,也可能长时间使用CPU。本题考查处理机调度。B中,进程完成IO后,进入就绪队列时,已经是优先级最低的了,不能再降低其优先级,为了让其及时处理IO,也应该提高优先级。C中,进程长期处于就绪队列,也需要增加优先级,使其不至于产生饥饿,所谓饥饿就是进程长期得不到CPU的状态,就好像好久没吃饭。D中,当进程处于运行状态时,不可提高也不可降低其优先级。A中,采用时间片算法处理进程调度时,如果进程运行完,需要排到就绪队列的末尾,也就是优先级最低,所以降低优先级的合理时机是时间片用完时。等待态:等待某个事件的完成;就绪态:等待系统分配处理机以便运行;运行态:占有处理机正在运行。运行态等待态:往往是由于等待外设,等待主存等资源分配或等待人工干预而引起的。等待态就绪态:等待的条件已满足,只需分配到处理器后就能运行。运行态就绪态:不是由于自身原因,而是由外界原因使运行状态的进程让出处理器,这时候就变成就绪态。例如时间片用完,或有更高优先级的进程来抢占处理器等。就绪态运行态:系统按某种策略选中就绪队列中的一个进程占用处理器,此时就变成运行态。引起创建进程的事件:(1)用户登录(2)作业调度(3)提供服务(4)应用请求。引起进程阻塞和唤醒的事件:(1)请求系统服务(2)启动某种操作(3)新数据尚未到达(4)无新工作可做引起进程终止的事件:(1)正常结束(2)异常结束(3)启动某种操作(4)新数据尚未到达(5)无新工作可做下列选项中,满足短任务优先且不会发生饥饿现象的调度算法是____。CA.先来先服务

B.时间片轮转 C.

高响应比优先 D.非抢占式短任务优先解析:本题是对典型进程调度算法的考察,响应比=作业响应时间/作业执行时间=(作业执行时间+作业等待时间)/作业执行时间。高响应比算法,在等待时间相同情况下,作业执行时间越少,响应比越高,优先执行,满足短任务优先。随着等待时间增加,响应比也会变大,执行机会就增大,所以不会产生饥饿现象。先来先服务和时间片轮转不符合短任务优先,非抢占式短任务优先会产生饥饿现象。以下哪一些是基于时间片的调度算法____。ABA.时间片轮转

B.多级反馈队列调度算法C.

抢占式调度算法 D.先来先服务调度算法解析:本题考察进程调度算法中的时间片调度算法。其中的时间片轮转法以及多级反馈队列调度算法是基于时间片的调度算法。至于其他的算法均不是基于时间片的调度算法。下列选项中,在用户态执行的是____。AA.命令解释程序

B.缺页处理程序 C.进程调度程序

D.时钟中断处理程序解析:本题涉及的考点是OS的概念、特征、功能和提供的服务,具体考查的是处理机的状态,以及在不同的状态下执行的程序。缺页处理程序和时钟中断都属于中断,在核心态执行。进程调度属于系统调用在核心态执行,命令解释程序属于命令接口,它在用户态执行。在一般OS中必不可少的调度是____。DA.高级调度 B.中级调度 C.作业调度 D.进程调度解析:高级调度也就是作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执行。在批处理系统中,需要有高级调度,但在分时系统和实时系统中通常不需要作业调度。所以不是必不可少的调度。中级调度它按照一定的算法将外存中已具备运行条件的进程换入内存,将内存中处于阻塞状态的某些进程换出到外存。中级调度的目的是为了解决内存紧张问题,它常用于分时系统及具有虚拟存储器的系统中,也不是必不可少的调度。低级调度也称进程调度,用来决定就绪队列中哪个进程应先获得处理机,并将处理机分配给选中的进程。进程调度是最基本的调度,一般的OS中都必须配置它。在支持多线程的系统中,进程P创建的若干个线程不能共享的是____。DA.进程P的代码段 B.进程P中打开的文件C.进程P的全局变量 D.进程P中某线程的栈指针解析:本题考查的是多线程模型中的特点,进程中某线程的栈指针,对其他线程透明,不能与其他线程共享。线程是进程中某个单一顺序的控制流,也被称为轻量进程,它是进程中的一个实体,是被系统独立调度和分派的基本单位。线程的属性:(1)轻型实体。线程除了拥有运行中必不可少的资源(如线程控制块TCB、程序计算器、寄存器组、堆栈等)外基本上不拥有系统资源。(2)独立调度和分派的基本单位。(3)可并发执行。(4)共享进程资源。多线程模型包括多对一模型,即多个用户级线程映射到一个内核级线程;一对一模型将每个用户级线程映射到一个内核级线程;多对多模型将n个用户级线程映射到m个内核级线程上(要求m<=n)进程与线程可以从四个方面来考查区别:(1)调度方面:线程是调度和分派的基本单位;(2)并发性方面:进程之间可以并发执行,一个进程中的若干线程也可以并发执行;(3)拥有资源方面:进程作为拥有资源的基本单位,线程除少量必不可少的资源外,基本上不拥有资源,但它可以访问其隶属进程的资源;(4)系统开销:进程间切换时,要涉及进程环境的切换,开销比较大。而线程间切换只需保存和设置少量的寄存器内容,因此进程切换的系统开销远大于线程间切换的开销。某时刻进程的资源使用情况如下表所示:此时的安全序列是___。D进程已分配资源尚需资源可用资源R1

R2

R3R1

R2

R3R1

R2

R3P12

0

00

0

10

2

1P21

2

01

3

2P30

1

11

3

1P40

0

12

0

0A.P1,P2,P3,P4

B.P1,P3,P2,P4 C.P1,P4,P3,P2

D.不存在解析:在避免死锁的方法中,所施加的限制条件较弱,有可能获得令人满意的系统性能。在该方法中把系统的状态分为安全状态和不安全状态,只要能使系统始终都处于安全状态,便可以避免发生死锁。银行家算法的基本思想是分配资源前,判断系统是否是安全的,若是,才分配。它是最具有代表性的避免死锁的算法。设进程P提出请求REQUEST[i],则银行家算法按如下规则进行判断。(1)如果REQUEST[P][i]<=NEED[P][i],则转(2);否则,出错。(2)如果REQUEST[P][i]<=AVAILABLE[P][i],则转(3);否则,出错。(3)系统试探分配资源,修改相关数据:AVAILABLE[i]-=REQUEST[P][i];Allocation[P][i]+=REQUEST[P][i];NEED[P][i]-=REQUEST[P][i];(4)系统执行安全性检查,如安全,则分配成立;否则试探性分配作废,系统恢复原状,进程等待。安全线检查算法:(1)设置2个工作向量work=AVAILABLE;FINISH(2)从进程集合中找到一个满足下述条件的进程,FINISH==false;NEED<=Work;如找到,执行(3);否则,执行(4)。(3)设进程获得资源,可顺利执行,直至完成,从而释放资源。Work+=ALLOCATION;Finish=true;GOTO(2)。(4)如所有的进程Finish=true,则表示安全;否则系统不安全。死锁的预防是指破坏死锁产生的4个必要条件之一,死锁的避免使用银行家算法,死锁的解决有2种方法:资源剥夺法和撤消进程法。10、有两个并发执行的进程P1和P2,共享初值为1的变量x,P1对x加1,P2对x减1。加1和减1操作的指令序列分别如下所示。C(就是书上的,4、5、6三种结果)//加1操作

//减1操作loadR1,x//取x到寄存器R1中

LoadR2,xincR1

decR2store

x,R1//将R1的内容存入x

store

x,R2两个操作完成后,x的值____。A.可能为-1和3

B.只能为1 C.可能为0、1或2

D.可能为-1、0、1或2解析:本题考查的是用软件方式实现临界区之间的互斥,将P1中3条语句编号为1,2,3,P2中3条语句编号为4,5,6。则依次执行1,2,3,4,5,6得结果1,依次执行1,2,4,5,6,3得结果2,执行4,5,1,2,3,6得结果0.结果-1不可能得出。实现临界区之间的互斥有多种方式,考生需要掌握的是用软件方法实现临界区之间的互斥和用信号量机制实现临界区之间的互斥。其中信号量机制实现临界区之间的互斥是OS中的重难点。判断题分布式系统就是紧耦合系统。答:错。分布式系统是松散耦合系统。在一个只有单个CPU的计算机中,进程不能并行操作。答:错。一个进程在利用CPU运行,另一个进程可以同时进行I/O操作,它们是并行的。进程是动态的概念(对)进程执行需要处理机(对)进程是有生命期的(对)进程是指令的集合(错)操作系统的一重要概念是进程,因此不同进程所执行的代码也一定不同(错)操作系统用PCB管理进程,用户进程可以从PCB中读出与本身运行状况有关的信息(错)进程同步是指某些进程之间在逻辑上的相互制约关系(对)在一个只有单个CPU的计算机中,进程不能并行操作。错。一个进程在利用CPU运行,另一个进程可以同时进行I/O操作,它们是并行的。线程可以分为内核级(KernelThread)和用户级(UserThread)两种,操作系统不可以直接调度用户级的线程。对。为了避免发生进程死锁,各进程只能逐个申请资源。(错)有m个进程的操作系统出现死锁时,死锁进程的个数为1<k≤m。对。填空题操作系统的基本类型主要有、和。批处理系统、分时系统、实时系统批处理系统的主要优点是和;主要缺点是和。资源利用率高、系统吞吐量大、无交互作用能力、作业平均周转时间长。实现分时系统的关键问题是,为此必须引入的概念,并采用调度算法。人机交互、时间片、时间片轮转分时系统的基本特征是:、、和。多路性、独立性、交互性、及时性若干事件在同一时间间隔内发生称为;若干事件在同一时刻发生称为。并发、并行当前比较流行的微内核的操作系统结构,是建立在层次化结构的基础上的,而且还采用了模式和技术。客户机/服务器、面向对象程序设计实时操作系统与分时操作系统的主要区别是及时性和高可靠性。如果操作系统具有很强的交互性,可同时供多个用户使用,但时间响应不太及时,则属于分时操作系统类型;如果操作系统可靠,时间响应及时但仅有简单的交互能力则属于实时操作系统类型;如果操作系统在用户提交作业后,不提供交互能力,它所追求的是计算机资源的高利用率,大吞吐量和作业流程的自动化,则属于批处理操作系统类型。采用多道程序设计技术能充分发挥CPU与外设并行工作的能力。并发和共享是操作系统的两个最基本的特征,两者之间互为存在条件。信号量的物理意义是当信号量值大于零时表示可用资源的数目;当信号量值小于零时,其绝对值为因请求该资源而被阻塞的进程数目。临界资源的概念是一次仅允许一个进程访问的资源,而临界区是指进程中访问临界资源的那段程序代码。进程在运行过程中有三种基本状态,它们是运行、就绪、等待。进程主要由程序段、数据段、PCB三部分内容组成,其中PCB是进程存在的唯一标志。而程序段部分也可以为其他进程共享。系统中各进程之间逻辑上的相互制约关系称为进程同步。若一个进程已进入临界区,其他欲进入临界区的进程必须等待。将进程的PCB链接在一起就形成了进程队列。有m个进程共享同一临界资源,若使用信号量机制实现对临界资源的互斥访问,则信号量值的变化范围是1~-(m-1)。在一个单处理机系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有4个,最少有0个。进程由、和组成,其中是进程存在的唯一标志。PCB、程序段、数据段、PCB进程最基本的特征是和,除此之外,它还有、和特征。动态性、并发性、独立特征、异步性、结构引入进程带来的好处是和。提高资源利用率,增加系统吞吐量系统中共有5个用户进程,且当前CPU在用户态下执行,则最多可有个用户进程处于就绪状态,最多可有个用户进程处于阻塞状态;若当前在核心态下执行,则最多可有个用户进程处于就绪状态,最多可有个用户进程处于阻塞状态。4,4,5,5在记录型信号量机制中,S.value>0时的值表示;每次wait操作意味着,因此应将S.value,当S.value时,进程应阻塞。可用的临界资源数量;申请一个临界资源;减1;小于0在记录型信号量机制中,每次signal操作意味着,因此应将S.value,当S.value<=0时,表示,此时应。释放一个临界资源,加1,仍有请求该资源的进程被阻塞;唤醒相应阻塞队列中的首进程在利用信号量实现进程互斥时,应将置于和之间。临界区,wait操作,signal操作在每个进程中访问的那段代码称为临界区。为实现对它的共享,应保证进程进入自己的临界区,为此,在每个进程的临界区前应设置,临界区后应设置。临界资源,互斥,进入区,退出区进程通信的类型有、、三类,其中利用共享文件进行通信。共享存储器、消息系统、管道通信、管道通信为实现消息缓冲队列通信,应在PCB中增加、、三个数据项。消息队列首指针mq;消息队列互斥信号量mutex;消息队列资源信号量sm在直接通信方式中,系统通常提供的两条通信原语如下,请选择适当的参数填入。Send((A),(B));Receive((C),(B));A:(1)sender;(2)receiver;(3)text;(4)message;(5)mailbox。B:(1)sender;(2)receiver;(3)text;(4)message;(5)mailbox。C:(1)sender;(2)receiver;(3)text;(4)message;(5)mailbox。使用mail命令的信箱通信属于(A),因为信息是被发送到接收方的(B)中;使用write命令,实现的是(C)通信,因为信息是被发送到接收方的(D)中;使用共享文件进行通信的方式属于(E)通信。A:(1)共享存储器;(2)实时通信;(3)消息缓冲通信;(4)非实时通信;(5)管道通信。B:(1)消息缓冲队列;(2)内存;(3)信箱;(4)消息缓冲区;(5)屏幕;(6)共享存储器。C:(1)共享存储器;(2)实时通信;(3)消息缓冲通信;(4)非实时通信;(5)管道通信。D:(1)消息缓冲队列;(2)内存;(3)信箱;(4)消息缓冲区;(5)屏幕;(6)共享存储器。E:(1)共享存储器;(2)实时通信;(3)消息缓冲通信;(4)非实时通信;(5)管道通信。在采用用户级线程的系统中,OS进行CPU调度的对象是;在采用内核支持线程的系统中,CPU调度的对象是。进程,线程线程之所以能减少并发执行的开销是因为。线程基本不拥有资源进程通信的常用方式有直接通信和间接通信等。如果P(S1)和P(S2)两个操作在一起,那么P操作的顺序至关重要,一个同步P操作与一个互斥P操作在一起时同步P操作在互斥P操作前。而两个V操作的次序无关紧要。P(S):表示申请一个资源;V(S)表示释放一个资源。信号量的初值应该大于等于0。P、V操作当为互斥操作时,它们同处于同一进程;当为同步操作时,则不在同一进程中出现。进程调度有和两种方式。抢占调度;非抢占调度在抢占调度方式中,抢占的原则有、和。时间片原则;短作业优先;优先权原则在设计进程调度程序时,应考虑、和三个问题。引起调度的因素;调度算法的选择;就绪队列的组织为了使作业的平均周转时间最短,应该选择调度算法:为了使当前执行的进程总是优先权最高的进程,则应选择调度算法;而分时系统则常采用调度算法。短作业优先;立即抢占的高优先权优先;时间片轮转高响应比优先调度算法综合考虑了作业的和。运行时间、等待时间死锁产生的主要原因是和。竞争资源;进程推进顺序非法在避免死锁的方法中,允许进程动态地申请资源,但系统在进行分配时应先计算资源分配的。若此次分配不会导致系统进入,便将资源分配给它,否则进程。安全性;不安全状态;等待解决死锁问题的方法有预防、避免、检测并解除等,一次性分配所有的资源采用的是其中的方法,银行家算法采用的是其中的方法。预防死锁;避免死锁和是解除死锁的两种常用方法。撤消进程;剥夺资源简答题设计现代OS的主要目标是什么?答:设计现代OS的主要目标是:方便性有效性可扩充性开放性为什么说OS实现了对计算机资源的抽象?答:OS是铺设在计算机硬件上的多层系统软件,它们不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它们实现了对计算机硬件操作的多个层次的抽象。值得说明的是,对一个硬件在底层进行抽象后,在高层还可再次对该资源进行抽象,成为更高层的抽象模型。随着抽象层次的提高,抽象接口所提供的功能就越来越强,用户使用起来也更加方便。何为脱机I/O和联机I/O?答:为了解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,上世纪50年代出现了脱机输入输出技术。该技术是事先将装有用户程序和数据的纸带(卡片)装入纸带输入机(卡片机),在一台外围机的控制下,把纸带(卡片)上的数据(程序)输入到磁带上。当CPU需要这些程序和数据时,再从磁带上将其高速调入内存。当CPU需要输出时,可由CPU直接高速地把数据从内存送到磁带上,然后再在另一台外围机的控制下,将磁带上的结果通过相应的输出设备输出。由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入/输出方式;反之,在主机的直接控制下进行输入/输出的方式称为联机输入/输出方式。OS有哪几大特征?其最基本特征是什么?答:三种OS都有自己的特征,如批处理系统具有能对多个作业进行成批处理,以获得高的系统吞吐量的特征,分时系统具有允许用户和计算机进行人机交互特征,实时系统具有实时特征,但它们也都具有并发、共享、虚拟、异步这四个基本特征。其中,并发特征是操作系统最重要的特征,其它三个特征都是以并发特征为前提的。何谓微内核技术?在微内核技术中通常提供了哪些功能?答:所谓微内核技术,是精心设计的、能实现现代OS核心功能的小型内核,它与一般的OS(程序)不同,它更小更精炼,它不仅运行在核心态,而且开机后常驻内存,它不会因内存紧张而被换出内存。微内核并非是一个完整的OS,而只是为构建通用OS提供一个重要基础。微内核技术提供了以下功能:进程管理、存储器管理、进程间通信管理、低级I/O功能。微内核操作系统具有哪些优点?它为何能有这些优点?答:由于微内核OS结构是建立在模块化、层次化结构基础上的,并采用了客户/服务器模式和面向对象的程序设计技术,由此可见,微内核结构的OS是集各种技术优点之大成。五个优点:提高了系统的可扩展性,增强了系统的可靠性,可移植性,提供了对分布式系统的支持,融入了面向对象的技术。什么是操作系统?简述现代操作系统的特征。答:操作系统是控制和管理计算机系统内各种硬件和软件资源、合理有效地组织计算机系统的工作,为用户提供一个使用方便可扩展的工作环境,从而起到连接计算机和用户的接口作用。现代操作系统具有如下特征:(1)并发(共行)性:指能处理多个同时性活动的能力。I/O操作和计算重叠,内存中同时存放几道用户程序,这些都是并发的例子。(2)共享:指多个计算任务对资源的共同享用。并发活动可能要求共享资源和信息;多个用户共享一个程序的同一个副本,而不是分别向每个用户提供一个副本可以避免重复开发,节省人力资源。(3)不确定性:指操作系统必须能处理任何一种事件序列,以使各个用户的算题任务正确地完成。试比较网络OS与分布式OS。答:在分布式系统上配置的OS,称为分布式OS,它虽与网络OS有许多相似之处,但两者各有特点。分布性:分布式OS不是集中地驻留在某一个站点中,而是较均匀地分布在系统的各个站点上,因此,OS的处理和控制功能是分布式的。而计算机网络虽然都具有分布处理功能,然而网络的控制功能,则大多是集中在某个(些)主机或网络服务器中,或说控制方式是集中式的。并行性:在分布式处理系统中,具有多个处理单元,因此,分布式OS的任务分配程序可将多个任务分配到多个处理单元上,使这些任务并行执行,从而加速任务执行。而在计算机网络中,每个用户的一个或多个任务通常都在自己(本地)的计算机上处理,因此,在网络OS中通常无任务分配功能。透明性:分布式OS通常能很好地隐藏系统内部的实现细节。如对象的物理位置、并发控制、系统故障等对用户都是透明的。例如,当用户要访问某个文件时,只需提供文件名而无须知道(所要访问的对象)它是驻留在哪个站点上,即可对它进行访问,亦即具有物理位置的透明性。对于网络OS,虽然它也具有一定的透明性,但主要是指在OS上的透明性。例如,当一用户要访问服务器上的文件时,只需发出相应的文件存取命令,而无须了解对该文件的存取是如何实现的。共享性:在分布式系统中,分布在各个站点上的软件、硬件资源,可供全系统中的所有用户共享,并能以透明方式对它们进行访问。而网络OS虽然能提供资源共享,但所共享的资源大多是设置在主机或网络服务器中。而在其他机器上的资源,则通常仅由使用该机的用户独占。健壮性:由于分布式系统的处理和控制功能是分布的,因此,任何站点上的故障,都不会给系统造成太大的影响;加之,当某设备出现故障时,可通过容错技术实现系统重构,从而仍能保证系统的运行,因而系统具有健壮性,即具有较好的可用性和可靠性。而网络OS,其控制功能大多集中在主机或服务器中,这使系统具有潜在的不可靠性,此外,系统的重构功能也较弱。在操作系统中为什么要引入进程概念?(P37)它会产生什么样的影响?【解】在操作系统中引入进程的概念,是为了实现多个程序的并发执行。传统的程序不能与其他程序并发执行,只有在为之创建进程后,才能与其他程序(进程)并发执行。这是因为并发执行的程序(即进程)是“停停走走”地执行,只有在为它创建进程后,在它停下时,方能将其现场信息保存在它的PCB中,待下次被调度执行是,再从PCB中恢复CPU现场并继续执行,而传统的程序却无法满足上述要求。建立进程所带来的好处是使多个程序能并发执行,这极大地提高了资源利用率和系统吞吐量。但管理进程也需付出一定的代价,包括进程控制块及协调各运行机构所占用的内存空间开销,以及为进行进程间的切换、同步及通信等所付出的时间开销。试从动态性、并发性和独立性上比较进程和程序?(P37)【解】(1)动态性:进程既然是进程实体的执行过程,因此,动态性是进程最基本的特性。动态性还表现为:“它由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤消而消亡”。可见,进程具有一定的生命周期。而程序只是一组有序指令的集合,并存放在某种介质上,本身并无运动的含义,因此,程序是个静态实体。(2)并发性:所谓进程的并发,指的是多个进程实体,同存于内存中,能在一段时间内同时运行。并发性是进程的重要特征,同时也成为OS的重要特征。引入进程的目的也正是为了使其程序能和其他进程的程序并发执行,而程序是无法并发执行的。(3)独立性:进程实体是一个能独立运行的基本单位,也是系统中独立获得资源和独立调度的基本单位。凡未建立进程的程序,都不能作为一个独立的单位参加运行。试说明PCB的作用?为什么说PCB是进程存在的惟一标志?(P41)【解】PCB是进程实体的一部分,是OS中最重要的记录型数据结构。它记录了OS所需的、用于描述进程情况及控制进程运行所需的全部信息。PCB的作用,是使一个在多道程序环境下不能独立运行的程序(含数据)成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程。或者说,OS是根据PCB来对并发执行的进程进行控制和管理的。在进程的整个生命周期中,系统总是通过PCB对进程进行控制,也就是说,系统是根据进程的PCB感知到该进程的存在的,所以说,PCB是进程存在的标志。试说明进程在三个基本状态之间转换的典型原因?(P38)【解】(1)处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程就由就绪状态变为执行状态。(2)正在执行的进程因发生某事件而无法执行,如暂时无法取得所需资源,则由执行状态转变为阻塞状态。(3)正在执行的进程,如因时间片用完或被高优先级的进程抢占处理机而被暂停执行,该进程便由执行状态转变为就绪状态。试说明引起进程创建的主要事件。(P44)【解】(1)用户登录在分时系统中,用户在终端键入登录命令后,若是合法用户,系统将为该终端用户建立一个进程,并插入到就绪队列中。(2)作业调度批处理程序中,作业调度程序按一定的算法调度到某个作业时,就将该作业装入内存,为它分配必要的资源,并立即为其创建进程,插入到就绪队列中。(3)提供服务运行中的用户程序提出某种请求,系统专门创建一个进程来提供用户所需服务。(4)应用请求应用进程自己创建一个进程,使自己和新进程以并发运行方式完成特定任务。在创建一个进程时所要完成的主要工作是什么?(P44)【解】需完成的主要工作有:(1)申请空白PCB;(2)为新进程分配资源;(3)初始化PCB,其中包括:初始化标识符信息。将系统分配的标识符、父进程标识符填入新PCB中;初始化处理机状态信息。使程序计数器指向程序入口地址,使栈指针指向栈顶;初始化处理机控制信息。将进程状态设置为就绪或静止就绪,对于优先级通常设置为最低,除非用户提出高优先级要求。(4)将新进程插入就绪队列。试从物理概念上来说明记录型信号量wait和signal操作?(P51)【解】在记录型信号量机制中,S.value的初值表示系统中某类资源的数目,因而又称资源信号量,每次的wait操作,意味着进程请求一个单位的资源,因此描述为S.value:=S.value-1;当S.value<0时,表示资源已分配完毕,因而进程调用block原语,进行自我阻塞,放弃处理机,并插入到信号量链表S.L中。可见,该机制遵循了让权等待准则。此时S.value的绝对值表示在该信号量链表中已阻塞进程的数目。每次signal操作,表示执行进程释放一个单位资源,故S.value:=S.value+1操作表示资源数目加1。若加1后仍是S.value<=0则表示该信号量链表中,仍有等待该资源的进程被阻塞,故还要调用wakeup原语,将S.L链表中的第一个等待进程唤醒。如果S.value的初值为1,表示只允许一个进程访问临界资源,此时的信号量转化为互斥信号量。当前有哪几种高级通信机制?(P65)【解】共享存储器系统,消息传递系统,管道通信系统。消息队列通信机制有哪几方面功能?(P66)【解】发送进程利用send原语,将消息直接发送给接收进程;接收进程利用receive原语接收消息。为什么要在OS中引入线程?(P72)【解】为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性。进程的两个基本属性:(1)进程是一个可拥有资源的独立单位;(2)进程同时又是一个可独立调度和分派的基本单位。将进程的上述两个属性分开,由OS分开处理,亦即对于作为调度和分派的基本单位,不同时作为拥有资源的单位;而对于拥有资源的基本单位,又不对之进行频繁的切换。正是在这种思想的指导下,形成了线程的概念。试从调度性、并发性、拥有资源及系统开销几个方面,对进程和线程进行比较。【解】(1)调度性在传统的OS中,拥有资源的基本单位和独立调度、分派的基本单位都是进程。而在引入线程的OS中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位,使传统进程的两个属性分开,线程便能轻装运行,从而显著提高系统并发程度。在同一进程中,线程的切换不会引起进程切换,在由一个进程中的线程切换到另一个进程中的线程时,将会引起进程切换。(2)并发性多线程的操作系统中,不仅进程可以并发执行,而且一个进程的多个线程也可并发执行。从而能更有效地使用系统资源和提高系统吞吐量。(3)拥有资源进程是拥有资源的独立单位。线程自己基本不拥有系统资源,但可访问隶属进程的资源。(4)系统开销在创建和撤消进程时,系统要为之分配或回收资源,所以系统开销要显著大于在创建和撤消线程的开销。在进行进程切换时,涉及到整个当前进程CPU环境的保存以及新被调度运行的进程的CPU环境的设置。而线程切换只须保存和设置少量寄存器的内容,并不涉及存储器管理方面的操作。可见,进程切换的开销也远大于线程切换的开销。此外,由于同一进程中的多个线程具有相同的地址空间,致使它们之间的同步和通信的实现也变得比较容易。何谓用户级线程和内核支持线程?(P77)【解】用户级线程仅存在于用户级中,它的创建、撤消和切换都不利用系统调用实现,与内核无关,相应的,内核也不知道有用户级线程存在。内核级线程依赖于内核,无论用户进程中的线程还是系统进程中的线程,其创建、撤消、切换都由内核实现。在内核中保留了一张线程控制块,内核根据控制块感知线程的存在并对其进行控制。比较:(1)线程的调度与切换速度内核支持线程的调度和切换与进程的调度和切换十分相似。例如,在线程调度时的调度方式,同样也是抢占方式和非抢占方式两种。在线程的调度算法上,也同样可采用时间片轮转、优先权算法等。当由线程调度选中一个线程后,再将处理机分配给它。当然,线程在调度和切换上所花费的开销要比进程的小得多。对于用户级线程的切换,通常是发生在一个应用程序的多线程之间,这时,不仅无须通过中断进入OS的内核,而且切换的规则也远比进程调度和切换的规则简单。例如,当一个线程阻塞后会自动切换到下一个具有相同功能的线程,因此,用户级线程的切换速度特别快。(2)系统调用当传统的用户进程调用一个系统调用时,要由用户态转入核心态,用户进程将被阻塞。当内核完成系统调用而返回时,才将该进程唤醒,继续执行。而在用户级线程调用一个系统调用时,由于内核并不知道有该用户级线程的存在,因而把系统调用看作是整个进程的行为,于是使该进程等待,而调度另一个进程执行,同样是在内核完成系统调用而返回时,进程才能继续执行。如果系统中设置的是内核支持线程,则调度是以线程为单位。当一个线程调用一个系统调用时,内核把系统调用只看作是该线程的行为,因而阻塞该线程,于是可以再调度该进程中的其他线程执行。(3)线程执行时间对于只设置了用户级线程的系统,调度是以进程为单位进行的。在采用轮转调度算法时,各个进程轮流执行一个时间片,这对诸进程而言,似是公平。但假如在进程A中包含了一个用户级线程,而进程B中含有100个线程,这样,进程A中线程的运行时间,将是进程B中各线程运行时间的100倍;相应地,速度就快100倍。假如系统中设置的是内核支持线程,其调度是以线程为单位进行的,这样,进程B可以获得的CPU时间是进程A的100倍,进程B可使100个系统调用并发工作。高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。在抢占调度方式中,抢占的原则是什么?【解】剥夺原则有:(1)时间片原则各进程按时间片运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。这种原则适用于分时系统、大多数实时系统,以及要求较高的批处理系统。(2)优先权原则通常是对一些重要的和紧急的作业赋予较高的优先权。当这种作业到达时,如果其优先权比正在执行进程的优先权高,便停止正在执行的进程,将处理机分配给优先权高的进程,使之执行。(3)短作业(进程)优先原则当新到达的作业(进程)比正在执行的作业(进程)明显地短时,将剥夺长作业(进程)的执行,将处理机分配给短作业(进程),使之优先执行。为什么说多级反馈队列调度算法能较好地满足各方面用户的需要?【解】(1)对于终端型用户来说,他们提交的大多属于较小的交互型作业,系统只要能使这些作业(进程)在第一队列所规定的时间片内完成,便可使终端型作业用户都感到满意。(2)对短批处理作业用户来说,在第一队列中执行一个时间片或至多只需在第二队列和第三队列中各执行一个时间片即可完成。(3)对长批处理作业用户来说,只要将作业依次在第1,2,……,n个队列中运行,然后再按轮转方式运行,用户不必担心其作业长期得不到处理。何谓死锁?产生死锁的原因和必要条件是什么?【解】所谓死锁,是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。产生死锁的原因:竞争资源,当系统中供多个进程所共享的资源,不足以同时满足它们的需要时,引起它们对资源的竞争而产生死锁;进程推进顺序非法,进程在运行过程中,请求和释放资源的顺序不当,导致进程死锁。产生死锁的必要条件:互斥条件进程对所分配到的资源进行排他性使用。如果此时还有其他进程请求该资源,请求者只能阻塞,直到占有该资源的进程释放该资源。请求和保持条件进程已经保持了至少一个资源,但又提出了新的资源要求,而该资源又已被其他进程占有,此时请求进程阻塞,但请求进程又对已经获得的其他资源保持不放。不剥夺条件进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完后由自己释放。环路等待条件在发生死锁时,必然存在一个进程——资源的环形链。在解决死锁问题的几个方法中,哪种方法最容易实现?哪种方法使资源的利用率最高?【解】(1)预防死锁的方法最容易实现;(2)检测死锁和解除死锁的方法使资源利用率最高。分析题试写出相应的程序来描述图2-17所示的前趋图。SS11S3S2S51S41S71S61S81S11S21S31S41S51S61S71【解】(1)Vara,b,c,d,e,f,g,h;semaphore:=0,0,0,0,0,0,0,0;beginparbeginbeginS1;signal(a);signal(b);end;beginwait(a);S2;signal(c);signal(d);end;beginwait(b);S3;signal(e);end;beginwait(c);S4;signal(f);end;beginwait(d);S5;signal(g);end;beginwait(e);S6;singal(h);end;beginwait(f);wait(g);wait(h);S7;end;parendend(2)Vara,b,c,d,e,f,g,h,i,j;semaphore:=0,0,0,0,0,0,0,0,0,0,0;beginparbegin

温馨提示

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

评论

0/150

提交评论