【解析】进程是操作系统中的一个最基本、最重要的概念,所谓进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动。它实际上是对“程序”在系统中运行活动的描述。进程在它存在过程中,其状态处于不断地变化中,通常一个进程至少有三种不同的状态:运行状态、就绪状态、等待状态,并且在这三种状态下不断地变化。所以,选择(B)、(D)、(E)。 2.进程所具有的基本特征包括_________。
(A)动态性 (B)顺序性
(C)并发性 (D)封闭性 (E)异步性 【答案】ACE
【解析】进程具有的特征包括:动态性、并发性和异步性,而“顺序性”和“封闭性”都不是进程具有的特征。所以,选择(A)、(C)、(E)。 3.一个进程通常包括_________。
(A)程序 (B)作业说明书 (C)数据 (D)运行日志 (E)进程控制块(PCB) 【答案】ACE
【解析】一个进程由三部分组成:程序、数据及进程控制块(PCB)。进程控制块是记录进程有关信息的一块主存,是进程存在的程序唯一标识。所以,选择(A)、(C)、(E)。
4.运行状态的进程由于某种原因可能变为_________。 (A)就绪状态 (B)等待状态
(C)后备状态 (D)完成状态 (E)活跃状态 【答案】AB
【解析】运行状态的进程有可能由于时间片到而变为“就绪状态”;也有可能由于等待某事件的发生而变为“等待状态”。“后备状态”、“完成状态”、“活跃状态”都不是进程的状态。所以,选择(A)、(B)。
5. 进程调度算法中,可以设计成“可抢占式”的算法有_________。 (A)先来先服务调度算法 (B)优先数调度算法
(C)最高响应比优先 (D)时间片轮转调度算法 (E)最短作业优先 【答案】BD
【解析】常用的进程调度算法有先来先服务、优先数、时间片轮转及多级调度等算法。而先来先服务调度算法是“非抢占式”的;“优先数调度算法”可以是“非抢占式”的,也可以是“抢占式”的;“时间片轮转调度算法”是一种“抢占式”的。算法“最高响应比优先”、“最短作业优先”适用于作业调度,而不适于进程调度。所以选择(B)、(D)。三种进程调度算法的含义如下: (-)先来先服务调度算法
这种调度算法是按照进程进入就绪队列的先后次序选择可以占用处理器的进程。当有进程就绪时,把该进程排入就绪队列的末尾,而进程调度总是把处理器分配给就绪队列中的第一个进程。一旦一个进程占有了处理器,它就一直运行下去,直到因等待某事件或进程完成了工作才让出处理器。 (二)优先数调度算法
对每个进程确定一个优先数,进程调度总是让具有最高优先数的进程先使用处理器。如果进程具有相同的优先数,则对这些有相同优先数的进程再按先来先服务的次序分配处理器。就绪队列中进程可按优先数从大到小排列,这样,进程调度也总是把处理器分配给就绪队列中的第一个进程。
进程被创建时系统为其确定一个优先数,进程的优先数可以是固定的,也可随进程的执行过程而动态变化。
优先数调度算法分为“非抢占式”的与“可抢占式”的两种。 (三)时间片轮转调度算法
系统规定一个“时间片”的值。调度算法让就绪进程按就绪的先后次序排成队列,每次总是选择就绪队列中的第一个进程占用处理器,但规定只能使用一个“时间片”。如果一个时间片用完,进程工作尚未结束,则它也必须让出处理器而被重新排到就绪队列的末尾,等待再次运行,当再次轮到运行时,重新开始使用一个新的时间片。这样,就绪队列中的进程就依次轮流地占用处理器运行。 6.从中断事件的性质来说,一般中断包括_________。 (A)硬件故障中断 (B)程序中断
(C)外部中断 (D)输入输出中断 (E)访管中断 【答案】ABCDE
【解析】不同硬件结构的计算机,它们的中断源不尽相同。但从中断事件的性质来说,一般可以分成下述几类:硬件故障中断、程序中断、外部中断、输入输出中断、访管中断。所以选择(A)、(B)、(C)、(D)、(E)。 前面四类中断是由于外界的原因迫使正在运行的进程被打断,因此可称为强迫性中断事件。而第五类中断是正在运行的进程所期待的,可称为自愿性中断事件。 7.在下列叙述中,错误的是 。
(A)分时系统中,时间片越小,响应时间越长
(B)多道程序的引入,主要是为了提高CPU及其它资源的利用率 (C)飞机票订票系统是分时系统
(D)PCB是进程存在的唯一标志,而程序是系统感知进程存在的唯一实体 (E)通常在处理器执行完一条指令后,硬件的中断装置立即检查有无中断事件发生
【答案】ACD
【解析】分时系统的响应时间 T≈nq, n是用户数目,而 q是时间片。当在用户数目一定的情况下,时间片越小,响应时间越短。因此,选项(A)错误。 在单道程序环境中,系统的全部资源为一个作业所独占,如果该作业在进行输入或输出时,CPU仍然被它所占有,处于等待状态。由于CPU与外设处理速度上的差异,如果采用多道程序设计技术,当某个作业输入或输出时,CPU就可处理其他的作业,其它资源也是类似的。选项(B)正确。
飞机票订票系统是实时信息处理系统。所以,选项(C)错误。
PCB是进程存在的唯一标志,也是系统感知进程存在的唯一实体。而进程的程序部分描述了进程所要完成的功能。选项(D)错误。
通常在处理器执行完一条指令后,硬件的中断装置立即检查有无中断事件发生,若有中断事件发生,则暂停现行进程的运行,而让操作系统中的中断处理程序占用处理器,这一过程称为“中断响应”。选项(E)正确。 8.在下列叙述中,正确的是_________。
(A)进程之间的状态变化,一定在PCB中反映出来 (B)当进程完成I/O后,进程的状态由等待变为运行 (C)中断屏蔽是不允许发生中断
(D)O.S的特征之一为并行性,所谓并行性是指多个进程同时处于运行状态 (E)中断屏蔽是暂时不响应中断 【答案】AE 【解析】
PCB中记录了进程当前的状态,所以进程之间的状态变化,在 PCB中一定有记录。选项(A)正确。
当进程完成I/O后,进程的状态变为就绪,何时运行由进程调度程序决定。选项(B)错误。
中断屏蔽期间允许发生中断,但暂时不响应。选项(C)错误,选项(E)正确。 所谓并行性是指多个作业同时处于运行状态,这是一种宏观上的并行,对于进程来说,还是按处理机调度交替地(轮流)占有处理机。选项(D)错误。 所以,选择(A)、(E)。
9.可以做为进程调度算法的有_________。
(A)先来先服务调度算法 (B)时间片轮转调度算法
(C)最高优先级调度算法 (D)响应比高者优先调度算法 (E)均衡调度算法 【答案】ABC
【解析】参见前面的第5题解析。
10.影响时间片轮转调度算法对进程响应时间的因素有________。 (A)内存容量 (B)时间片值的选取 (C)外存容量 (D)交互进程的数量 (E)IO设备的速度 【答案】BD
【解析】分时系统的响应时间T可以表达为: T≈QxN,其中Q是时间片,而N是交互进程数量。因此,对进程响应时间的因素主要有:“时间片值的选取”和“交互进程的数量”。当时间片一定,交互进程的数越多(即N越大),T就越大。所以选择(B)、(D)。
11.________可能会引起处理机从一个进程转到另一个进程。 (A)一个进程从运行状态变为等待状态 (B)一个进程从运行状态变为就绪状态 (C)一个就绪状态进程的优先级降低 (D)一个进程运行完成而撤离系统 (E)一个就绪状态进程的优先级升高 【答案】ABDE
【解析】当一个就绪状态进程的优先级降低时,不会引起处理机从一个进程转到另一个进程。因此,不能选择C,其它情况都可能引起处理机在不同进程之间的转换。所以,本题应该选择(A)、(B)、(D)、(E)。 四、是非判断题
1.进程之间的状态变化,一定在PCB中反映出来。() 【答案】正确。
【解析】 PCB中记录了进程当前的状态,所以进程之间的状态变化,在 PCB中一定有记录。
2.当进程完成I/O后,进程的状态由等待变为运行。() 【答案】错误。
【解析】当进程完成I/O后,进程的状态变为就绪,何时运行由进程调度程序决定。
3.中断屏蔽是不允许发生中断。 ( ) 【答案】错误
【解析】中断屏蔽期间允许发生中断,但暂时不响应。
4.O.S的特征之一为并行性,所谓并行性是指多个进程同时处于运行状态 ?( )
【答案】错误
【解析】所谓并行性是指多个作业同时处于运行状态,这是一种宏观上的并行,对于进程来说,还是按处理机调度交替地(轮流)占有处理机。 五、简答题
1.设有三个进程A,B,C,进程A和进程B各需要运行3毫秒的处理器时间,而进程C却要24毫秒的处理器时间,分别考虑当三个进程到达顺序为A,B,C时及C,B,A时,用先来先服务进行调度时各自的平均等待时间。 【解析】
当三个进程到达顺序为A,B,C时,按照先来先服务的顺序,进程A先占用处理器,进程B需等待3毫秒后才能去占用处理器,进程C在等待6毫秒的时间后可以占用处理器。于是,它们的平均等待时间为(0+3+6)/3=3毫秒。
如果进程是按 C,B,A的次序排入队列,则进程C先占用处理器运行24毫秒后才能让进程B占用,即进程B需等待24毫秒,而进程A在等了27毫秒后才可占用处理器,现在这三个进程的平均等待时间为(27+24+0)/3=17毫秒。可见当运行时间长的进程先就绪的话,先来先服务算法使系统效率受到影响。 2.什么是“抢占式优先级调度”和“非抢占式优先级调度”? 【解析】
采用“非抢占式”调度时,一旦有某个高优先数的进程占用了处理器,就一直让它运行下去直到该进程由于自身的原因主动让出处理器或进程执行结束而让出处理器。此时,进程调度才重新再按优先数选择另一个占用处理器的进程。采用“可抢占式”的调度,这种方式是严格保证任何时刻,总是让具有最高优先数的进程在处理器上运行。也就是说,当某一进程在处理器上运行时,一旦有另一个更高优先数的进程就绪,进程调度就要剥夺正在处理器上运行的进程使用处理器的权力,抢回分配给它的处理器,而把处理器让具有更高优先数的进程使用。这种抢占式的优先数调度算法在实时系统中很有用。例如,在实际系统中可把处理紧急情况的报警进程赋予最高优先数,一旦有紧急事件发生时,触发报警进程就绪,进程调度就让这个报警进程抢占处理器进行紧急处理和发出警告信号。 3.时间片轮转调度算法中,时间片值的选取对系统有什么影响? 【解析】
时间片取值的大小关系到计算机系统的效率和用户的满意度,所以,时间片的值应根据进程要求系统给出应答的时间和进入系统的进程数来决定。如果要求系统快速应答则时间片小一些,这样使轮转一遍的总时间减少而可对进程尽快应答。
如果进程数少,则时间片可以大一些,这样可减少进程调度的次数,提高系统效率。
对每个进程可规定相同的时间片,但有的系统对不同的进程规定不同的时间片,例如,对很少使用外围设备而需要运算时间长的进程,给一个大一些的时间片,以达到减少调度次数,加快进程执行速度的目的。但应注意到,时间片值过大时该算法退化为先来先服务;时间片值过小时,加重系统开销。 4.引起“进程切换”的时机有哪些? 【解析】
我们把处理机从一个进程转到另一个进程称为“进程切换”。引起“进程切换”的时机有以下几种情况:
(1)一个进程从运行状态变为等待状态。 (2)一个进程从运行状态变为就绪状态。 (3)一个进程从等待状态变为就绪状态。 (4)一个进程运行完成而撤离系统。
5.中断分为哪几种类型,给出各自的含义。 【解析】
(1)硬件故障中断。它是由于机器故障造成的,例如,电源故障、主存出错等。
(2)程序中断。这是由于程序执行到某条机器指令时可能出现的各种问题而引起的中断,例如,发现定点操作数溢出、除数为“0”、地址越界、使用非法指令码、目态下的用户使用了特权指令等。
(3)外部中断。这是由各种外部事件引起的中断,例如,按压了控制板上的一个中断键、设置的定时时钟的时间周期到。
(4)输入输出中断。输入输出控制系统发现外围设备完成了输入输出操作或在执行输入输出操作时通道或外围设备产生错误而引起的中断。
(5)访管中断。它是正在运行的进程为了请求调用操作系统的某个功能而执行一条“访管指令”所引起的中断。例如,用户要求分配一台外围设备、要求分配一些主存区域。要求启动外围设备读一批数据等。 6.给出中断响应的系统流程。 【解析】
每一个程序都要有一个程序状态字(PSW)来刻画本程序的执行状态,在单处理器的计算机系统中整个系统设置一个用来存放当前运行进程的PSW的寄存器,该寄存器称为“程序状态字寄存器”。为了说明中断响应过程,我们区分三种PSW:
(1)存放在程序状态字寄存器中的PSW是当前正占用处理器的进程的PSW,称“当前PSW”。
(2)出现中断事件后,要由操作系统的中断处理程序占用处理器,让中断处理程序处理出现的中断事件。我们把中断处理程序的PSW称“新PSW”,新PSW中存放着中断处理程序的入口地址。
(3)中断处理程序在占用处理器前,必须把被中断进程的PSW保护好,以便该进程在适当的时候能使被中断时的情况继续执行。把保护好的被中断进程的PSW称“旧PSW”。
当中断装置发现中断事件后,首先把出现的中断事件存放到程序状态字寄存器中的中断码位置,然后把程序状态字寄存器中的“当前PSW”作为“旧PSW”