答:B
30.从总体上说,采用多道程序设计技术可 单位时间的算题量,但对每一个算 题,从算题开始到全部完成所需的时间比单道执行所需的时间可能要 。 A.增加,减少 B.增加,延长 C. 减少,延长 D.减少,减少 答:B
31.同一程序运行在不同的数据集上,创建了 的进程。 A.同步 B.互斥 C. 相同 D.不同 答:D
32.关于进程,下列叙述不正确的是 。 A.进程包含了数据和运行其上的程序
B.同一程序运行在不同的数据集合上时,构成不同的进程
C.一个被创建了的进程,在它消亡之前,总是处于三种基本状态之一
D.若干个进程在单CPU系统中必须依次执行,即一个进程完成后,另一个进程才能 开始工作 答:D
33.对于一个单CPU系统,允许若干进程同时执行,轮流占用CPU称它们为 的。 A.顺序执行 B.同时执行 C.并行执行 D.并发执行 答:D
34.一个程序与和它有关的进程的对应关系是 。 A.一对一 B.多对一 C.一对多 D.多对多 答:C
35.在操作系统中,使计算机系统能实现进程并发执行,保证系统正常工作的机制是 。 A.中断 B.查询 C.同步 D.互斥 答:A
二.填空题
1.进程的基本特征有 ① 、 ② 、独立性、异步性及结构特征。 答:①动态性 ②并发性
2.信号量的物理意义是当信号量值大于零时表示 ① ;当信号量值小于零时其绝对值表示 ② 。
答:①可用资源的数目 ②因请求该资源而被阻塞的进程数目 3.临界资源的概念是 ① ,而临界区是指② 。
13
答:①一次仅允许一个进程访问的资源
②进程中访问临界资源的那段程序代码
4.进程在运行过程中有三种基本状态,它们是 ① 、 ② 、 ③ 。 答:①运行 ②就绪 ③等待(阻塞)
5.进程主要由 ①、 ② 、 ③ 三部分内容组成,其中 ④ 是进程存在的唯一标志,而
⑤ 部分也可以为其他进程共享。
答:①程序段 ②数据段 ③PCB ④PCB ⑤程序段 6.系统中各进程之间逻辑上的相互制约关系称为 。 答:进程同步
7:若一个进程己进入临界区,其他欲进入临界区的进程必须 。 答:等待
8.将进程的 链接在一起就形成了进程队列。 答:PCB
9.用P、V操作管理临界区时,任何一个进程在进入临界区之前应调用 ① 操作,在退出临界区时应调用 ② 操作。 答:①P ②V
10.用信箱实现通信时,应有 ① 和 ② 两条基本原语。 答:①发送 ②接收
11.在多道程序系统中,进程之间存在着的不同制约关系可以划分为两类: ① 与 ② 。③ 指进程间具有的一定逻辑关系; ④ 是指进程间在使用共享资源方面的约束关系。 答:①同步 ②互斥 ③同步 ④互斥
12.有m个进程共享同一临界资源,若使用信号量机制实现对临界资源的互斥访问,则信号量值的变化范围是 。 答:1至-(m-1)
13.设系统中有n(n>2)个进程,且当前不再执行进程调度程序,试考虑下述4种情况: ①没有运行进程,有2个就绪进程,n个进程处于等待状态。 ②有1个运行进程,没有就绪进程,n一1进程处于等待状态。 ⑨有1个运行进程,有1个就绪进程,n一2进程处于等待状态。 ④有1个运行进程,n一1个就绪进程,没有进程处于等待状态。 上述情况中,不可能发生的情况是 。 答:①
14.在一个单处理机系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有 ① 个,最少有 ② 个。 答:①4 ②0
15.操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列等待的条件是 。 答:S<0
14
16.下面关于进程的叙述不正确的是 。
①进程申请CPU得不到满足时,其状态变为等待状态。 ②在单CPU系统中,任一时刻至多有一个进程处于运行状态。 ③优先级是进行进程调度的重要依据,一旦确定不能改变。 ④进程获得处理机而运行是通过调度而实现的。 答:③
17.信箱逻辑上分成 ① 和 ② 两部分。 ① 中存放有关信箱的描述。 ② 由若干格子组成, 每格存放一信件,格子的数目和大小在创建信箱时确定。 答:①信箱头 ②信箱体
18.当多个进程等待分配处理机时,系统按一种规定的策略从多个处于 状态的进 程中选择一个进程,让它占有处理机,被选中的进程就进入了 状态。 答:就绪、执行
19.若使当前运行的进程总是优先级最高的进程,应选择 进程调度算法。 答:抢占式(剥夺式)
20.操作系统中用于完成一些特定功能的、不可中断的过程称为 。 答:原语
三.简答题
1.在操作系统中为什么要引入进程概念?它与程序的关系是怎样的?
答:在操作系统中,由于多道程序并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。这些都是在程序执行的动态过程中发生的。用程序这个静态概念已不能如实反映程序并发执行过程中的这些特征。为此,人们引入“进程”这一概念来描述程序动态执行过程的性质。
进程和程序是既有联系又有区别的两个概念,进程不能脱离具体程序而虚设,程序规定了相应进程所要完成的动作。它们的主要区别如下:
(1)程序是指令的有序集合,其本身没有任何运行的含义,它是一个静态的概念;进程是程序在处理机上的一次执行过程,它是一个动态概念。
(2)程序的存在是永久的,而进程则是有生命期的,它因创建而产生,因调度而执行,因得不到资源而暂停,因撤销而消亡。
(3)程序仅是指令的有序集合。而进程则由程序、数据和进程控制块组成。 (4)在传统的操作系统中,进程是资源分配和调度运行的基本单位,而程序不是。
(5)进程与程序之间不是一一对应的,即同一程序同时运行于若干不同的数据集合上,它将属于若干个不同的进程;而一个进程至少对应执行一个程序。
2.为了实现并发进程间的合作和协调工作,以及保证系统的安全,操作系统在进程管理方面应做哪些工作?
答:(1)进程控制:系统必须设置一套控制机构来实现进程创建、进程撤消以及进程在
15
运行过程中的状态转换。
(2)进程同步:系统必须设置同步机制来实现对所有进程的运行进行协调,协调的方式包括进程的互斥和进程的同步。
(3)进程通信:多道程序环境下可能需要诸进程合作完成一个任务,这些进程相互间需要通过交换信息来协调各自工作的进度。因此系统必须具有进程之间通信(交换信息)的能力。 (4)进程调度:系统必须能够在处理机空闲时,按一定算法从就绪进程队列中选择一个就绪进程,把处理机分配给它,并为之设置运行的现场使其投入运行。 3.在操作系统中引入线程概念的主要目的是什么?
答:减少程序并发执行时所需付出的时空开销,提高程序执行的并发度。特别有利于共享存储器的多处理机系统,和更加适合c/s模型。
4.在一个单CPU的多道程序设计系统中,若在某一时刻有N个进程同时存在,那么处于运行态、等待态和就绪态进程的最小和最大值分别可能是多少?
答:若多道程序设计系统中,在某一时刻有N个进程同时存在,则处于运行态的进程最少0个,最大1个;处于就绪态的进程最少0个,最大N—1个;处于等待态的进程最少0个,最大N个。
5.进程之间存在哪几种相互制约关系?各是什么原因引起的?下列活动分别属于哪种制约关系?
(1)若干同学去图书馆借书; (2)两队举行篮球比赛; (3)流水线生产各道工序; (4)商品生产和社会消费
答:进程之间的制约关系分为直接制约关系(即同步)和间接制约关系(即互斥)。同步是因合作进程之间协调彼此的工作而控制自己的执行速度,即因相互合作、相互等待而产生的制约关系;而互斥是进程之间竞争临界资源而禁止两个以上的进程同时进入临界区所发生的制约关系。
(1)属于互斥关系,因为一本书只能借给一个同学。 (2)属于互斥关系,篮球只有一个,两队都要争夺。
(3)居于同步关系,各道工序的开始都依赖前一道工序的完成。
(4)属于同步关系,商品没生产出来则消费无法进行,商品没有消费完则无须再生产。 6.为了让用户进程互斥地进入临界区,可以把整个临界区实现成不可中断的过程,即让用户具有屏蔽所有中断的能力。每当用户程序进入临界区的时候,屏蔽所有中断;当出了临界区的时候,再开放所有中断。你认为这种方法有什么缺点。
答:用户进程进入临界区时屏蔽所有中断,应当也包括系统程序。若屏蔽的是用户进程,的确可以保护临界资源,但若系统所发出的中断也被屏蔽,则会引起错误,因为系统的中断往往与当前运行的程序无关,却可能是一些重要的硬件中断,如电源故障等,故不可盲目屏蔽所有中断;又或者当时发出故障中断的中断源恰好是该临界资源,则更应该及时响应处理。 7.设有n个进程共享一个互斥段,对于如下两种情况:
16