第二章 一 填空 1.进程在执行过程中有3种基本状态,它们是 运行 态、 就绪 态和阻塞 态。 2.系统中一个进程由 程序 、 数据集合 和 进程控制块(PCB)三部分组成。 3.在多道程序设计系统中,进程是一个 动 态概念,程序是一个 静 态概念。 4.在一个单CPU系统中,若有5个用户进程。假设当前系统为用户态,则处于就绪状态的用户进程最多有 4 个,最少有 0 个。 注意,题目里给出的是假设当前系统为用户态,这表明现在有一个进程处于运行状态,因此最多有4个进程处于就绪态。也可能除一个在运行外,其他4个都处于阻塞。这时,处于就绪的进程一个也没有。 5.总的来说,进程调度有两种方式,即 不可剥夺 方式和 剥夺 方式。 6.进程调度程序具体负责 中央处理机(CPU)的分配。 7.为了使系统的各种资源得到均衡使用,进行作业调度时,应该注意 CPU忙碌 作业和 I/O忙碌 作业的搭配。 8.所谓系统调用,就是用户程序要调用 操作系统 提供的一些子功能。 9.作业被系统接纳后到运行完毕,一般还需要经历 后备 、 运行 和 完成 三个阶段。 10.假定一个系统中的所有作业同时到达,那么使作业平均周转时间为最小的作业调度算法是 短作业优先 调度算法。 二、选择 1.在进程管理中,当 C 时,进程从阻塞状态变为就绪状态。 A.进程被调度程序选中 B.进程等待某一事件发生 C.等待的事件出现 D.时间片到 2.在分时系统中,一个进程用完给它的时间片后,其状态变为 A 。 A.就绪 B.等待 C.运行 D.由用户设定 3.下面对进程的描述中,错误的是 D 。 A.进程是动态的概念 B.进程的执行需要CPU C.进程具有生命周期 D.进程是指令的集合 4.操作系统通过 B 对进程进行管理。 A.JCB B.PCB
C.DCT D.FCB 5.一个进程被唤醒,意味着该进程 D 。
A.重新占有CPU B.优先级变为最大 C.移至等待队列之首 D.变为就绪状态 6.由各作业JCB形成的队列称为 C 。
A.就绪作业队列 B.阻塞作业队列 C.后备作业队列 D.运行作业队列 7.既考虑作业等待时间,又考虑作业执行时间的作业调度算法是 A 。 A.响应比高者优先 B.短作业优先 C.优先级调度 D.先来先服务
8.作业调度程序从处于 D 状态的队列中选取适当的作业投入运行。 A.就绪 B.提交 C.等待 D.后备 9. A 是指从作业提交系统到作业完成的时间间隔。 A.周转时间 B.响应时间 C.等待时间 D.运行时间
10.计算机系统在执行 C 时,会自动从目态变换到管态。 A.P操作 B.V操作 C.系统调用 D.I/O指令 三、问答
1.在多道程序设计系统中,如何理解“内存中的多个程序的执行过程交织在一起,大家都在走走停停”这样一个现象?
答:在多道程序设计系统中,内存中存放多个程序,它们以交替的方式使用CPU。因此,从宏观上看,这些程序都开始了自己的工作。但由于CPU只有一个,在任何时刻CPU只能执行一个进程程序。所以这些进程程序的执行过程是交织在一起的。也就是说,从微观上看,每一个进程一会儿在向前走,一会儿又停步不前,处于一种“走走停停”的状态之中。 2.什么是“原语”、“特权指令”、“系统调用命令”和“访管指令”?它们之间有无一定的联系?
答:特权指令和访管指令都是CPU指令系统中的指令,只是前者是一些只能在管态下执行的指令,后者是一条只能在目态下执行的指令。原语和系统调用命令都是操作系统中的功能程
序,只是前者执行时不能被其他程序所打断,后者没有这个要求。操作系统中有些系统调用命令是以原语的形式出现的,例如创建进程就是一条原语式的系统调用命令。但并不是所有系统调用命令都是原语。因为如果那样的话,整个系统的并发性就不可能得到充分地发挥。 3.操作系统是如何处理源程序中出现的系统调用命令的?
答:编译程序总是把源程序中的系统调用命令改写成为一条访管指令和相应的参数。这样在程序实际被执行时,就通过访管指令进入操作系统,达到调用操作系统功能子程序的目的。 4.系统调用与一般的过程调用有什么区别?
答:系统调用是指在用户程序中调用操作系统提供的功能子程序;一般的过程调用是指在一个程序中调用另一个程序。因此它们之间有如下三点区别。
(1)一般的过程调用,调用者与被调用者都运行在相同的CPU状态,即或都处于目态(用户程序调用用户程序),或都处于管态(系统程序调用系统程序);但发生系统调用时,发出调用命令的调用者运行在目态,而被调用的对象则运行在管态,即调用者与被调用者运行在不同的CPU状态。
(2)一般的过程调用,是直接通过转移指令转向被调用的程序;但发生系统调用时,只能通过访管指令提供的一个统一的入口,由目态进入管态,经分析后,才转向相应的操作系统命令处理程序。
(3)一般的过程调用,在被调用者执行完后,就径直返回断点继续执行;但系统调用可能会导致进程状态的变化,从而引起系统重新分配处理机。因此,系统调用处理结束后,不一定是返回调用者断点处继续执行。 5.试述创建进程原语的主要功能。 答:创建进程原语的主要功能有以下三项。 (1)为新建进程申请一个PCB。
(2)将创建者(即父进程)提供的新建进程的信息填入PCB中。
(3)将新建进程设置为就绪状态,并按照所采用的调度算法,把PCB排入就绪队列中。 6.处于阻塞状态的一个进程,它所等待的事件发生时,就把它的状态由阻塞改变为就绪,让它到就绪队列里排队,为什么不直接将它投入运行呢?
答:只要是涉及管理,就应该有管理的规则,没有规则就不成方圆。如果处于阻塞状态的一个进程,在它所等待的事件发生时就径直将它投入运行(也就是把CPU从当前运行进程的手中抢夺过来),那么系统就无法控制对CPU这种资源的管理和使用,进而也就失去了设置操
操作系统第二章练习题与答案



