操作系统原理错题整理
一、单处理机系统中,若系统有N个进程。
1、运行进程最多1个,最少0个
2、就绪进程最多N-1个,最少0个
3、等待进程最多N个,最少0个
二、本地用户通过键盘登录系统时,首先获得键盘输入信息的程序是中断处理程序
三、下列选项中,会导致用户进程从用户态切换到内核的操作是()
A.整数除以零 B.sin()函数调用 C.read系统调用
答:仅A和C
解析:A选项会出错,C选项系统调用会中断。
四、进程和程序的最根本区别在于:进程是动态的,程序是静态的
五、下列对进程的描述中,(A)是错误的
A、进程是指令的集合
B、进程是动态的概念
C、进程是有生命周期的
D、进程执行需要处理机
解析:进程是程序代码program codes+数据集data sets
六、进程的三种基本状态之间,下列(C)转换是不能进行的
A、就绪状态到执行状态
B、执行状态到阻塞状态
C、阻塞状态到执行状态
D、阻塞状态到就绪状态
七、在(等待的某事件发生了)时,进程从阻塞状态转换到就绪状态
八、系统有n(n>2)个进程,且当前不再执行进程调度程序,请问下述四种情况中,(D)是不可能发生的
A、有一个运行进程,没有就绪进程,n-1个进程处于阻塞状态
B、有一个运行进程,有一个就绪进程,n-2个进程处于阻塞状态
C、有一个运行进程,n-1个就绪进程,没有进程处于阻塞状态
D、没有运行进程,有2个就绪进程,n-2个进程处于阻塞状态
九、若系统中有n个进程,则就绪队列中进程最多有(n-1)个
Max Min
运行 1 0
就绪 n-1 0
等待 n 0
十、保存下一条指令要执行的地址的寄存器是(程序计数器PC)
十一、处理器两种基本类型寄存器是指(用户可见寄存器、控制和状态寄存器)
十二、程序、数据、堆栈和属性的集合指(进程映像)process images
十三、OS中负责选择下一个要运行的进程的程序称为(分派程序dispatcher)
十四、当指令序列保证作为一个组执行,或者根本不执行,对系统状态没有可见的影响,意味着执行(原子操作)
十五、以下可能是最有用的组合(不阻塞send原语,阻塞receive原语),将允许进程尽快将一条或多条消息发送到多个不同地址
十六、包括处理器、I/O通道、主从存储器、设备和数据结构(如文件、数据库和信号量)等的资源是指(可重用资源)
可重用资源指一次只能有一个进程使用一个资源,且不因使用而耗尽的资源
可重用资源可能出现死锁
十七、要求一个进程一次请求其所需的所有资源,或者阻塞该进程直到所有请求都可以同时满足时为止,可以预防(持有等待)条件出现
即 第二个死锁的必要条件:占有且等待
在死锁预防里
十八、UNIX中提供的进程间最快通信形式是(共享内存)
十九、通过定义资源类型的线性顺序并按序分配资源,可以预防(循环等待)条件出现
即 第四个死锁的必要条件:循环等待 有序资源分配法
在死锁预防里
二十、通知进程异步事件发生的软件机制是指(信号)
二十一、是非题
1、并发是并行的不同表述,其原理相同。
×原理不同
2、某用户两次运行AutoCAD软件,都对同一个图形文件进行操作,因为运行的软件和操作的数据相同,所以系统两次运行AutoCAD软件的是同一个进程
×两次运行的是不同的进程,虽然是同一个软件
3、进程是程序加PCB数据结构
×是程序代码加数据集
4、进程并发执行的相对速度不能由进程自己来控制
√
5、在单处理机上,进程就绪队列和阻塞队列都只能有一个
×可以有多个,但每次只能执行一个进程
6、原语的执行是屏蔽中断的
×不屏蔽中断的
7、进程A和进程B共享变量1,需要互斥,进程B和进程C共享变量2,需要互斥,从而进程A与进程C也必须互斥
×进程A和进程C不存在资源竞争,不需要互斥
8、进程获得处理机运行是通过申请得到的
×通过调度程序调度,并按照一定调度规则
9、任一时刻,若有执行状态的进程,就一定有就绪状态的进程
×不一定。可能除了执行状态的进程外的进程都处于阻塞状态
10、若两个进程不相同,则两个进程执行的代码也不相同
×父子进程的代码相同
11、进程是程序执行的动态过程,而程序是进程运行的静态文本
√
12、进程同步是指某些进程之间在逻辑上相互制约的关系
√
13、用户进程中,一定至少有一个进程处于执行状态
×可以没有进程在执行状态
14、所有进程都挂起时,系统陷入死锁
×不一定发生死锁
15、在未引入线程概念时,进程是一个独立的运行单位,也是系统进行资源分配与调度的独立单位
√ 引入线程概念后,线程是CPU的一个调度单位
16、线程有时又被称为轻型进程
√ 即轻量型进程
17、某进程的一个线程处于阻塞状态,则该进程必然处于阻塞状态
×进程可能有多个线程,一个线程阻塞不影响进程运行
18、某一时刻系统中不可能的有这样的情况,即有多个用户进程,却没有一个用户进程处于执行状态也没有一个用户进程处于就绪状态
×例如死锁时均处于阻塞态
19、当一个进程执行过程中出现错误时,将从执行状态转变为阻塞状态
×出现错误时变成退出态
二十二、某系统有同类资源m个,供n个进程共享,若每个进程最多申请w个资源(其中1≤w≤m)。当n(w-1)+1≤m时,系统不会发生死锁。
证明:由于每个进程最多申请使用x个资源,在最坏情况下,每个进程都得到了(x-1)个资源,且现在均需申请最后一个资源,这时系统剩余资源数为m-n(x-1),若系统剩余数>1,即系统还有一个资源可以使用,就可以使这几个进程中的一个进程获得所需的资源,从而每一个进程都可以执行结束,释放出所占有的资源,供其他进程使用。故当m-n(x-1)≥1时,即x≤(m+n-1)/n时,系统不会发生死锁。
二十三、并发进程失去封闭性,指并发进程共享变量,其执行结果与速度有关。
解析:程序封闭性指进程执行的结果只取决于进程本身,不受外界影响。失去封闭性后,不同速度下执行结果不同。
二十四、PV操作是在信号量上的操作。
二十五、一般用户使用命令接口和图形接口获得操作系统服务,编程人员使用程序接口获得操作系统服务。
二十六、并发是指两个或多个事件在同一时间区段内发生
二十七、纯代码是非临界资源
二十八、除采用资源剥夺法解除死锁外,还可以采用(撤销进程)方法解除死锁
二十九、consider the following snapshot of a system:
Allocation Max Available
A B C A B C A B C
P1 2 1 2 5 5 9 2 3 3
P2 4 0 2 5 3 6
P3 4 0 5 4 0 11
P4 2 0 4 4 2 5
P5 3 1 4 4 2 4
Which of the following statement is true if a request for process P5 arrives for (1, 1, 1)?
A.The request can be granted and one safe sequence is
B.The request can be granted and one safe sequence is
C.The request is larger than its maximum need and should be denied.
D.The system is unsafe if the request is granted.
答案:A
解析:银行家算法
三十、Suppose we have four resources, RA, RB, RC and RD. Given below allocation matrix, available vector and maximal requirement matrix.
Max
RA RB RC RD
P0 3 2 1 4
P1 0 2 5 2
P2 5 1 0 5
P3 1 5 3 0
P4 3 0 3 3
Allocation
RA RB RC RD
P0 1 0 1 1
P1 0 1 2 1
P2 4 0 0 3
P3 1 2 1 0
P4 1 0 3 0
Available
RA RB RC RD
1 2 2 2
Question: Can a request of one instance of RA by Process P0 be granted safely according to Banker’s algorithm?
A.can, but unsafe
B.cannot, deadlock
C.can, safe
D.not sure
答案:A
三十一、The following code fragment for the wait() semaphore operation is from the textbook:
wait(S) :
S.value--;
if (S.value < 0) {
add this process to S.L;
block;
}
What is it assuming?
A.This is not a multiprocessor environment
B.This code is executed atomically
C.Test?and?Set is properly implemented
D.S.value is initially 1
答案:B
解析:P操作是原子操作