2018年郑州大学联合培养单位黄淮学院945软件工程专业基础综合[专硕]之计算机操作系统考研仿真模拟五套题
● 摘要
一、选择题
1. 有关进程的说法不正确的是( )
A. 操作系统通过PCB 来控制和管理进程,用户进程可从PCB 中读出与本身运行状态相关的信息。
B. 用户进程被创建时,系统为它申请和构造一个相应的PCB 。
C. 进程的优先级信息是保存在进程的PCB 中的。
D. 同一个程序是不能被创建成多个进程的。
【答案】D
【解析】一个应用程序通常有多个进程组成。程序是构成进程的组成部分之一,一个进程的运行目标是执行它所对应的程序。从静态的角度看,进程是由程序、数据和进程控制块(PCB )三部分组成的。
2. 原语是一种特殊的系统调用命令,它的特点是( )。
A. 执行时不可中断
B. 自己调用自己
C. 可被外层调用
D. 功能强
【答案】A
【解析】原语可分为两类:一类是机器指令级的,其特点是执行期间不允许中断;另一类是功能级的,其特点是作为原语的程序段不允许并发执行。两类原语在执行时都不可中断。
3. 某计算机系统中有8台打印机,由K 个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发生死锁的K 的最小值是( )。
A.2
B.3
C.4
D.5
【答案】C
【解析】假设K=3, 3个进程共享8台打印机,每个进程最多可以请求3台打印机,若3个进程都分别得到2台打印机,系统还剩下2台打印机,然后无论哪个进程申请打印机,都可以得到满足,3个进程都可以顺利执行完毕,这种情况下不会产生死锁。假设k=4, 4个进程共享8台打
印机,都得不到满足,产生了互相等待,可能会发生死锁。
如果觉得这种思路不够简略,换个说法或许更好理解。根据组合数学中鸽巢原理的思想,考虑极端情况,因为每个进程最多需要3台,当每个进程都已经占用了2台时,如果仍然有空闲打印机,则必定能满足某个进程3台的条件;如果没有,则死锁。所以,将8个打印机分给K 个进程的极端情况就是K 为4, 刚好每个进程2台,没有剩余。
这类型的题通常数字不大,可以凭经验给出正确答案,这样或许会快一些。下面给出对应计算公式,以便大家加深理解。假设n 为每个进程所需的资源数,m 为进程数,A 为系统的资源数,则满足^的最小整数m 即为可能产生死锁的最小进程数,该公式同样可以用于求出每个进程需要多少资源时可能会产生死锁。
该公式可以这样理解:当所有进程都差一个资源就可以执行,此时系统中所有资源都已经分配,因此死锁,其思想和鸽巢原理类似。
4. 通常对文件系统来说,文件名及属性可以集中在( )中以便查找。
A. 目录
B. 索引
C. 字典
D. 作业控制块
【答案】A
【解析】在文件系统中,为每个文件建立了一个文件目录(又称目录或目录项),文件目录记录文件的名字、程度和文件存放在外存的物理地址,以及文件属性、文件建立时间和日期等信息。文件目录又称为文件控制块。
5. 采用段式存储管理时,一个程序如何分段是在( )决定的。
A. 分配主存时
B. 用户编程时
C. 装作业时
D. 程序执行时
【答案】B
【解析】段式存储管理是为了方便编程,满足用户需求而引入的,所以分段必须在用户编程时决定。
6. 一个多道批处理系统中仅有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的运行甘特图
7. 操作系统是对( )进行管理的软件。
A. 软件
B. 硬件
C. 计算机资源
D. 应用程序
【答案】C
【解析】从一般用户的观点,可把0S 看做是用户与计算机硬件系统之间的接口;从资源管理的观点看,则可把0S 视为计算机系统资源的管理者。另外,0S 实现了对计算机资源的抽象,隐藏了对硬件操作的细节,使用户能更方便地使用机器。操作系统是系统软件,它管理着计算机的软硬件资源。软件资源是指计算机中的应用程序和数据。
8. 在UNIX 系统中,请求调用是采用下列算法中的( )算法。
A.LFU
B.FIFO
C.LRU
D.LIFO
【答案】C
【解析】最近最久未使用算法(LRU )。该算法选择在最近一段时间内最久没有使用过的页淘汰掉。它依据的是程序局部性原理。最近最久未使用算法是利用一个特殊的栈来保存当前使用的各个页的页号。每当访问某页时,考察栈内是否有与此相同的页号,若有则将该页的页号从栈中抽出,再将它压入栈顶。在UNIX 系统中,请求调用选用的是LRU 算法。所以答案为C 项。
9. 在现代操作系统中采用缓冲技术的主要目的是( )。
A. 改善用户编程环境