当前位置:问答库>考研试题

2017年河北师范大学数学与信息科学学院839计算机专业基础(操作系统)考研强化模拟题

  摘要

一、选择题

1. 可变式分区又称为动态分区,它是在系统运行过程中( )时动态建立的。

A. 在作业装入

B. 在作业创建

C. 在作业完成

D. 在作业未装入

【答案】A

【解析】动态分区分配是根据进程的实际需要,动态地为之分配内存空间。为把一个新作业装入内存,须按照一定的分配算法,从空闲分区表或空闲分区链中选出一分区分配给该作业,故它是在作业装入时动态建立的。

2. 某时刻进程的资源使用情况(如表所示)。

表进程的资源使用情况

此时的安全序列是( )。

A.P1, P2, P3, P4

B.P1, P3, P2, P4

C.P1, P4, P3, P2

D. 不存在安全序列

【答案】D

【解析】使用银行家算法可知,不存在安全序列。由于初始R1资源没有剩余,只能分配资源给P1执行,P1完成之后释放资源。这时由于R2只有2个剩佘,因此只能分配对应资源给P4执行,P4完成之后释放资源。此时R2仍然只有2个剩余,无法满足P2、P3的要求,无法分配,因此产生死锁状态。

如果对于银行家算法比较熟悉,能够很快发现R2资源只有2个,但P2和P3的需求都为3, 并且P1和P4都没有持有R2资源,R2资源会始终无法满足P2和P3的需求,必然会在若干步分配后导致死锁。

3. 一个多道批处理系统中仅有P1和P2两个作业,P2比P1晚5ms 到达。它们的计算和I/O操作顺序如下:

P1:计算60ms ,I/O80ms,计算20ms 。

P2:计算120ms ,I/O40ms,计算40ms 。

若不考虑调度和切换时间,则完成两个作业需要的时间最少是( )。

A.240ms

B.260ms

C.340ms

D.360ms

【答案】B

【解析】画出PI 和P2的运行甘特图如图所示。P2晚到,因此先从PI 开始执行,由图可知最少时间为

260ms.

图 P1和P2的运行甘特图

4. 中断处理和子程序调用都需要压栈以保护现场。中断处理一定会保存而子程序调用不需要保存其内容的是( )。

A. 程序计数器

B. 程序状态字寄存器

C. 通用数据寄存器

D. 通用地址寄存器

【答案】B

【解析】本题考查的是中断处理和子程序调用所保存内容的区别,可以先从两者的作用不同来考虑。中断的发生通常是突然的,如地址越界等,往往是系统无法预知的(外部输入中断也是无法预知的,计算机不会知道用户什么时候用键盘输入)。当系统发生中断时要转入中断处理程序,处理完之后要返回到发生中断时的指令处继续执行,由于处理中断时CPU 可能会切换状态(如果

,在系统态发生中断则始终为系统态,不需要切换)所以中断处理返回时就需要还原当时的程序状

态,包括处理器信息等,这就用到了程序状态字(PSW )寄存器所存储的内容。程序状态字寄存器用于记录当前处理器的状态和控制指令的执行顺序,并且保留和指示与运行程序有关的各种信息,其主要作用是实现程序状态的保护和恢复。所以中断处理时一定要将PSW 压栈保存。

子程序调用是系统能够预知的,而且子程序调用通常是在进程内部执行,不会更改程序状态,即便更改程序状态,只要更新寄存器就行,而不需要保存,因为一切都是系统预料到的,不需要

保护和恢复。因此,子程序调用主要保存局部参数信息等,不需要将PSW 压栈。

中断处理和子程序调用对其他3个选项的操作都是相同的。

5. 若某单处理机多进程系统中有多个就绪进程,则下列关于处理机调度的叙述中,错误的是( )。

A. 在进程结束时能进行处理机调度

B. 创建新进程后能进行处理机调度

C. 在进程处于临界区时不能进行处理机调度

D. 在系统调用完成并返回用户态时能进行处理机调度

【答案】C

【解析】首先要注意本题选的是错误项,看题一定要仔细。其次要注意本题选项的说法,例如A 项“在进程结束时能进行处理机调度”,而不是“必须进行调度”或“只能在此时进行调度”,因此A 项的含义仅仅是此处可以调度,并非一定要调度或者只能此时调度,类似的B 项、D 项也是如此。这也是容易判断出错的一个地方。

接下来分析选项,A 项是进程结束时可以进行处理机调度,明显是正确的。一个进程结束后,进程撤销,处理机此时应当处理下一个进程了,因此会出现处理机调度,A 项正确。

B 项中关键词为“创建新进程后”。在创建新进程后,会将新进程插入到就绪队列中等待调度执行,接下来会发生如下几种情况:(1)处理机继续执行当前任务;(2)该新建进程比较紧急,处理机暂停当前活动转而调度执行该进程(系统为可抢占调度策略)。因此,当紧急任务进入就绪状态时,可能会发生处理机调度,B 项也正确。

C 项的关键词是“在临界区”和“不能”。进程在临界区时是不允许其他相关进程进入临界区的,因为当前进程正在访问临界资源,其他进程无法访问。但问题的关键在于系统中还存在着与这类进程无关的其他进程,其

他进程的执行并不会受到这类进程是否处于临界区的影响。系统可以暂停该进程的执行,先去处理其他与之无关的紧急任务,处理完后再返回来继续执行剩余的临界区代码。这个过程中就

,因此当进程处于临界区时,也可能会发生处理机调会发生处理机调度(因为处理机干别的去了)

度,C 项错误。

D 项很简单。系统调用结束之后返回正常执行的过程中,此时肯定可以进行处理机调度切换执行其他的进程,因此D 项正确。

6. 在计算机系统中,操作系统是( )。

A. —般应用软件

B. 核心系统软件

C. 用户应用软件

D. 系统支撑软件

【答案】B