[考研类试卷]计算机专业基础综合(操作系统)模拟试卷3及答案与解析.doc
《[考研类试卷]计算机专业基础综合(操作系统)模拟试卷3及答案与解析.doc》由会员分享,可在线阅读,更多相关《[考研类试卷]计算机专业基础综合(操作系统)模拟试卷3及答案与解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、计算机专业基础综合(操作系统)模拟试卷 3 及答案与解析一、单项选择题1-40 小题,每小题 2 分,共 80 分。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。1 计算机系统中判别是否有中断事件发生应是在( )。(A)进程切换时(B)执行完一条指令后(C)执行 P 操作后(D)由用户态转入核心态时2 若当前进程因时间片用完而让出处理机时,该进程应转变为( )状态。(A)就绪(B)等待(C)运行(D)完成3 一种既有利于短小作业又兼顾到长作业的作业调度算法是( )。(A)先来先服务(B)轮转(C)最高响应比优先(D)均衡调度4 作业调度程序是从处于( )状态的作业中选取一个作业并把
2、它装入主存。(A)输入(B)收容(C)执行(D)完成5 进程处于下列( ) 等待状态时,它是处于非阻塞状态。(A)等待从键盘输入数据(B)等待协作进程的一个信号(C)等待操作系统分配 CPU 时间(D)等待网络数据进入内存6 若系统中有五个并发进程涉及某个相同的变量 A,则变量 A 的相关临界区是由( )临界区构成。(A)2 个(B) 3 个(C) 4 个(D)5 个7 在多进程的并发系统中,肯定不会因竞争( )而产生死锁。(A)打印机(B)磁带机(C)磁盘(D)CPU8 通常不采用( ) 方法来解除死锁。(A)终止一个死锁进程(B)终止所有死锁进程(C)从死锁进程处抢夺资源(D)从非死锁进程
3、处抢夺资源9 进程所请求的一次打印输出结束后,将使进程状态从( )。(A)运行态变为就绪态(B)运行态变为等待态(C)就绪态变为运行态(D)等待态变为就绪态10 共享变量是指( ) 访问的变量。(A)只能被系统进程(B)只能被多个进程互斥(C)只能被用户进程(D)可被多个进程11 UNIX 系统中,进程调度采用的技术是( ) 。(A)时间片轮转(B)先来先服务(C)静态优先数(D)动态优先数12 死锁现象是由于( ) 造成的。(A)CPU 数量不足(B)内存数量不足(C)多个进程抢夺并独占资源(D)作业批处理13 临界区是指( ) 。(A)一组临界资源的集合(B)可共享的一块内存区(C)访问临
4、界资源的一段代码(D)请求访问临界资源的代码14 在一段时间内,只允许一个进程访问的资源称为( )。(A)共享资源(B)独占资源(C)临界资源(D)共享区15 不需要信号量能实现的功能是( )。(A)进程同步(B)进程互斥(C)执行的前趋关系(D)进程的并发执行16 当中断发生后,进入中断处理的程序属于( )。(A)用户程序(B) OS 程序(C)可能是用户程序,也可能是 OS 程序(D)单独的程序,既不是用户程序,也不是 OS 程序17 某计算机系统中有 8 台打印机,有 K 个进程竞争使用,每个进程最多需要 3 台打印机。该系统可能会发生死锁的 K 的最小值是( )。(A)2(B) 3(C
5、) 4(D)518 进程 P0 和 P1 的共享变量定义及其初值如下:boolean flag2;int turn=0;flag0=false;flag1=false;若进程 P0 和 P1 访问临界资源的伪代码按照下面设计:void P0()f进程 P0 void P1()进程 P lwhile(TRUE) while(TRUE)flag0=TRUE; flag0=TRUE;turn=1; turn=0;while(flag1*consumer item in nextc:until false;end【知识模块】 操作系统23 【正确答案】 (1)定义信号量 s1 控制 P1 与 P2 之
6、间的同步,s2 控制 P1 与 P3 之间的同步,empty 控制生产者与消费者之间的同步, mutex 控制进程间互斥使用缓冲区。(2)程序如下:var s1=0, s2=0,empty=N,mutex=1:parbeginP1:beginX=produce(); *生成一个数*P(empty); *判断缓冲区是否有空单元*P(mutex); *缓冲区是否被占用*Put():If X2=0V(s2); *如果是偶数,向 P3 发出信号*elseV(s1); *如果是奇数,向 P2 发出信号*V(mutex); *使用完缓冲区,释放 *endP2:beginP(s1); *收到 P1 发来的信
7、号,已产生一个奇数*P(mutex); *缓冲区是否被占用*Getodd();Countodd(): =eountodd()+1;V(mutex):*释放缓冲区*V(empty); *向 P1 发信号,多出一个空单元*endP3:beginP(s2) *收到 P1 发来的信号,已产生一个偶数*P(mutex); *缓冲区是否被占用*Geteven();Counteven():=courlteven()+1;V(mutex); *释放缓冲区*v(empty): *向 P1 发信号,多出一个空单元*endparend【知识模块】 操作系统24 【正确答案】 (1)在串行情况下,两个程序运行时间共计
8、 25 h;在并行方式下,处理器利用率为 50,说明处理器的工作时间占总运行时间的 50。根据已知条件,“处理器工作时间分别为 TA=18 min,T B=27 min”,即总运行时间为(18+27)50(min) ,考虑到还有 15 min 系统开销,故并行与串行的效率比为并行处理所需的时间串行处理所需要的时间总和=(18+27)50+152560=70 。 (2)即采用多道处理技术之后,完成程序 PA 和程序 PB 所需的时间为串行处理方法的70。因此可以说效率提高了 30。【知识模块】 操作系统25 【正确答案】 为了清楚地描述作业执行情况,我们对题目假设的情况分析如下:(1)J1 占用
9、 102 传输 30 ms 时,J1 传输完成,抢占 J2 的 CPU,运行 10 ms,再传输 30 ms,运行 10 ms,完成。J1 从开始到完成所用的时间为:30+10+30+10=80(ms)。J2 与其并行地在 101 上传输 20 ms,抢占 J3 的 CPU,J2 运行 10 ms 后,被 J1 抢占 CPU,等待 10 ms 之后, J2 再次得到 CPU,运行 10 ms,J2 启动 102 传输,40 ms 完成。 J2 从开始到完成所用的时间为: 20+10+10+10+40=90(ms)。J3 在 CPU 上执行 20 ms,被 J2 抢占 CPU,等待 30 ms,
10、再运行 10 ms,等待 10 ms,J3 启动 IO1 运行 20 ms 的传输,完成。J3 从开始到完成所用的时间为20+30+10+10+20=90(ms)。(2)三个作业全部完成时,CPU 的利用率为(10+20+30+10) 90=7 9=78。(3)三个作业全部完成时,外设 IO1 的利用率为(20+30+20)90=79=78。【知识模块】 操作系统26 【正确答案】 此题考查学生对并发程序概念的理解。 (1)程序 A 和程序 B 顺序执行时,程序 A 执行完毕程序 B 才开始执行。两个程序共耗时 75 s,其中占用CPU 的时间为 40 s,因此顺序执行时 CPU 的利用率为
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考研 试卷 计算机专业 基础 综合 操作系统 模拟 答案 解析 DOC
