问答题 试题三(共15分) 阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。 [说明] 操作系统主要功能之一是处理机管理,处理机管理主要是实现处理机扩充,以支持多个进程的并行运行,提高计算机的计算效率。 进程是动态的概念,通常称进程为程序的一次执行。进程的主体部分是程序,包括程序和数据。进程在执行期间具备确定的状态。 线程是进程中某个单独执行的控制流,也称为轻量进程。
问答题 [问题1](3分) 简述抢占(剥夺)式调度算法和非抢占式调度算法的特点。
【正确答案】 所谓抢占式,指按照一定的规则(例如优先数),在每次中断处理结束后进行调度,选择条件最优的进程投入运行; 所谓非抢占式调度是指,进程一旦被调度,就将一直运行,除非由于自身原因不能运行。
【答案解析】 在操作系统初始化时,创建所有进程,进程运行过程中,也可创建子进程。进程调度算法很多,归结为两类,即抢占(剥夺)式和非抢占式。抢占式调度策略,指按照一定的规则(例如优先数),在每次中断处理结束后进行调度,选择条件最优的进程投入运行。非抢占式调度是指,进程一旦被调度,就将一直运行,除非由于自身原因不能运行。
问答题 [问题2](3分) 请从下列叙述中选择出正确的叙述并将其序号填写在答题纸上。(该题为多选题) A.在多进程多线程系统中,处理机调度的最小单位是进程 B.线程可定义为进程内的一个执行单位,或者定义为进程内的一个可调度的实体 C.一个线程可以属于多个进程 D.进程处于可执行状态时,它的线程可以被调度执行,处于阻塞状态时,其所有线程均不能执行 E.进程的多个线程共享进程的地址空间
【正确答案】 B、D、E
【答案解析】 在多进程多线程系统中,处理机调度的最小单位是线程,而不是进程。 线程可定义为进程内的一个执行单位,或者定义为进程内的一个可调度的实体。 进程由一个或一组线程组成;一个线程属于且仅属于一个进程。 进程处于可执行状态时,它的线程可以被调度执行,而处于阻塞状态时,其所有线程均不能执行。 进程的多个线程共享进程的地址空间。
问答题 [问题3](9分) 进程状态之间切换关系如图3-1所示,具体说明进程三种状态的特点,并将三种状态之间的切换条件(a)至(d)填写在答题纸对应栏目中。
【正确答案】 运行状态特点:进程占有CPU,正在运行其程序时处于运行态。 就绪状态特点:进程具备了一切运行的条件,但由于CPU正在运行别的进程而使它不能运行时,处于就绪态。 等待状态特点:进程由于自身原因必须等待某个条件的具备,否则不能继续运行时,处于等待态。 (a)某个运行条件不能满足(例如等待资源); (b)等待条件消失(例如等待的资源已经获得满足); (c)进程自愿放弃CPU使用权,或被强制剥夺CPU使用权; (d)就绪队列中的进程获得CPU使用权。
【答案解析】 图3-l给出了进程三个状态:运行、就绪、等待之间的切换关系,这三种状态的特点如下:①进程拥有CPU,正在运行其程序时处于运行态;②具备了一切运行的条件,但由于CPU正在运行别的进程而使它不能运行时,进程处于就绪态;③由于自身原因必须等待某个条件的具备,否则不能继续运行时,进程处于等待态。 对于正在运行的进程,当某个运行条件不能满足,例如等待某个资源时,便将CPU让出而转入等待态;当等待条件消失,例如等待的资源已经获得满足,进程从等待态进入就绪态等待调度:处于运行态的进程,如自愿放弃CPU,或被高优先级进程强制剥夺CPU使用权后,从运行态转入就绪态;控制权被释放后,CPU将从就绪队列中选取排在最前面的进程投入运行。就绪队列中获得CPU使用权的进程,便转入运行态。 三种状态的特点如下。 (1)运行态:进程占有CPU,正在运行其程序时处于运行态; (2)就绪态:进程具备了一切运行的条件,但由于CPU正在运行别的进程而使它不能运行时,处于就绪态; (3)等待态:进程由于自身原因必须等待某个条件的具备,否则不能继续运行时,处于等待态。 三种状态之间的切换条件分别为: (1)某个运行条件不能满足(例如等待资源); (2)等待条件消失(例如等待的资源已经获得满足); (3)进程自愿放弃CPU使用权,或被强制剥夺CPU使用权; (4)就绪队列中的进程获得CPU使用权。