操作系统题目收录(九)

news2024/11/27 18:40:12

1、有两个并发进程,对于如下程序的运行,正确的说法是()。

int x,y,z,t,u;
P1()
{
	while(1){
		x=1;
		y=0;
		if x>=1 then y=y+1;
		z=y;
	}	
}

P2()
{
	while(1){
		x=0;
		t=0;
		if x<=1 then t=t+2;
		u=t;
	}
}
  • A:程序能正确运行,结果唯一
  • B:程序不能正确运行,可能有两种结果
  • C:程序不能正确运行,结果不确定
  • D:程序不能正确运行,可能会死锁
解析

本题中两个进程不能正确地工作,运行结果的可能性如下说明。

1. x=1;
2. y=0;
3. if x>=1 then y=y+1;
4. z=y;

5. x=0;
6. t=0;
7. if x<=1 then t=t+2;
8. u=t;

不确定的原因是由于使用了公共变量x,考查程序中与变量x有关的语句共四处。

执行的顺序是1->2->3->4->5->6->7->8时,结果是y=1,z=1,t=2,u=2,x=2;

并发执行过程是1->2->5->6->3->4->7->8时,结果是y=0,z=0,t=2,u=2,x=0;

执行的顺序是5->6->7->8->1->2->3->4时,结果是y=1,z=1,t=2,u=2,x=1;

执行的顺序是5->6->1->2->7->8->3->4时,结果是y=1,z=1,t=2,u=2,x=1。

很明显,无论执行顺序如何,x的结果只能是0或1,因此语句7的条件一定成立,即t=u=2的结果是一定的;而y=z必定成立,只可能有0,1两种情况,又不可能出现x=1,y=z=0的情况,所以总共只有3中结果。

答案:C

2、一个进程在获得资源后,只能在使用完资源后由自己释放,这属于死锁必要条件的()。

  • A:互斥条件
  • B:请求和释放条件
  • C:不剥夺条件
  • D:防止系统进入不安全状态
解析

一个进程再获得资源后,只能在使用完资源后由自己释放,即它的资源不能被系统剥夺,答案为C选项。

答案:C

3、死锁定理是用于处理死锁的()方法。

  • A:预防死锁
  • B:避免死锁
  • C:检测死锁
  • D:解除死锁
解析

死锁定理是用于检测死锁的方法。

答案:C

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

  • A:2
  • B:3
  • C:4
  • D:5
解析

考虑最极端的情况。因为每个进程最多需要3台打印机,若每个进程已经占有了2台打印机,则只要还有多的打印机,总能满足一个进程达到3台的条件,然后顺利执行,所以将8台打印机分给K个进程,每个进程有2台打印机,这个情况最极端,K为4。

答案:C

5、下列关于银行家算法的叙述中,正确的是()。

  • A:银行家算法可以预防死锁
  • B:当系统处于安全状态时,系统中一定无死锁进程
  • C:当系统处于不安全状态时,系统中一定会出现死锁进程
  • D:银行家算法破坏了死锁必要条件中的“请求和保持”条件
解析

银行家算法是避免死锁的方法,选项A、D错。

并非所有不安全状态都是死锁状态,但当系统进入不安全状态后,便可能进入死锁状态;反之,只要系统处于安全状态,系统便可避免进入死锁状态;死锁状态必定是不安全状态。

在这里插入图片描述
所以选项B对,选项C错。

答案:B

6、某系统有n台互斥使用的同类设备,三个并发进程分别需要3,4,5台设备,可确保系统不发生死锁的设备数n最小为()。

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

三个并发进程分别需要3,4,5台设备,当系统只有(3-1)+(4-1)+(5-1)=9台设备时,第一个进程分配2台,第二个进程分配3台,第三个进程分配4台。这种情况下,三个进程均无法继续执行下去,发生死锁。当系统中再增加1台设备,即10台设备时,最后1台设备分配给任意一个进程都可以顺利执行完成,因此保证系统不发生死锁的最小设备数为10。

答案:B

7、若系统 S 1 S_1 S1采用死锁避免方法, S 2 S_2 S2采用死锁检测方法。下列叙述中,正确的是()。

Ⅰ、 S 1 S_1 S1会限制用户申请资源的顺序,而 S 2 S_2 S2不会
Ⅱ、 S 1 S_1 S1需要进程运行所需的资源总量信息,而 S 2 S_2 S2不需要
Ⅲ、 S 1 S_1 S1不会给可能导致死锁的进程分配资源,而 S 2 S_2 S2

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

死锁的处理采用三种策略:死锁预防、死锁避免、死锁检测和解除

死锁预防采用破坏产生死锁的4个必要条件中的一个或几个来防止发生死锁。其中之一的“破坏循环等待条件”,一般采用顺序资源分配法,首先给系统的资源编号,规定每个进程必须按编号递增的顺序请求资源,即限制了用户申请资源的顺序,因此Ⅰ的前半句属于死锁预防的范畴。

银行家算法是著名的死锁避免算法,其中的最大需求矩阵Max定义了每个进程对m类资源的最大需求量,系统在执行安全性算法中都会检查次资源试分配后,系统是否处于安全状态,若不安全则将本次的试探分配作废。在死锁的检测和解除中,系统为进程分配资源时不采取任何措施,但提供死锁的检测和解除手段,因此Ⅱ、Ⅲ正确。

答案:B

8、假设系统中有4个同类资源,进程 P 1 P_1 P1 P 2 P_2 P2 P 3 P_3 P3需要的资源数分别为4,3和1, P 1 P_1 P1 P 2 P_2 P2 P 3 P_3 P3已申请到的资源数分别为2,1,和0,则执行安全性检测算法的结果是()。

  • A:不存在安全序列,系统处于不安全状态
  • B:存在多个安全序列,系统处于安全状态
  • C:存在唯一安全序列 P 3 P_3 P3, P 1 P_1 P1, P 2 P_2 P2,系统处于安全状态
  • D:存在唯一安全序列 P 3 P_3 P3, P 2 P_2 P2, P 1 P_1 P1,系统处于安全状态
解析

由题意可知,仅剩最后一个同类资源,若将其分给 P 1 P_1 P1 P 2 P_2 P2,则均无法正常执行;若分给 P 3 P_3 P3,则 P 3 P_3 P3正常执行完成后,释放的这一个资源仍无法使 P 1 P_1 P1, P 2 P_2 P2正常执行,因此不存在安全序列。

答案:A

9、下列关于死锁的叙述中,正确的是()。

Ⅰ、可以通过剥夺进程资源解除死锁
Ⅱ、死锁的预防方法能确保系统不发生死锁
Ⅲ、银行家算法可以判断系统是否处于死锁状态
Ⅳ、当系统出现死锁时,必然有两个或两个以上的进程处于阻塞态

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

10、若系统中有n(n$\geq$2)个进程,每个进程均需要使用某类临界资源2个,则系统不会发生死锁所需的该类资源总数至少是()。

  • A:2
  • B:n
  • C:n+1
  • D:2n
解析

极端情况,当临界资源数为n时,每个进程都拥有1个临界资源并等待另一个资源,会发生死锁。当临界资源数为n+1时,则n个进程中至少有一个进程可以获得2个临界资源,顺利运行完后释放自己的临界资源,使得其他进程也能顺利运行,不会产生死锁。

答案:C

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/345346.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SSTI漏洞基础解析

flask基础 flask是python编写的一个WEB应用程序框架&#xff0c;flask由Armin Ronacher带领的一个Pocco团队开发&#xff0c;flask基于werkzeug WSGI工具包个jinjia2模板引擎。 WSGI&#xff1a;Web Server Gateway Interface&#xff0c;即WEB服务器网关接口。 第一个flask…

openai chatgpt 相关

父文章 大数据模型 能做什么? 报告类: 剧本,报告, 标题, 大纲 (都是启发式的), 聊天类: 聊天, 反馈, 心理uu ds 搜索类: 搜索, 书本推荐 几乎可以完成自然语言处理的绝大部分任务 &#xff0c;例如面向问题的搜索、阅读理解、语义推断、机器翻译、文章生成和自动问答等等。…

C/【静态通讯录】

&#x1f331;博客主页&#xff1a;大寄一场. &#x1f331;系列专栏&#xff1a;C语言学习笔记 &#x1f618;博客制作不易欢迎各位&#x1f44d;点赞⭐收藏➕关注 前言 往期回顾&#xff1a; C/扫雷 C/N子棋 通讯录作为通讯录地址的书本&#xff0c;当今的通讯录可以涵盖多项…

彻底理解 cookie、session、token (二)

Cookie cookie 是一个非常具体的东西&#xff0c;指的就是浏览器里面能永久存储的一种数据&#xff0c;仅仅是浏览器实现的一种数据存储功能。 cookie由服务器生成&#xff0c;发送给浏览器&#xff0c;浏览器把cookie以kv形式保存到某个目录下的文本文件内&#xff0c;下一次…

vue2+微前端qiankun从搭建到部署的实践(主子应用切换;集成vue3+vite3子应用)

一、最终效果 二、微前端&#xff08;qiankun&#xff09;介绍及为什么选择用微前端&#xff0c;可以看官网 三、目录结构如下 四、具体配置 一、主应用配置 1、主应用技术栈 Vue-cli4搭建项目Vue2Element-Uiqiankun&#xff1b;Vue2Element-Uiqiankun 2、搭建好主项目&…

Java集合:Map的使用

1.Map框架l----Map:双列数据&#xff0c;存储key-value对的数据 ---类似于高中的函数: y f(x)|----HashMap:作为Map的主要实现类&#xff0c; 线程不安全的&#xff0c;效率高&#xff1b;可以存储null的key和value|----LinkedHashMap:保证在遍历map元素时&#xff0c;可以按照…

【Android】系统源码下载及编译

源码及编译 步骤 1&#xff1a;创建一个空目录来存放源码&#xff1a; mkdir aosp cd aosp步骤 2&#xff1a;获取最新版本的 repo 并签出 android-8.1.0_r1 分支&#xff1a; repo init -u https://android.googlesource.com/platform/manifest -b android-8.1.0_r1其中&am…

数据结构-考研难点代码突破(C++实现树型查找-二叉搜索树(二叉排序树))

文章目录1.二叉搜索树基本操作二叉搜索树的效率分析2. C实现1.二叉搜索树基本操作 二叉排序树是具有下列特性的二叉树&#xff1a; 若左子树非空&#xff0c;则左子树上所有结点的值均小于根结点的值。若右子树非空&#xff0c;则右子树上所有结点的值均大于根结点的值。左、…

蓝牙耳机哪个品牌性价比高?性价比高的无线蓝牙耳机

现如今耳机已经十分普及&#xff0c;大多数人会随身佩戴蓝牙耳机&#xff0c;相较于传统耳机&#xff0c;无线耳机不仅携带方便&#xff0c;舒适度上也更加出色。不过市面上的无线耳机种类繁多&#xff0c;很多朋友不知道该如何挑选&#xff0c;所以小编特意整理了一期性价比高…

从零开始搭建kubernetes集群环境(虚拟机/kubeadm方式)

文章目录1 Kubernetes简介&#xff08;k8s&#xff09;2 安装实战2.1 主机安装并初始化2.2 安装docker2.3 安装Kubernetes组件2.4 准备集群镜像2.5 集群初始化2.6 安装flannel网络插件3 部署nginx 测试3.1 创建一个nginx服务3.2 暴漏端口3.3 查看服务3.4 测试服务1 Kubernetes简…

2023如何选购适合游戏设计的电脑硬件

游戏设计涉及许多不同的学科&#xff0c;因此涉及许多不同的软件包。有游戏引擎本身&#xff0c;例如 Unreal Engine 和 Unity&#xff0c;以及 3D 设计软件&#xff0c;例如 3ds Max、Blender 和 ZBrush——等等&#xff01;大多数软件开发人员都维护着这些不同应用程序的系统…

C++设计模式(14)——享元模式

亦称&#xff1a; 缓存、Cache、Flyweight 意图 享元模式是一种结构型设计模式&#xff0c; 它摒弃了在每个对象中保存所有数据的方式&#xff0c; 通过共享多个对象所共有的相同状态&#xff0c; 让你能在有限的内存容量中载入更多对象。 问题 假如你希望在长时间工作后放…

U-Mail邮件系统安全攻略之邮件监控

随着互联网的普及&#xff0c;电子邮件已经成为现代人生活和工作中最常用的通信工具之一&#xff0c;在企业的内外文件往来和日常沟通中发挥着重要作用。电子邮件在获得广泛应用的同时&#xff0c;也让企业的重要信息安全受到很大的威胁&#xff0c;比如员工未经允许将公司重要…

复杂美公链技术重要特色:平行公链架构

复杂美公链技术Chain33从11月开源至今&#xff0c;获得众多合作方的认可&#xff0c;其中首创的平行公链架构被百度、阿里、360等机构认可并跟进研究&#xff0c;这也说明了平行公链或许是区块链普及应用的重要解决方案之一。 平行公链&#xff08;以下简称平行链&#xff09;是…

【ADRC控制】使用自抗扰控制器调节起动机入口压力值

以前只知道工业控制中用的是PID控制&#xff0c;然而最近了解到实际生产中还在使用ADRC控制&#xff0c;而且使用效果还优于PID控制&#xff0c;遂找了几篇文献学习学习。 0 引言 自抗扰控制&#xff08;Active Disturbances Rejection Controller&#xff0c;ADRC&#xff09;…

【Datawhale图机器学习】第一章图机器学习导论

图机器学习导论 学习路径与必读论文清单 斯坦福CS224W&#xff08;子豪兄中文精讲&#xff09;知识图谱实战DeepwalkNode2vecPageRankGNNGCNGragh-SAGEGINGATTrans-ETrans-R 图无处不在 图是描述关联数据的通用语言 举例 计算机网络新冠肺炎流行病学调查传播链食物链地铁图…

推荐一个.Ner Core开发的配置中心开源项目

更多开源项目请查看&#xff1a;一个专注推荐.Net开源项目的榜单 当你把单体应用改造为微服务架构&#xff0c;相应的配置文件&#xff0c;也会被分割&#xff0c;被分散到各个节点。这个时候就会产生一个问题&#xff0c;配置信息是分散的、冗余的&#xff0c;变成不好维护管理…

ZigBee案例笔记 - USART

文章目录1.串行通信接口简述2.串行通信接口寄存器U0CSR (0x86) -USART 0 控制和状态U0UCR (0xC4)–USART 0 UART 控制U0GCR (0xC5)–USART 0 通用控制U0BUF (0xC1) – USART 0 接收/传送数据缓存U0BAUD (0xC2) – USART 0 波特率控制3.设置串行通信接口比特率控制寄存器4.外设I…

分布式一致性算法Raft原理图释

什么是分布式一致性算法Raft 分布式一致性算法Raft&#xff1a;指在分布式场景下实现集群数据同步的解决方案 掌握了这个算法&#xff0c;就可以较容易地处理绝大部分场景的容错和数据一致性需求 Raft三大角色 跟随者&#xff08;Follower&#xff09;&#xff1a;普通群众…

opencv绘制矩形和圆

大家好&#xff0c;我是csdn的博主&#xff1a;lqj_本人 这是我的个人博客主页&#xff1a; lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm1011.2415.3001.5343哔哩哔哩欢迎关注…