操作系统期末试卷B1

一、单选题(共20分,共10题,每题2 分)

1.    和早期的OS相比,采用微内核结构的OS具有许多优点,但是不包括(  )。 B

A)提高了系统的可扩展性;  B)提高了OS的运行效率

C)增强了系统的可靠性;    D) 使OS的可移植性更好。

2.    用资源信号量实现5台刻录机的使用,信号量的初值应设为:(  )B

A)0     B)5     C)-1     D)1

3.    下列进程调度算法中,(B )可能会出现进程长期得不到调度的情况。    

A.非强占式静态优先权法   B.强占式静态优先权法   

C.时间片轮转调度算法     D.非强占式动态优先权法

4.    下面对进程的描述中,错误的是【 D 】。     

A、进程是动态的概念                 B、进程的执行需要处理机  

C、进程是有生命期的                 D、进程是指令的集合

5.    在操作系统中,调度包括作业调度和进程调度。作业调度是将作业从( B  )中调入内存?

A. 就绪队列                  B. 后备队列

C. 就绪/挂起队列              D. 阻塞/挂起队列

6.    在引入快表的分页存储管理方式中,如果访问主存时间为100ns,访问快表时间为30ns,命中率为80%,则内存的有效访问时间为多少?(  A    )

A. 150          B. 130        C. 230       D.180

7.    在可变分区存储管理中,最坏适应算法要求对所有的空闲分区按( D  )进行排列。

A. 地址从大到小   B. 地址从小到大

C. 容量从小到大   D. 容量从大到小

8.    实现虚拟存储器的理论基础是程序的(A )理论。        

A、局部性        B、全局性         C、动态性        D、虚拟性

9.    在Unix操作系统中,文件描述信息采用()数据结构组织。

A)FILE     B)i节点      C)打开描述符    D)文件控制块

10.    设文件系统采用两级索引分配方式,如果每个磁盘块的大小为1KB,每个盘块号占16B,则单个文件的最大长度是多少?(  A    )

A. 4MB                      B. 128MB

C. 16MB                      D. 64MB

二、判断题( 共10分,共10题,每题1 分)

(  ╳  )1.实时控制系统的实时性与分时系统的及时性是有差异的,实时系统是以控制对象所要求的截至时间来确定的,一般为秒级到毫秒级。

(   ╳  )2.在段页式管理中,既有段表又有页表,就不能再使用快表了。

(  √   )3.在对目标模块进行链接时,静态链接需要共享目标模块的拷贝,而动态链接不需要共享目标模块的拷贝。

(  ╳   )4.  在请求页式存储管理中,若所需页面不在内存中,则会引起时钟中断。

(  √   )5.如果信号量S的当前值为-8, 则表示系统中共有8个等待进程。( T )

(  ╳   )6.当发生线程切换时,涉及信息的保存和地址变化问题。 (F)

(  ╳   )7.计算机系统产生死锁的根本原因是系统中进程太多。 ( F )

(  √   )8.进程是程序的一次执行,是抢占处理机的调度单位。 (T )

引入缓冲技术的主要目的是提高CPU与设备之间的并行程度。(T )

(  ╳   )9.  在请求页式存储管理中,若所需页面不在内存中,则会引起时钟中断。

(  √   )10.设备的打开、关闭、读、写等操作是由设备驱动程序完成的。( T )

二、简答题(共20分)

1.    在设计设备分配算法时,分配算法的安全性是需要考虑的问题,请先描述死锁发生的必要条件,然后结合这些条件说明设备安全分配方式和不安全分配方式的情况。(共8分)

答:死锁发生的必要条件是:

1)互斥条件,进程对所分配到的资源进行排它性使用,即在一段时间内,某资源只能被一个进程占用。其次进程只能等待其释放资源后才能使用。(1分)

2)请求和保持条件:进程在已经保持了至少一个资源时在请求新资源,如果请求得不到满足,进程被阻塞但不释放已经保持的资源。(1分)

3)不可抢占条件:进程已获得的资源在未使用完前不能被抢占。(1分)

4)循环等待条件:在发生死锁时,必然存在一个进程-资源的循环链。(1分)

在分配设备时,安全分配方式是:每当进程发出I/O请求后便进入阻塞状态,直到其I/O操作完成时才被唤醒。这时,一旦进程已经获得某种设备后便阻塞,不能再请求任何资源,而在它阻塞时又不保持任何资源。因此,该方式摒弃了造成死锁的四个必要条件之一的“请求和保持”条件,故设备分配是安全的。(2分)

不安全分配方式指:进程在发出I/O请求后继续运行,需要时又发出第二个I/O请求、第三个I/O请求等。仅当进程所请求的设备已被另一个进程占用时才进入阻塞状态。这样,进程在保有已分配资源的情况下仍然继续请求资源,这就没能消除“请求和保持”条件。由于设备使用本身具有互斥要求,且在使用过程中不可抢占,因此可能产生循环等待从而出现死锁,显然该分配方式是不安全的。(2分)

2.    程序并发执行为何会失去封闭性和可再现性?(4分)

答: 共享资源、资源状态由多个程序更改,一个程序的运行将受到另一个程序运行的影响,失去封闭性;(2分)

计算结果受并发程序执行顺序的影响,也就是说在相同的起始条件下多次运行会产生不同结果,失去可再现性。(2分)

3.    什么是用户线程?什么是内核线程?(4分)

内核线程: (2分)

切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态.

用户线程指: (2分)

不需要内核支持而在用户程序中实现的线程,其不依赖于操作系统核心,应用进程利用线程库提供创建、同步、调度和管理线程的函数来控制用户线程。

4.    在生产者—消费者问题中,能否将生产者进程的wait(empty)和wait(mutex)语句互换,为什么?(4分)

不能。(1分)

因为这样可能导致系统死锁。当系统中没有空缓冲时,生产者进程的wait(mutex)操作获取了缓冲队列的控制权,而wait(empty) 导致生产者进程阻塞,这时消费者进程也无法执行。(3分)

三、综合应用题(共30分)

1.    有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以优 先数为基础的非抢占式调度算法。下表所列的作业优先数即为进程优先数,优先数越小优先级越高。(10分)

作业名

到达时间

估计运行时间

优先数

A

10:00

30分

5

B

10:20

20分

4

C

10:30

40分

3

D

10:50

10分

6

(1) 列出所有作业进入内存时间及结束时间;(每空1分,共计8分)

(2) 计算平均周转时间。(2分)

作业名

到达时间

运行时间

优先数

进入内存时间

结束时间

周转时间

A

10:00

30分

5

10:00

10:30

30分钟

B

10:20

20分

4

10:20

11:30

70分钟

C

10:30

40分

3

10:30

11:10

40分钟

D

10:50

10分

6

11:10

11:40

50分钟

平均周转时间=(30+70+40+50)/4=47.5分

2.    在一个页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:     115,228,320,688,446,102,321,432,260,767, 479, 548若该作业的第0页已经已经装入主存,现分配给该作业的主存共400字,页的大小为100字,请回答下列问题: 按FIFO、LRU、OPT, NRU调度算法将分别产生多少次缺页中断,依次淘汰的页号为什么, 缺页中断率是多少?(10分)

答:(1)按FIFO调度算法将产生9次缺页中断 ;依次淘汰的页号为: 1,2,3,6,4; (1.5分)

缺页中断率为:9/12=75%(1分)

(2)按LRU调度算法将产生9次缺页中断;依次淘汰的页号为:1,2,6,1,3; (1.5分)

缺页中断率为:9/12=75%(1分)

(3) 按OPT调度算法将产生7次缺页中断;依次淘汰的页号为:6,1,3; (1.5分)

缺页中断率为:7/12=58.33%(1分)

(4) 按NRU调度算法将产生10次缺页中断;依次淘汰的页号为:1,2,6,4,1,3 (1.5分)

缺页中断率为:10/12=83.33%(1分)

3.    给出某系统中的进程请求表和空闲分区表,系统采用可变分区存储管理策略。请问:(10分)

(1)若采用首次适应算法和最佳适应算法来处理这些进程序列,哪一种算法可以满足该进程 序列的请求?  

(2)给出按照能满足进程序列请求的算法进行分区分配后的空闲分区表。

【解析】(1)最佳适应算法可以满足所有进程的资源请求。(2分)

   (2)分区分配后的空闲分区表如下:(每空1分,8分)

分区号

大小

起始地址

1

12K

120K

2

10K

150K

3

5K

200K

4

18K

420K

四、编程题(共20分)

1.    某寺庙,有小和尚、老和尚若干.庙内有一水缸,由小和尚提水入缸,供老和尚饮用。水缸可容纳8桶水,每次入水、取水仅为1桶,不可同时进行。水取自同一井中,水井径窄,每次只能容纳一个水桶取水。设水桶个数为5个,试用信号灯和PV操作给出老和尚和小和尚的活动。

答:

var mutex1,mutex2,empty,full,count:semaphore;
mutex1:=mutex2:=1;
empty:=8;
full:=0;
count:=5;
cobegin
Procedure Fetch_Water
begin
while true
P(empty);
P(count);
P(mutex1);
Get Water;
V(mutex1);
P(mutex2);
pure water into the jar;
V(mutex2);
V(count);
V(full);
end

Procedure Drink_Water
begin
while true
p(full);
p(count);
p(mutex2);
Get water and Drink water;
p(mutex2);
v(empty);
v(count);
end
coend

  • 1
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值