第2章处理机管理(1)一、单项选择题1.以下对进程的描述中,错误的是。A.进程是动态的概念B.进程执行需要处理机C.进程是有生命期的D.进程是指令的集合解:进程是程序的T次执行过程,是动态的,它有生命周期。本题答案为D。2.以下关于进程的描述中,正确的是。A.进程获得CPU运行是通过调度得到的B.优先级是进程调度的重要依据,一旦确定就不能改变C.在单CPU的系统中,任意时刻都有一个进程处于运行状态D.进程申请CPU得不到满足时,其状态变为阻塞解:调度程序的功能是为进程分配处理机;动态优先级是可以改变的;有时计算机系统中没有任何进程运行,CPU处于空闲状态,计算机进行空转;进程已获得除CPU以外的资源时处于就绪状态。本题答案为A。3.一个进程是。A.由处理机执行的一个程序B.一个独立的程序+数据集C.PCB结构、程序和数据的组合D.一个独立的程序解:进程由PCB、程序和数据组成的。本题答案为C。4.并发进程指的是。A.可并行执行的进程B.可同一时刻执行的进程C.可同时执行的进程D.不可中断的进程解:同时是指宏观上的,含有时间上的重叠,而并行则不含时间上的重叠,表示同一时刻同时执行。本题答案为C。5.在多道程序环境下,操作系统分配资源以为基本单位。A.程序B.指令C.进程D.作业解:进程是资源分配的基本单位。本题答案为C。6.操作系统通过对进程进行管理。A.JCBB.PCBC.DCTD.CHCT解:操作系统通过进程控制块,即PCB对进程进行管理。本题答案为B。7.分配到必要的资源并获得处理机时间的进程状态是。A.就绪状态B.运行状态C.阻塞状态D.撤销状态解:对于分配到必要的资源并获得处理机时间的进程,CPU调度立刻将其状态转变为运行状态。本题答案为B。8.当一个进程处于这样的状态时,,称为阻塞状态。A.它正等着输入一批数据B.它正等着进程调度C.它正等着分给它一个时间片D.它正等着进入内存解:阻塞状态是指进程在等待I/O或数据的到来,等待CPU的进程处于就绪状态。本题答案为A。9.某个运行中的进程要申请打印机,它将变为。A.就绪态B.阻塞态C.创建态D.撤销态解:由于等待申请打印机的事件发生,所以从运行态转变为阻塞态。本题答案为B。10.以下进程状态转变中,转变是不可能发生的。A.运行一就绪B.运行一阻塞C.阻塞一运行D.阻塞一就绪解:当调度程序为某就绪状态的进程分配了处理机时,该进程便由就绪状态变为运行状态;正在执行的进程因等待发生某事件而无法执行时,该进程由运行状态变为阻塞状态;当处于阻塞状态的进程所等待的事件发生时,该进程由阻塞状态变为就绪状态;正在运行的进程如因时间片用完而暂停执行,该进程由运行状态转变为就绪状态,一个进程不可能直接从阻塞状态直接到运行状态,其中必须经过就绪状态。本题答案为C。11.当时,进程从执行状态转变为就绪状态。A.进程被调度程序选中B.时间片到C.等待某一事件D.等待的事件发生解:正在执行的进程,如因时间片用完而暂停执行,则该进程由执行状态转变为就绪状态。本题答案为B。12.一个进程的基本状态可以从其他两种基本状态转变过来,这个基本状态一定是。A.运行状态B.阻塞状态c.就绪状态D.完成状态解:一个进程可以从运行状态转变为就绪状态,也可以从阻塞状态转变为就绪状态。本题答案为C。13.进程状态由就绪态转换为运行态是由引起的。A.中断事件B.进程状态转换C.进程调度D.为程序创建进程解:本题答案为C。14.一个进程被唤醒意味着。A.该进程一定重新占用CPUB.它的优先级变为最大C.其PCB移至就绪队列队首D.进程变为就绪状态解:唤醒原语的功能是将被唤醒进程从等待队列中移出,将状态改为就绪并插入就绪列中。本题答案为D。15.下列选项中,降低进程优先级的合理时机是。A.进程的时间片用完B.进程刚完成I/O,进入就绪队列C.进程长期处于就绪队列中D.进程从就绪状态转为运行态解:CPU调度程序在当前进程的时间片用完后,就将当前进程转变为就绪态,再从就绪队列中调度一个新进程执行,此时降低进程优先级是最合理的时机。本题答案为A。16.以下可能导致一个进程从运行状态变为就绪状态的事件是。A.一次I/O操作结束B.运行进程需做I/O操作C.运行进程结束D.出现了比现在进程优先级更高的进程解:进程处于运行状态时,它必须已获得所需资源,在运行结束后就撤销。只有在时间片到或出现了比现在进程优先级更高的进程时才转变成就绪状态。本题答案为D。17.一次I/O操作的结束,有可能导致。A.一个进程由阻塞变为就绪B.几个进程由阻塞变为就绪C.一个进程由阻塞变为运行D.几个进程由阻塞变为运行解:一次I/O操作的结束后,该I/O资源可能被请求该资源的进程占有,从而使其从阻塞状态转变为就绪状态。本题答案为A。18.以下说法中,不是创建进程必须的。A.建立一个进程的进程表项B.为进程分配内存C.为进程分配CPUD.将进程表项插入就绪队列中解:进程刚创建后处于就绪状态,所以不为其分配CPU。本题答案为C。19.以下关于父进程和子进程的叙述中,正确的是。A.父进程创建了子进程,因此父进程运行完了,子进程才能运行B.父进程和子进程可以并发执行C.撤销子进程时,应该同时撤销父进程D.撤销父进程时,应该同时撤销子进程解:父子进程可以同时并发执行。在撤销父进程时,要根据子进程是否执行完来决定是否撤销子进程。本题答案为B。20.在引入线程的操作系统中,资源分配的基本单位是①,CPU分配的基本单位是②。A.程序B.作C.进程D.线程解:进程是操作系统进行资源分配的基本单位,在引入线程的操作系统中CPU分配的基本单位是线程。本题答案为:①C②D。21.在在下面的叙述中,正确的是。A.线程是比进程更小的能独立运行的基本单位B.引入线程可提高程序并发执行的程度,可进一步提高系统效率C.线程的引入增加了程序执行时的时空开销D.一个进程一定包含多个线程二、综合应用题1.为什么要引入进程概念?进程的基本特点是什么?它与程序有何联系和区别。解:进程的概念是操作系统中最基本的概念。为了描述系统内部出现的情况、系统内部各作业的活动规律而引进的一个新的概念,由于处在这样一个多道程序系统所带来的更为复杂的环境中,程序具有了并发、制约、动态的特征,使得原来的程序概念已难以刻画和反映系统中的情况了。进程的基本特点是动态性、并发性、独立性和异步性(通常指这4个基本特点,也可以包含进程的结构性);进程与程序的联系是:进程是程序的一次执行过程,没有程序就没有进程。进程与程序的区别如下:·进程是程序的执行,所以进程属于动态概念,而程序是一组指令的有序集合,是静态的概念。·进程既然是程序的执行,或者说是”一次运行活动”,因而它是有生命过程的。从投入运行到运行完成,或者说是进程存在诞生(创建进程)和死亡(撤销进程)。换言之,进程的存在是暂时,而程序的存在是永久的。·进程是程序的执行,因此进程的组成应包括程序和数据。除此之外,进程还由记录进程状态信息的PCB组成。·进程是竞争计算机系统有限资源的基本单位。·一个进程能与其他进程并发地活动。·一个程序可能对应多个进程,一个进程可以包含多个程序。也就是说,程序和进程无一一对应关系。·进程的几个特点程序都不具备。2.什么是多线程?多线程与多任务有什么区别?解:多线程指的是在一个程序中可以定义多个线程并同时运行它们,每个线程可以执行不同的任务。多线程与多任务区别:多任务是针对操作系统而言的,代表着操作系统可以同时执行的程序个数;多线程是针对一个程序而言的,代表着一个程序内部可以同时执行的线程个数,而每个线程可以完成不同的任务。3.设系统中有n(n2)个进程,且当前不执行进程调度程序,试考虑下述4种情况:①没有运行进程,有2个就绪进程,n个进程处于等待状态。②有1个运行进程,没有就绪进程,n-1个进程处于等待状态。③有1个运行进程,有1个就绪进程,n-2个进程处于等待状态。④有1个运行进程,n-1个就绪进程,没有进程处于等待状态。上述情况中,不可能发生的情况是哪些?解:在情况①中,就绪队列中有2个进程且n个进程处于等待状态,这样系统中就有n+2个进程,与题目条件不符合;另外就绪队列非空,处理机不应休闲。系统中可能出现有1个运行进程和n-1个等待进程的情况,也可能出现有1个运行进程、1个就绪进程和n-2个等待进程的情况,还可能出现有1个运行进程和n-1个就绪进程的情况,所以只有情况①不可能发生,其他情况均可能发生。4.在单用户系统中,有n个进程,问排在就绪队列和等待队列中进程个数的范围是什么?解:若就绪队列中有进程在排队,则调度程序必将其中一个调入CPU并运行,所以就绪队列中的进程个数为0~n-1。所有n个进程都有可能处于阻塞状态,所以等待队列中的进程个数为0~n。5.回答以下问题:(1)若系统中没有运行进程,是否一定没有就绪进程?为什么?(2)若系统中既没有运行进程,也没有就绪进程,系统中是否就没有进程?为什么?(3)在采用优先级进程调度时,运行进程是否一定是系统中优先级最高的进程?解:(1)是。因为若系统中没有运行进程,那么系统很快会选择一个就绪进程运行。只有就绪队列中无进程时,CPU才可能处于空闲状态:(2)不一定。因为系统中的所有进程可能都处于等待状态,但不一定处于死锁状态。(3)不一定。因为高优先级的进程有可能正处在等待队列中,进程调度就从就绪队列中选一个进程占用CPU,这个被选中的进程可能优先级较低。