9.1 模拟题1(50分)
一、选择一个最适合的答案(10*1分)
1.( )是最接近于硬件的软件。
A.DBMS B.汇编程序 C.OS D.编译器
2.( )对用户是透明的。
A. 文件目录 B. 虚拟存储器 C. 文件名 D. 键盘
3.( )存储管理要求一个作业集中存放在连续的主存。
A. 分区 B. 分页 C. 分段 D. 段页
4.段的逻辑地址形式是段号为5位,段内地址13位,主存容量为5K,辅存容量为200K,那么虚拟存储器的最大容量可能为( )。
A. 261K B. 200K C. 205K D. 160K
5.PCB登记( )相关信息。
A. 程序 B. 进程 C. 文件 D. 作业
6.进程从执行状态到阻塞状态是由( )完成的。
A. 进程调度 B. 其它进程调用阻塞原语
C. 硬件自动 D. 进程自身调用阻塞原语
7.只作用于一个进程一次的原语是( )原语。
A. 阻塞 B. 挂起 C. 撤消 D.解挂
8.多个作业可以同时使用一台( )。
A. 磁带机 B. 硬盘机 C.打印机 D. 卡片机
9.在执行P操作时,进程若能继续执行,执行P操作前信号量的值应( )。
A. 大于0 B. 小于0 C. 等于0 D.大于等于0
10.UNIX系统移植方便,是因为( )。
A.它功能强 B.界面简单 C. C语言编写 D.安全性好
二、选择所有适合的答案 (5*2分)
1.不具有交互性的OS是( )。
A. 单道批处理系统 B. 分时系统
C. 多道批处理系统 D. 实时系统
2.( )使用物理地址。
A.多道程序系统编译器产生的目标码
B.动态重定位后的内存程序
C.静态重定位后的内存程序
D.动态连接后的内存程序
3.( )是多道OS。
A.Linux B.UNIX C.MS_DOS3.3 D.WINDOWS98
4.( )存储管理系统有页表存在。
A. 页式 B. 段式 C. 段页式 D.分区
5.磁盘上的连续文件适合( )。
A. 顺序存取 B. 随机存取 C.存放常变数据 D.只读数据
三、判断正误,并简要说明理由 (6*3分)
1.虚拟存储器是以时间换空间。
2.发生死锁时,计算机系统不能执行任何程序。
3.计算机系统中CPU越忙系统的效率就越高。
4.计算机上配备的OS对计算机的销售有影响。
5.分时系统中,时间片越长,系统的交互性越差。
6.处于后备状态的作业不能占用处理机执行。
四、解答下列问题 (3*4分)
1.对用户而言,优秀的OS应具备哪些特点?
2.文件系统采取了哪些措施来加快文件的查询速度和读写速度?
3.为什么要把多CPU的作业和多I/O的作业均衡地投入系统运行?
模拟题1参考答案
一、选择一个最适合的答案(10*1分)
1.C 2.B 3.B 4.B 5.B 6.D 7.C 8.B 9.A 10.C
二、选择所有适合的答案 (5*2分)
1.AC 2.C 3.ABD 4.AC 5.ABD
一块操三、判断正误,并简要说明理由 (6*3分)
1.正确
2.错误
没有发生死锁进程仍然运行。
3.错误
系统中CPU可能忙于内外存的交换,可能忙于进程的不断切换,这些不仅不能提高系统的效率,反而会降低系统的效率。
4.正确
5.正确
6.正确
四、解答下列问题 (3*4分)
1.对用户而言,优秀的OS应具备如下特点:
(1)操作简便;
(2)有丰富的软硬资源可用;
(3)安全可靠
(4)很好的性能价格比
2.文件系统采取如下措施来加快文件的查询速度和读写速度:
(1)多级文件目录;
(2)工作目录;
(3)活动文件表;
(4)基本文件目录和符号文件目录;
(5)索引;
(6)缓冲技术
(7)磁盘的寻道优化和旋转优化。
3.多CPU的作业和多I/O的作业均衡地投入系统运行的原因为:
(1)当CPU作业多时,I/O设备空闲;
(2)当I/O的作业多时,CPU空闲;
(3)CPU的作业和多I/O的作业均衡地投入系统运行,CPU操作和多I/O操作可以并行执行,提高了整个系统的资源利用率。
9.4 模拟题4(100分)
一、多项选择题(10分)
1.在假脱机I/O系统的操作过程中,将与 ( )发生联系。
A.处理机管理 B.文件管理
C.设备管理 D.内存管理
2.在用户程序执行中,需要提供( )就可以实现磁盘文件内容的读写。
A.内存地址 B.文件名
C.电梯调度算法 D.传送方向与传送量
3.对于处理机调度中的高响应比调度算法,( )是影响响应比的主要因素。
A.程序长度 B.静态优先数
C.运行时间 D.等待时间
4.创建线程后将建立一个线程控制块,( )不是该块必须要包含的内容。
A.线程名 B.内存地址
C.外存地址 D.资源的读写权限
5.调用银行家算法进行安全序列检查时,( ) 不是必须要提供的参数。
A.系统资源总量 B.当前可用量
C.用户最大需求量 D.用户已占有资源量
二、简答题(30分)
1.说P、V操作是不可分割运行的。若不是不可以分割的,就会违反互斥性,请说明为什么?
2.存储管理中采用可变分区分配策略,请回答当一个进程归还自己的存储空间后,空闲分区的登记情况将可能发生何种变化?
3.简述Clock算法的处理过程。
4.机的中断机制通常被视为操作系统进行处理的激发源,请说明中断可以激发操作系统的哪些功能?
5.IX操作系统为进程设置了9种状态,请说明这9种状态的含义及状态转移条件。
三、(20分)已知一个采用了LRU置换算法的虚拟分页存储管理系统,其页面尺寸为4K,内存访问速度为100ns/次,快表访问速度为20ns/次,缺页中断处理耗时为25ms/次。今有一个长度为30K的进程P进入系统,分配给P的存储块有3块,进程的所有页面都是在该进程运行中动态装入。若P访问快表的命中率为20%,对于下述页面号访问序列:7、0、1、2、0、3、0、4、2、3、0、3、2、1、2、0、1、7、0、1,请计算有效访存时间为多少ns?
四、(30分)阅读下面的数据输入与处理的程序。请指出程序处理的功能是什么?将该程序改造成两个并发处理的进程Input和Comp。(30分)
Begin
Var i: Integer,x: Char;
Buffer,C:array of chars;
Repeat
i:=1;
While i<∞
Begin
Read (x);
Buffer[i]:=x;
i:=i+1;
If x=”LF” then //CR为回车换行符
goto L1
End;
L1:i:=i-1;
C:=Buffer;
While i>1 and C[i-1]=”SP” do //SP为空格符
Begin C[i-1]:=C[i];i:=i-1 end;
i:=1;
While C[i]<>”LF” do
Begin Write C[i];i:=i+1 end;
Until False;
End
五、(30分)一个单处理机多道分时系统收到了4个作业,作业提交情况见下表:
Job | 作业提交时间 | 运行长度 | 其中 | |
I/O时间 | CPU时间 | |||
A | 10.0 | 0.36小时 | 0.18小时 | 0.18小时 |
B | 10.2 | 0.32小时 | 0.16小时 | 0.16小时 |
C | 10.4 | 0.36小时 | 0.18小时 | 0.18小时 |
现假设:
1.在单CPU上分时运行两道作业,若每道作业的I /O等待时间皆占各自总运行时间的50%,则CPU将有20%的时间空闲;
2.系统有相当充足的可用资源(CPU除外)供用户使用。
请写出各个作业的结束时间。
六、(30分)青岛崂山有一处景点称作上清宫,游客在宫内游玩之后可以在宫门口搭乘轿车游览崂山的其他风景区,游览完毕再返回宫门口。已知风景区内的轿车总量为M辆,游客总数为N,约定:
1.每辆轿车限乘一位游客;
2.如果有空闲的轿车,应当允许想游览的游客乘坐;
3.无空闲轿车时,游客只能排队等待;
4.若没有想游览的游客,空闲的轿车也要等待。
注:假设游客乘坐轿车游览风景区是免费的,即,乘车后不需要经过付费的环节。试利用P、V操作实现N个游客进程与M辆轿车进程的同步操作过程。
模拟题4参考答案
一、多项选择题(10分)
1.ABCD 2.ABD 3.CD 4.CD 5.A
二、简答题(30分)
1.P、V操作是在信号量上施加的操作。P(S)操作将执行S--,即,R:=S;R:=R-1;S:=R;当进程P1执行完前两个指令后被中断,由于S的值没有改变,另一进程P2执行其P操作也读到S的原来值。因而P1和P2都可以进入临界区,违反互斥原则。V操作类似。
2.如果与回收块毗邻的其他存储块是空闲的,则需要将回收块与毗邻块合并。形成一个容量更大的空闲块。
3.这是一个用软件实现的LRU方法。该方法需要在页表中设置指针字段,将页表建立成环
状。让置换指针沿环移动,逐一检查各页表项,若它的访问位为0就将它置换,否则设它的访问位为0后转向下一个页表项。
4.通过中断处理,进行计时,可实现分时系统的CPU的切换;计算作业的响应比等。外设中断将引发作业的提交;进程的唤醒;系统调用中断将使用户程序调用系统功能实现I/O启动,调用原语等。
5.创建态、内存就绪态、外存就绪态、核心执行态、用户执行态、被剥夺态、内存阻塞态、外存阻塞态、僵死态。
三、(20分)
程序的功能是:输入字符串,删除尾部空格后输出。
Begin
Array Buffer [0…127] of chars;
Semaphore S_in:=1, S_out:=0;
CoBegin
Process Input()
integer i:=0;
Begin
Repeat
Read (x);
P(S_in)
Buffer[i]:=x;
i:=i+1;
If x=”LF” then
Begin i:=1; V(S_out) End
Else V(S_in);
Until false;
End;
Process Comp()
Var integer i=0, Array C,D of chars;
Begin
Repeat
P(S_out);
发布评论