•
一、单项选择题(在每小题的四个备选答案中选出一个正确答案,并将正确的答案写在题干后面的括号内。)
•
1.在操作系统中,进程是一个具有一定独立功能的程序在某个数据集上的一次
。
•
A)等待活动
B)运行活动
C)单独操作
D)关联操作
•
2.下面对进程的描述中,错误的是
。
•
A)进程是动态的概念
B)进程执行需要处理机
•
C)进程是有生命期的
D)进程是指令的集合
•
3.下列的进程状态变化中,
变化是不可能发生的。
•
A)运行一就绪
B)运行一等待
•
C)等待一运行
D)等待一就绪
•
4.一个运行的进程用完了分配给它的时间片后,它的状态变为
•
A)就绪
B)等待
C)运行
D)完成
•
5.在进程管理中,当
时,进程从阻塞状态变为就绪状态。
•
A)进程被进程调度程序选中
B)等待某一事件
•
C)等待的事件发生
D)时间片用完
•
6.建立进程就是
。
•
A)建立进程的目标程序
B)为其建立进程控制块
•
C)建立进程及其子孙的进程控制块 D)将进程挂起
•
7.分配到必要的资源并获得处理机时的进程状态是
。
•
A)就绪状态
B)执行状态
C)阻塞状态
D)撤消状态
•
8.在操作系统中,P、V操作是一种
。
•
A)机器指令
B)系统调用命令
•
C)作业控制命令
D)低级进程通信原语
•
9.在消息缓冲通信中,消息队列属于
资源。
•
A)临界
B)共享
C)永久
D)可剥夺
•
10.对进程的管理和控制使用
。
•
A)指令
B)原语
C)信号量
D)信箱通信
•
11.若P、V操作的信号量S初值为2,当前值为-1,则表示有
等待进程。
•
A)0个
B)1个
C)2个
D)3个
•
12.如果有三个进程共享同一互斥段,而且每次最多允许两个进程进入该互斥段,则信号量的初值应设置为
。
•
A)3
B)0
C)2
D)1
•
13.用V操作唤醒一个等待进程时,被唤醒进程的状态变为
。
•
A)等待
B)就绪
C)运行
D) 完成
•
14.临界区是
。
•
A)一段共享数据区
B)一个缓冲区
•
C)一段互斥执行的程序段
D)一个互斥资源
•
15.进程间的同步是指进程间在逻辑上的相互
关系。
•
A)联接
B)制约
C)继续 D)调用
•
16.信箱通信是一种
通信方式。
•
A)直接通信
B)间接通信
C)低级通信 D)信号量
•
17.
是一种只能进行P操作和V操作的特殊变量
•
A)调度
B)进程
C)同步 D)信号量
•
18.操作系统通过
对进程进行管理。
•
A)进程
B)进程控制块
C)进程启动程序 D)进程控制区
•
19.下面所述步骤中,
不是创建进程所必需的。
•
A)由调度程序为进程分配CPU
B)建立一个进程控制块
•
C)为进程分配内存
D)将进程控制块链入就绪队列
•
20.多道程序环境下,操作系统分配资源以
为基本单位。
•
A)程序
B)指令
C)进程
D)作业
•
二、填空题
•
1.进程映象通常包括
、
、
和
。其中
含有进程的描述信息和控制信息,是进程映象中最关键的部分。
•
2.信号量的物理意义是当信号量值大于零时表示
;当信号量值大于零时,其绝对值为
。
•
3.临界资源的概念是
,而临界区是指
。
•
4.系统中各进程之间逻辑上的相互制约关系称为
。
•
5.若一个进程已进入临界区,其他欲进入临界区的进程必须
。
•
6.将进程的
链接在一起就形成了进程队列。
•
7.用P、V操作管理临界区时,任何一个进程在进入临界区之前应调用
操作,退出临界区时应调用
操作。
•
8.用信箱实现通信时,应有
和
两条基本原语。
•
9.在多道程序系统中,进程之间存在着的不同制约关系可以划分为两类:
与
。
指进程间具有的一定逻辑关系;
是指进程间在使用方面的约束关系。
•
10.进程是一个
态概念,而程序是一个
态概念。
•
11.在一个单处理机系统中,若有5个用户进程,且假设当前时刻为用户态就绪状态的用户进程最多有
个,最少有
个。
•
12.操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队,条件是
。
•
13.当处理机空闲时,进程调度程序从
中选出一个进程执行。
•
三、简答题
•
1.什么是原语?原语的主要特点是什么?
•
2.什么是线程?进程和线程是什么关系?
•
3.如何保证进程互斥地访问临界资源?
•
4.为什么进程对临界资源的访问必须互斥?
•
四、思考题
•
1.在生产者—消费者问题中,如果将两个P操作,即P(full)和P(mutex)互换位置或者将P(empty)和P(mutex)互换位置,其后果如何?如果将两个V操作,即V(full)和V(mutex)互换位置,或者将V(empty)和V(mutex)互换位置,其后果又如何?
•
2.在单处理机的分时系统中,分配给进程P的时间片用完后,系统进行切换,结果调度到的仍然是进程P。有可能出现上述情形吗?如果可能请说明理由。
•
3.有三个进程P1,P2和P3并发工作,进程P1需用资源S3和S1,进程P2需用资源S1和S2,进程P3需用资源S2和S3。试回答下面两个问题。
•
(1)若对资源分配不加限制,会发生什么情况?为什么?
•
(2)为保证进程正确工作,应采用怎样的资源分配策略?为什么?
答案:
•
一、单项选择题
•
1.B 2.D 3.C
4.A 5.C 6.B 7.B 8.D 9.A 10.B 11.B 12.C 13.B 14.C
15.B
16.B
17.D 18.B 19.A 20.C
•
二、填空题
•
1.用户程序
用户数据
系统栈 进程控制块 进程控制块
•
2.可用资源的数目
因请求该资源而被阻塞的进程数目
•
3.一次仅允许一个进程访问的资源 程序中访问临界资源的那段程序代码
•
4.进程同步
•
5.等待
•
6. PCB
•
7. P V
•
8.发送 接收
•
9.同步
互斥
同步 互斥
•
10.动态 静态
•
11.40
•
12.S<0
•
13.就绪队列中
•
三、简答题
•
1.答:原语是指由若干条机器指令构成的,并用以完成特定功能的一段程序。这段程
•
序在执行期间是不可分割的。其主要特点是不可分割性。
•
2.答:线程可定义为进程内的一个执行单位,或者定义为进程内的一个可调度的实体。在具有多线程机制的操作系统中,处理机调度的基本单位不是进程而是线程。一个进程可以有多个线程,而且至少有一个可执行线程。
•
进程和线程的关系可从以下几个方面来说明:
•
(1)线程是进程的一个组成部分;
•
(2)进程的多线程都在进程的地址空间活动:
•
(3)资源是分给进程的,而不是分给线程的。线程在执行中需要资源时,系统从进程的资源配额中扣除并分配给它;
•
(4)处理机调度的基本单位是线程,线程之间竞争处理机,真正在处理机上运行的是线程;
•
(5)线程在执行过程中,需要同步。
•
3.答:为了互斥地访问临界资源,系统必须保证进程互斥地进入临界区。为此,必须在临界区前增加一段称作进入区的代码,以检查是否有其他进程已进入临界区使用临界资源。若有,则进程必须等待:否则,允许进程进入临界区,同时设置标志表示有进程正在临界区内。同样,在临界区后必须增加一段称作退出区的代码,用于将已有进程进入临界区访问临界资源的标志,改为无进程进入临界区使用临界资源。进入区、退出区具体可用多种同步机制实现,如锁、信号量机制等。
•
4.答:临界资源本身的特性决定了它们只能被诸进程互斥地访问,如果并发执行的多个进程同时访问临界资源,将会造成系统的混乱或程序执行结果的不确定性。这样,用户得到的便可能是不希望得到的或者是不正确的处理结果。如果多个用户同时使用同一台打印机,则将使他们的输出结果交织在一起而难于区分。
•
四、思考题
•
1.答:在生产者—消费者问题中,如果将两个P操作,即P(full)和P(mutex)互换位置,或者P(empty)和P(mutex)互换位置,都可能引起死锁。考虑系统中缓冲区全满前时,若一生产者进程先执行了P(mutex)操作并获得成功,当再执行P(empty)操作时,它将因失败而进入阻塞状态,它期待消费者执行V(empty)来唤醒自己。在此之前,它不可能执行V(mutex)操作,从而使企图通过P(mutex)进入自己的临界区的其他生产者和所有的消费者进程全部进入阻塞状态,从而引起系统死锁。类似地,消费者进程若先执行P(mutex),后执行P(full),同样可能造成死锁。
•
V(full)和V(mutex)互换位置,或者V(empty)和V(mutcx)互换位置,则不会引起死锁,其影响只是使临界资源的释放略为推迟一些。
•
2.答:有可能出现上述情况。例如,若在进程P时间片用完后,被迫回到就绪队列时,就绪队列为空,这样进程P就是就绪队列中唯一的一个进程,于是调度程序选中的进程必是进程P;又如在按优先级调度的系统中,就绪队列按进程优先级排列,在进程P时间片用完之后回到就绪队列时,若其优先级高于当前就绪队列中的其他进程,则它将排在就绪队列之首,从而再次被调度程序选中并投入运行。
•
3.答:
•
(1)可能会发生死锁现象。例如,进程P1,P2和P3分别获得资源S3,S1,和S2后再继续申请资源时都要等待,这是循环等待。
•
(2)可有以下几种答案:
•
1)采用静态分配,由于执行前已获得所需的全部资源,故不会出现占有资源又等待别的资源的现象(或不会出现循环等待资源现象)。
•
2)采用按序分配,不会出现循环等待资源现象。
•
3)采用银行家算法,在分配时,保证了系统处于安全状态。
加载中,请稍候......