您的当前位置:首页2022年首都师范大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案)

2022年首都师范大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案)

2020-01-16 来源:小侦探旅游网
2022年首都师范大学计算机科学与技术专业《操作系统》科目期末试

卷B(有答案)

一、选择题

1、为支持CD-ROM小视频文件的快速随机播放,播放性能最好的文件数据块组织方式是( )。 A.连续结构 B.链式结构 C.直接索引结构 D.多级索引结钩

2、文件系统用位图法表示磁盘空间的分配情况,位图存于磁盘的32~127号块中,每个盘块占1024B.盘块和块内字节均从0开始编号。假设要释放的盘块号为409612,则位图中要修改的位所在的盘块号和块内字节序号分别是( )。 A.81,1 B.81,2 C.82,1 D.82,2 3、可以被多个进程在任意时刻共享的代码必须是( )。 A.顺序代码 B.机器语言代码 C.不能自身修改的代码 D.无转移指令代码

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

A.在进程结束时能进行处理器调度 B.创建新进程后能进行处理器调度

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

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

5、某系统中有11台打印机,N个进程共享打印机资源,每个进程要求3台打印机。当N的取值不超过( )时,系统不会发生死锁。 A.4 B.5 C.6 D.7

6、解决主存碎片问题较好的存储器管理方式是( ) A.可变分区 B.分页管理 C.分段管理 D.单一连续分配

7、设有8页的逻辑空间,每页有1024B,它们被映射到32块的物理存储区中。那么,逻辑地址的有效位是( )位,物理地址至少是( )位。 A.10,11 B.12,14 C.13,15 D.14,16 8、下面叙述中,错误的是( )

A.操作系统既能进行多任务处理,又能进行多重处理 B.多重处理是多任务处理的子集,

C.多任务是指同一时间内在同一系统中同时运行多个进程 D.一个CPU的计算机上也可以进行多重处理

9、设计实时操作系统时,首先应该考虑系统的( )。

A.可靠性和灵活性 B.实时性和可靠性 C.分配性和可靠性 D.灵活性和实时性 10、缓存技术的缓冲池在( )中。

A.内存 B.外存 C.ROM D.寄存器 11、下列关于设备驱动程序的叙述中,正确的是( )。 I.与设备相关的中断处理过程是由设备驱动程序完成的

II.由于驱动程序与I/O设备(硬件)紧密相关,故必须全部用汇编语言书写 III.磁盘的调度程序是在设备驱动程序中运行的

IV.一个计算机系统配置了2台同类绘图机和3台同类打印机,为了正确驱动这些设备,系统应该提供5个设备驱动程序

A. 仅I、III B. 仅II、III C.仅I、III,IV D. I、II、III、IV 12、下列关于SPOOLing的叙述中,不正确的是( ) A.SPOOLing系统中必须使用独占设备 B.SPOOLing系统加快了作业执行的速度 C.SPOOLing系统使独占设备变成了共享设备

D.SPOOLing系统利用了处理器与通道并行上作的能力

二、填空题

13、当多个线程协作完成一项任务时,线程间必须通过__________来实现协作工作。 14、光盘的信息传送速度比硬盘__________,容量比软盘___________。

15、中断是计算机系统的一个重要部分,中断机制包括硬件的__________和__________。 16、把存储介质上连续信息所组成的一个区域称为__________;为管理方便,经常将存储介质的__________物理单位称为 。

17、文件存取方式按存取次序通常分__________、__________,还有一类__________。 18、进程的三个最基本状态是__________、__________、__________。 19、同一进程中的各线程__________进程所占用的资源

20、通道把通道程序执行情况记录在__________中;通道完成一次输入输出操作后,以__________方式请求中央处理器进行干预。

三、判断题

21、选择通道主要用于连接低速设备. ( ) 22、文件目录必须常驻内存. ( )

23、磁盘上物理结构为链接结构的文件只能顺序存取. ( )

24、在虚存系统中,只要磁盘空间无限大,作业就能拥有任意大的编址空间. ( ) 25、所有进程都进入等待状态时,系统陷入死锁. ( ) 26、参与死锁的进程至少有两个已经占有资源. ( )

27、由于P、V操作描述同步、互斥等问题的能力不足,所以有必要引入其它的通讯原语或机制,如send,receive或Monitor等. ( )

28、在大型多道程序设计系统中,为充分利用外部设备,应使运行的若干程序都是I/0型的. ( )

29、大多数虚拟系统采用OPT( )

30、进程控制块中的所有信息必须常驻内存. ( )

四、名词解释题

31、并发:

32、饥饿:

33、死锁防止:

34、文件控制块:

35、虚拟存储器:

36、中断向量:

五、简答题

37、简述死锁的防止与死锁的避免的区别。

38、在设备管理中,按照设备共享特性分成哪几种类型比较合理,并分别举例说明。

39、实现虚拟设备的硬件条件是什么操作系统应设计哪些功能程序

40、存储管理的主要功能是什么

41、一个具有分时兼批处理功能的操作系统应怎样调度和管理作业

六、综合题

42、某系统采用页式存储管理策略,抓有逻辑空间32页,每页为2KB,拥行物理空间1MB。

1)写出逻辑地址的格式。

2)若不考虑访问权限等,进程的页表有多少项?每项至少有多少位? 3)如果物理空间减少一半,页表结构应做怎样的改变?

43、设内存中有3道程序A、B、C,它们按A、B、C的优先次序执行。它们的计算和I/O操作的时间见表1-1,假设3道程序使用相同设备进行1/O操作,即程序以串行方式使用设备,试画出单道运行和多道运行的时间关系图(调度程序的执行时间忽略不计),并回答在这两种情况下,完成这3道程序分别需要多长时间(多道运

行时采用抢占式调度策略)。

44、某计算机主存按字节编址,逻辑地址和物理地址都是32位,页表项大小为4字节。请回答下列问题。

1)若使用一级页表的分页存储管理方式,逻辑地址结构为:

2)若使用二级页表的分页存储管理方式,逻辑地址结构为:

设逻辑地址为LA.请分别给出其对应的页日录号和页表索引的表达式。

3)采用1)中的分页存储管理方式,一个代码段起始逻辑地址为00008000H,其长度为8KB,被装载到从物理地址00900000H开始的连续主存空间中。页表从主存0020 0000H开始的物理地址处连续存放,如图所示(地址大小自下向上递增)。请计算出该代码段对,应的两个页表项的物理地址、这两个页表项中的页框号以及代码页面2的起始物理地址。

45、某高校计算机系开设网络课并安排上机实习,假设机房共有2m台机器,有2n名学生选课(m、n均大于或等于1),且有如下规定。

1)每两个学生组成一组,各占“台机器协同完成上机实习。

2)只有一组两个学生到齐,并且此时机房有空闲机器时,该组学生才能进入机房。

3)上机实习由一名教师检查,检查完毕后组学生同时离开机房。 试用P、V操作实现其过程。

参考答案

一、选择题

1、A 2、C 3、C 4、C 5、B 6、B 7、C 8、B 9、B 10、A 11、A 12、D

二、填空题

13、【答案】PV操作 14、【答案】慢、大

15、【答案】中断装置、操作系统的中断服务程序 16、【答案】块、卷

17、【答案】顺序存取、直接存取、按键索引

18、【答案】准备、执行、等待 19、【答案】共享

20、【答案】通道状态字(或CSW)、中断(或I/O中断)

三、判断题

21、【答案】:错 22、【答案】:错 23、【答案】:对 24、【答案】:错 25、【答案】:错 26、【答案】:对 27、【答案】:错 28、【答案】:对 29、【答案】:错 30、【答案】:错

四、名词解释题

31、并发:

是指两个或多个活动在同一给定的时间间隔中进行 32、饥饿:

在系统中,每个资源占有者都在有限时间内释放它所占有的资源,但资源中存在某些申请者由于某种原因却永远得不到资源的一种错误现象。 33、死锁防止:

要求进程申请资源时遵循某种协议,从而打破产生死锁的四个必要条件中的一个或几个,保证系统不会进入死锁状态。 34、文件控制块:

用于描述和控制文件的数据结构,其中包括文件名、文件类型、位置、大小等信息。文件控制块与文件一一对应,即在文件系统内部,给每个文件唯一地设置一个文件控制块,核心利用这种结构对文件实施各种管理。 35、虚拟存储器:

虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的虚空间中程序的运行工作。它是由操作系统提供的一个假想的特大存储器。但是虚拟存储器的容量并不是无限的,它由计算机,的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。 36、中断向量:

通常包括相应中断处理程序入口地址和中断处理时处理机状态字。

五、简答题

37、答:死锁的防止是系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生,而死锁的避免是当进程提出资源申请时系统测试资源分配,仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从而避免死锁

38、答:按照是否可共享,可以分成独占设备和共享设备两类,独占设备不能让多个程序同时使用,共享设备可以同时让多个程序使用。打印机属于独占设备,如果多个程序同时使用打印机,则打印出来的数据就可能会随机混合交叉在一起,所以打印机只能让一个程序独占。而磁盘属于共享设备,多个程序同时在磁盘上打开文件是可以的。

39、答:硬件条件是:配置大容量的磁盘,要有中断装置和通道操作系统应设计好\"预输入\"程序,\"井管理\"程序,\"缓输出\"程序.

40、答:存储管理的主要功能包括(1)主存空间的分配和回收;(2)完成重定位;(3)主存空间的共享和保护;(4)使用\"虚拟存储器\",扩充主存空间.

41、答:1)优先接纳终端作业,仅当终端作业数小于系统可以允许同时工作的作业数时,可以调度批处理作业,2)允许终端作业和批处理作业混合同时执行.3)把终端作业的就

绪进程排成一个就绪队列,把批处理作业的就绪进程排入另外的就绪队列中.4)有终端作业进程就绪时,优先让其按\"时间片轮转\"法先运行.没有终端作业时再按确定算法选批处理作业就绪进程运行

六、综合题

42、【解析】1)该系统拥有逻辑空间32页,故逻辑地址中页号必须用5位米描述,而每页为2KB,因此页内位移必须用11位来描述。这样,可得到逻辑地址格式如图所示。

2)每个进程最多有32个页面,因此进程的页表项坡多有32项;若不考虑访问权限等,则页表项中需要给出页所对应的物理块号。IMB的物理空间可分成29个内存块,故每个页表一项至少有9位。

3)若物理空间减少一半,则页表中页表项数保持不变,但每项的长度减少1位。

43、【解析】若采用单道方式运行这3道程序,则运行次序为A、B、C,即程序A先进行30ms的计算,再完成40ms的I/O操作,最后再进行10ms的计算;接下来程序B先进行60ms的计算,再完成30ms的I/O操作,最后再进行10ms的计算;然后程序C先进行20ms的计算,再完成40ms的I/O操作,最后再进行20ms的计算。至此,3道程序全部运行完毕。

若采用多道方式运行这3道程序,因系统按照A、B、C的优先次序执行,则在运行过程中,无论使用CPU还是1/O设备,A的优先级最高,B的优先级次之,C的优先级最低,即程序A先进行30ms的计算,再完成40ms的1/0操作(与此同时,程序B进行40ms的计算),最后再进行10ms的计算(此时程序B等待,程序B的第一次计算已经完成40ms,还剩余20ms):接下来程序B先进行剩余20ms的计算,再完成30ms的I/0操作(与此同时,程序C进行20ms的计算,然后等待1/O设备),最后再进行10ms的计算(此时程序C执行1/0操作10ms,其I/0操作还需

30ms):然后程序C先进行30ms的IO操作,最后再进行20ms的计算。至此,3道程序全部运行完毕。

单道方式运行时,其程序运行时间关系图如图所示,总运行时间如下: (30+40+10+60+30+10+20+40+20)ms=260ms

多道方式运行时,其程序运行时间关系图如图所示,总运行时间如下: (30+40+10+20+30+10+30+20)ms=190ms

44、【解析】

1)因为页内偏移量是12位,按字节编址,所以页大小为212B=4KB,页表项数为232/4K=220\",又页表项大小为4字节,因此·级页表最大为220×4B=4MB。

2)页目录号可表示为(((unsigned int)(LA))>> 22)&Ox3FF。页表索引可表示为(((unsigned int)(LA))>> 12)&Ox3FF。“&Ox3FF”操作的作用是取后10位,页目录号可以不用,因为其右移22位后,前面已都为零。页目录号也可以写成((unsigned int)(LA))>>22;但页表索引不可,如果两个表达式没有对LA进行类型转换,也是可以的。

3)代码页面1的逻辑地址为0000 8000H,写成:进制位0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 前20位为页号(对应十六进制的前5位,页框号也是如此),即表明其位于第8个页处,对应页表中的第8个页表项,所以第8个页表项的物理地址=页表起始地址+8×页表项的字节数=0 0 2 0 0 0 0 0H+8×4=0020 0020H。由此可得图所示的答案。

即两个页表项的物理地址分别为0020 0020H和0020 0024H。 这两个页表项中的页框号分别为00900H和00901H. 代码页面2的起始物理地址为0090 1000H。

45、【解析】本题中可设置一个隐含的进程,其作用相当于机房管理员,当有两个学生,到达、并有空闲的机器时,它便“通知”两个学生进入机房。相应的信号量和各个进程描述如下:

Semaphorecomputer=2m;

Semaphorestudent=0; Semaphoreenter=0; Semaphorefinish=test=0; student_i() {V(student); P(enter) 进入机房上机实习; V(finish); P(test) 离开机房; V(computer); }

guard() { int i;

for(i=0;iV(enter); } }

teacher() {int i;

for(i=0;iP(finish); P(finish);

检查两个学生的实习结果; V(test); V(test); } }

因篇幅问题不能全部显示,请点此查看更多更全内容