操作系统题目收录(八)

文章讨论了操作系统中关于进程管理和死锁的问题,包括条件变量的使用,进程在等待资源时的行为,以及实现临界区互斥的准则。文章还深入探讨了死锁的预防策略,如一次性分配资源和资源有序分配,以及如何通过资源有向图来检测死锁。此外,提到了系统中资源分配可能导致的饥饿现象和进程调度策略的影响。
摘要由CSDN通过智能技术生成

1、若x是管程内的条件变量,则当进程执行x.wait()时所做的工作是()。

  • A:实现对变量x的互斥访问
  • B:唤醒一个在x上阻塞的进程
  • C:根据x的值判断该进程是否进入阻塞态
  • D:阻塞该进程,并将之插入x的阻塞队列中
解析
答案:D

2、 下列准则中,实现临界区互斥机制必须遵循的是()。

Ⅰ、两个进程不能同时进入临界区
Ⅱ、允许进程访问空闲的临界资源
Ⅲ、进程等待进入临界区的时间是有限的
Ⅳ、不能进入临界区的执行态进程立即放弃CPU

  • A:仅Ⅰ、Ⅳ
  • B:仅Ⅱ、Ⅲ
  • C:仅Ⅰ、Ⅱ、Ⅲ
  • D:仅Ⅰ、Ⅲ、Ⅳ
解析

实现临界区互斥需满足多个准则。
“忙则等待”准则,即两个进程不能同时访问临界区,Ⅰ正确。
“空闲让进”准则,若临界区空闲,则允许其他进程访问,Ⅱ正确。
“有限等待”准则,即进程应该在有限时间内访问临界区,Ⅲ正确。

Ⅰ、Ⅱ和Ⅲ是互斥机制必须遵循的原则。

Ⅳ是“让权等待”准则,不一定非得实现,如Peterson算法。

答案:C

3、一次分配所有资源的方法可以预防死锁的发生,它破坏死锁4个必要条件中的()。

  • A:互斥
  • B:占有并请求
  • C:非剥夺
  • D:循环等待
解析

发生死锁的4个必要条件:互斥、占有并请求、非剥夺和循环等待。

一次分配所有资源的方法是当进程需要资源时,一次性提出所有的请求,若请求的所有资源均满足则分配,只要有一项不满足,就不分配任何资源,该进程阻塞,直到所有的资源空闲后,满足进程的所有需求时再分配。这种分配方式不会部分地占有资源,因此打破了死锁的4个必要条件之一,实现了对死锁的预防。但是,这种分配方式需要凑齐所有资源,因此当一个进程所需的资源较多时,资源的利用率会较低,甚至会造成进程“饥饿”。

答案:B

4、死锁预防是保证系统不进入死锁状态的静态策略,其解决办法是破坏产生死锁的四个必要条件之一。下列方法中破坏了“循环等待”条件的是()。

  • A:银行家算法
  • B:一次性分配策略
  • C:剥夺资源法
  • D:资源有序分配策略
解析

资源有序分配策略可以限制循环等待条件的发生。

选项A判断是否为不安全状态;

选项B破坏了占有请求条件;

选项C破坏了非剥夺条件。

答案:D

5、某系统中有三个并发进程都需要四个同类资源,则该系统必然不会发生死锁的最少资源是()。

  • A:9
  • B:10
  • C:11
  • D:12
解析

资源数为9时,存在三个进程都占有三个资源,为死锁;资源数为10时,必然存在一个进程能拿到4个资源,然后可以顺序执行完其他进程。

答案:B

6、某系统中共有11台磁带机,X个进程共享此磁带机设备,每个进程最多请求使用3台,则系统必然不会死锁的最大X值是()。

  • A:4
  • B:5
  • C:6
  • D:7
解析

极端情况:
每个进程已经分配了两台磁带机,那么其中任何一个进程只要再分配一台磁带机即可满足它的最大需求,该进程总能运行下去直到结束,然后将磁带机归还给系统再次分配给其他进程使用。因此,系统中只要满足2X+1=11这个条件即可认为系统不会死锁,解得X=5,也就是说,系统中最多可以并发5个这样的进程是不会死锁的。

答案:B

7、三个进程共享四个同类资源,这些资源的分配与释放只能一次一个。已知每个进程最多需要两个该类资源,则该系统()。

  • A:有些进程可能永远得不到该类资源
  • B:必然有死锁
  • C:进程请求该类资源必然能得到
  • D:必然是死锁
解析

不会发生死锁。因为每个进程都分得一个资源时,还有一个资源可以让任意一个进程满足,这样这个进程可以顺利运行完成进而释放它的资源。

答案:C

8、死锁检测时检查的是()。

  • A:资源有向图
  • B:前驱图
  • C:搜索树
  • D:安全图
解析

死锁检测一般采用两种方法:资源有向图法和资源矩阵法。

前驱图只是说明进程之间的同步关系,搜索树用于数据结构的分析,安全图并不存在。

注意死锁避免和死锁检测的区别:死锁避免是指避免死锁发生,即死锁没有发生;死锁检测是指死锁已出现,要把它检测出来。

答案:A

9、某个系统采用下列资源分配策略,若一个进程提出资源请求得不到满足,而此时没有由于等待资源而被阻塞的进程,则自己就被阻塞。而当此时已有等待资源而被阻塞的进程,则检查所有由于等待资源而被阻塞的进程。若它们有申请进程所需要的资源,则将这些资源取出并分配给申请进程。这种分配策略会导致()。

  • A:死锁
  • B:颠簸
  • C:回退
  • D:饥饿
解析

某个进程主动释放资源不会导致死锁,因为破坏了请求并保持条件,选项A错。

颠簸也就是抖动,这是请求分页系统中页面调度不当而导致的现象。

回退是指从此时此刻的状态回退到一分钟之前的状态,假如一分钟之前拥有资源X,它有可能释放了资源X,那就不能回到一分钟之前的状态,也就不是回退,选项C错。

由于进程过于“慷慨”,不断把自己已得到的资源送给别人,导致自己长期无法完成,所以是饥饿,选项D对。

答案:D

10、系统的资源分配图在下列情况下,无法判断是否处于死锁状态的有()。

Ⅰ、出现了环路
Ⅱ、没有环路
Ⅲ、每种资源只有一个,并出现环路
Ⅳ、每个进程结点至少有一条请求边

  • A:Ⅰ、Ⅱ、Ⅲ、Ⅳ
  • B:Ⅰ、Ⅲ、Ⅳ
  • C:Ⅰ、Ⅳ
  • D:以上答案都不正确
解析

出现了环路,只是满足了循环等待的必要条件,而满足必要条件不一定会导致死锁,Ⅰ对;

没有环路,破坏了循环等待条件,一定不会发生死锁,Ⅱ错;

每种资源只有一个,又出现了环路,这是死锁的充分条件,可以确定是否有死锁,Ⅲ错;

即使每个进程至少有一条请求边。若资源足够,则不会发生死锁,但若资源不充足,则有发生死锁的可能,Ⅳ对。

答案:C
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
知识点: 1.实时系统和分时系统的区别,举几个实时系统的例子 2.操作系统主要功能和基本特征,三种基本操作系统类型。 3.进程的组成和PCB作用,进程三种基本状态 4.进程和线程区别,进程和程序的区别 5.进程同步和互斥。(可能有大题) 6.若P、V操作的信号量S初值为6,当前值为-1,则表示? 7.某系统中有7个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数。 8.文件系统采用多级目录结构的作用。 9.最佳,最差,首次适应算法的特点。(可能有大题) 10.段式存储管理和页式存储管理的逻辑地址结构,地址变化,访问时间。(可能有大题) 11.分页和分段的区别(三点) 12.最佳置换算法,先进先出,LRU算法、clock置换算法的特点,以及如何进行置换。(可能有大题) 13.缓冲的作用。 14.spooling系统是一种虚拟设备的技术。 15.绝对路径名、相对路径名,当前目录。 16.在各种进程调度算法中,若所有进程同时到达,则平均周转时间最短的算法是最短进程优先。证明一下。几种算法:先来先服务,短作业优先,优先级,最高响应比优先,时间片轮转(可能有大题) 17.什么是零头?各种存储管理方式中的零头问题。 18.虚拟存储器的定义和特点。 19.死锁避免。(可能有大题),参考P128页题目31。 20.死锁预防方法 21.磁盘访问时间。磁盘调度算法。(可能有大题) 22.IO软件层次:四层,理解设备独立性 23.如果inode结点中采用索引存储管理方式,如何计算文件最大长度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员丶星霖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值