您的当前位置:首页正文

2022年西安财经大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案)

来源:九壹网
2022年西安财经大学计算机科学与技术专业《操作系统》科目期末试

卷B(有答案)

一、选择题

1、若文件f1的硬链接为f2,两个进程分别打开fl和f2,获得对应的文件描述符为fd1和fd2,则下列叙述中,止确的是( ) I.fl和f2的读写指针位置保持相同 II.fl和f2共享同个内存索引节点

III.fdl 和fd2分别指向各自的用户打开文件表中的一项, A.仅II B. 仅II、III C.仪I、II D. I、II和II

2、若8个字(字长32位)组成的位示图管理内存,假定用户归还一个块号为100的内,存块,它对应位示图的位置为( )。假定字号、位号、块号均从1开始算起,而不是从0开始。

A.字号为3,位号为5 B.字号为4,位号为4 C.字号为3,位号为4 D.字号为4,位号为5

3、结构(Cobegin语句1:语句2 Coend)表示语句1和语句2并发执行。代码如下: X:=0;Y:=0; Cobegin Begin X:=1;

Y:=Y+X; End Begin Y:=2; X:=X+3; End

Coend当这个程序执行完时,变量X和Y的值有可能为( )。 I.X=1,Y=2 II.X=1,Y=3 III.X=4,Y=6 A.I B. I和II C.II和III D. I、II和III

4、既考虑作业等待时间,又考虑作业执行时间的调度算法是( ) A.高响应比优先调度算法 B.短作业优先调度算法 C.优先级调度算法 D.先来先服务调度算法

5、某计算机系统中有8台打印机,有K个进程竞争使用,每个进,程最多需要3台打印机,该系统可能会发生死锁的K的最小值是( ) A.2 B.3 C.4 D.5

6、采用分段存储管理的系统中,若段地址用24位表示,其中8位表示段号,则允许每段的最大长度是( )。

A.224B B.216B C.28B D.232 B

7、适合多道程序运行的存储管理中,存储保护是为了( )

A.防止一个作业占用同个分区 B.防止非法访问磁盘文件 C.防止非法访问磁带文件 D.防止各道作业相互干扰

8、下列观点中,不是描述操作系统的典型观点的是( )。 A.操作系统是众多软件的集合 B.操作系统是用户和计算机之间的接口 C.操作系统是资源的管理者 D.操作系统是虚拟机

9、在中断发生后,进入中断处理的程序属于( )。 A.用户程序

B.可能是应用程序,也可能是操作系统程序 C.操作系统程序

D.既不是应用程序,也不是操作系统程序

10、采用SPOOLing技术将磁盘的一部分作为公共缓冲区以代替打印机,用户对打印机的操作实际上是对磁盘的存储操作,用以代替打印机的部分是( )。 A.独占设备 B.共享设备 C.虚拟设备 D.一般物理设备 11、下面设备中属于共享设备的是( )。

A.打印机 B.磁带机 C.磁盘 D.磁带机和磁盘

12、 I/O中断是CPU与通道协调I作的种于段,所以在( )时,便要产生中断。 A.CPU执行“启动I/O”指令而被通道拒绝接收

B.通道接受了CPU的启动请求 C.通道完成了通道程序的执行 D.通道在执行通道程序的过程中

二、填空题

13、设备1/0方式有如下三种:__________、__________、__________

14、网络操作系统把计算机网络中的各台计算机有机地联结起来,实现各台计算机之间的__________及网络中各种资源的__________。

15、用户调用__________和__________打开文件操作来申请对文件的使用权。 16、输入输出操作异常结束中断可能是由__________故障或设备__________引起的。 17、UNIX的shell有两层含义,一是指由shell命令组成的Shell命令__________;二是指该命令的__________。

18、引起死锁的四个必要条件是__________、保持和等待__________、__________。 19、可防止死锁的资源分配策略有__________、__________和__________。 20、辅助存储器只能与__________相互传递信息。

三、判断题

21、引入缓冲的主要目的是提高I/0设备的利用率. ( ) 22、所有进程都进入等待状态时,系统陷入死锁. ( ) 23、进程控制块中的所有信息必须常驻内存. ( ) 24、进程间的互斥是一种特殊的同步关系. ( ) 25、文件系统的主要目的是存储系统文档. ( )

26、在文件系统中,打开文件是指创建一个文件控制块. ( )

27、执行系统调用时可以被中断. ( )

28、不可抢占式动态优先数法一定会引起进程长时间得不到运行. ( ) 29、虚拟存储系统可以在每一台计算机上实现. ( ) 30、所谓最近最少使用( )

四、名词解释题

31、管态:

32、非抢占式调度:

33、交换调度:

34、存取权限:

35、目录文件:

36、通道:

五、简答题

37、为什么说批处理多道系统能极大地提高计算机系统的工作效率?

38、什么是临界区进程进入临界区的调度原则是什么

39、请说明在生产者一消费者问题的描述中,P操作颠倒会产生死锁吗?为什么?

40、主存空间信息保护有哪些措施?

41、什么是设备独立性,它是如何实现的?

六、综合题

42、关于处理器调度,试问: 1)什么是处理器的三级调度?

2)处理器的三级调度分别在什么情况下发生? 3)各级调度分别完成什么工作?

43、假定某操作系统存储器采用页式存储管理,一进程在联想存储器中的页表见表,内存中的页表项见表。假定该进程体(程序与数据)代码长度为320B,每页32B。现有逻辑地址(八进制)为101、204、576,若上述逻辑地址能翻译成物理地址,则说明翻译的过程,并指出具体的物理地址:若上述逻辑地址不能翻译成物理地址,请说明理由。

44、某寺庙有小和尚和老和尚若干,有个水缸,由小和尚提水入缸供老和尚饮用。水缸可以容纳10桶水,水取自同,口井中,由于水井口窄,每次只能容纳一个水桶取水。水桶总数为3个(老和尚和小和尚共同使用)。每次入水、取水仅为桶,且不可同时进行。试给出有关取水、入水的算法描述。

45、系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待:当缓冲区未空时,消费者进程可以从缓冲区取走·件产品,否则等待。要求一个消费者进程从缓冲区连续取出10件产品后,其他消费者进程才时以取产品。请使用信号量P、V(wait()、signal())操作实现进程间的互斥与同步,要求写出完整的过程,并说明所用信号量的含义和初值。

参考答案

一、选择题

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

二、填空题

13、【答案】询问、中断、通道 14、【答案】通信、共享 15、【答案】建立、打开 16、【答案】设备、特殊事件 17、【答案】语言、解释程序

18、【答案】互斥使用、非剥夺性、循环等待 19、【答案】静态分配、按序分配、剥夺式分配 20、【答案】内存

三、判断题

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

四、名词解释题

31、管态:

当执行操作系统程序时,处理机所处的状态 32、非抢占式调度:

系统一旦把处理机分配给某个进程之后,该进程一直运行下去,直到该进程完成或因等待某个事件发生时,才将处理机分配给其他进程。这种调度方式实现简单,系统开销小,但系统性能不够好。 33、交换调度:

是基于系统确定的某个策略,将主存中处于等待状态或就绪状态的某个或某些进程交换到外存交换区中,以便将外存交换区上具备运行条件的进程换入主存,准备执行。引入交换调度的目的是为了解决主存紧张和提高主存的利用效率。 34、存取权限:

用户或系统为文件规定的谁能访问,以及如何访问的方式。 35、目录文件:

全由目录项构成的文件成为目录文件。 36、通道:

是独立于CPU的、专门负责数据输入输出的处理单元。

五、简答题

37、答:①多道作业并行工作,减少了处理器的空闲时间,②作业调度可以合理选择装入主存储器中的作业,充分利用计算机系统的资源。③作业执行过程中不再访问低速设备,而直接访问高速的磁盘设备,缩短执行时间。④作业成批输入,减少了从操作到作业的交接时间

38、答:在每个进程中访问临界资源的那段程序叫临界区,进程进入临界区的调度原则是:如果有若干进程要求进入空闲的临界区一次仅允许一个进程进②任何时候,处于临界区内的进程不可多于一个.如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待③ 进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区④如果进程不能进入自己的临界区,则应让出CPU,避免进程出现\"忙等\"现象.

39、答:如果将生产者执行的两个P操作顺序颠倒,会产生死锁。因为,在这种情况下,当缓冲区都为满时,生产者仍可顺利执行P(mutex)操作,于是它获得了对缓冲区的存取控制权。然后,当它执行P(mutex)操作时,由于没有空缓冲区它被挂起。能够将这个生产者进程释放的唯一途径是消费者从缓冲区取出了一个产品,并执行V(mutex)操作。但在此时,由于缓冲区已被挂起的生产者所占有,所以没有一个消费者能够取得对缓冲区的存取控制权。因此,出现了生产者和消费者的互相死等的局面。

40、答:①程序自己主存区域的信息,允许它既可读,又可写;②共享区域中的信息只可读,不可修改;③非共享区域或非自己的主存区域中的信息既不可读,也不可写。

41、答:设备独立性即应用程序独立于使用的物理设备,在应用程序中使用逻辑设备名称来请求使用某类设备。系统在执行时,是使用物理设备名称要实现设备独立性必须由设备独立性软件完成,包括执行所有设备的公有操作软件提供统一的接口,其中逻辑设备到物理设备的映射是由逻辑设备表LUT完成的

六、综合题

42、【解析】

1)处理器的三级调度是指一个作业在运行过程中要遇到的高级调度(作业调度)、中级调度(进程对换)和低级调度(进程调度)。不过,不是所有操作系统都有三级调度,有些只实现了其中的级或两级,但是每个操作系统都有进程调度。 2)高级调度主要在需要从外存调入个作业到内存中时发生:中级调度主要在内存紧张需要调出些进程,或者内存空闲需要把先前调出的进程调问内存时发生:低级调度主要在正在执行的进程放弃CPU或者被其他优先级高的进程抢占CPU时发生。 3)高级调度的主要T作是决定外存的后备队列中哪个进程被调入到内存中,并给这个作业创建进程,给分配它必要的资源:中级调度的主要1:作是在内存紧张时把就绪队列中析时得不到执行的进程换到外存,也负责在内存较空闲时把换到外存的进程调问内存:低级调度的主要工作是决定把CPU分配给就绪队列中的哪个进程。

43、【解析】一页大小等于32B,即其二进制长度为5:由此得逻辑地址结构:低5位为,页内位移,其余高位为页号。

101(八进制)=0 0 1 0 0 0 0 0 1(二进制),则页号为2,在联想存储器中,对应的页顿号为f3,即物理地址为32×f3+1。

204(八进制)=0 1 0 0 0 0 1 0 0(二进制),则页号为4,不在联想存储器中,查内存的页顿表得页顿号为f5,并用其更新联想存储器中的一项,最终的物理地址为32×f5+4。

576(八进制)=1 0 1 1 1 1 1 1 0(二进制),则页号为11,已超出页表范围,即产生越界中断。

44、【解析】

semaphore empty=10; semaphore full=0; semaphore buckets=3; semaphore mutex wel1=l; semaphore mutex bigjar=1; young monk() {

While(true) P(empty); P(buckets); 去井边;

P(mutex_well); 取水;

V(mutex wel1); 回寺庙;

P(mutex_bigjar);

pure the water into the big jar; V(mutex_bigjar); V(buckets); V(ful1);

old monk() {

While(true) P(ful1); P(buckets); P(mutex_bigjar); 取水;

V(mutex_bigjar); 喝水;

V(buckets); V(empty): } }

45、【解析】

这是典型的生产者-消费者问题,只对典型问题加了一个条件,只需在标准模型上新加一个信号量,即可完成指定要求。

设置4个变量mutex1、mutex2,empty和full.mutex1用于一个消费者进程一个周期(10次)内对于缓冲区的控制,初值为1:mutex2用于进程单次互斥地访问缓冲区,初值为1;empty代表缓冲区的空位数,初值为0:full代表缓冲区的产品数,初值为1000。具体进程的描述如下:

semaphore mutexl=1; semaphore mutex2=1;

semaphore empty=1000; semaphore full=0; producer(){ {while(1) 生产一个产品; P(empty); P(mutex2); 把产品放入缓冲区; V(mutex2); V(full); } }

consumer() {

while(1) {

P(mutex1)

for(int i= 0;i<= 10;P(full); (mutex2); 从缓冲区取出一件产品;)++i P

V(mutex2); V(empty); 消费这件产品; }

V(mutex1) }

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

Top