软考90-上午题-【操作系统】-死锁

一、同类资源分配不当引起死锁

系统中有m个资源,被n个进程共享,每个进程都要求k个资源。

当m < n*k时,即:资源数<进程所要求的总数时,可能会引起死锁。(但是不一定!)

例如:m=5,n=3,k=3,

若系统采用的分配策略是:轮流地为每个进程分配,则第一轮系统先为每个进程分配一台,还剩下两台;第二轮系统再为两个进程各分配一台,此时,系统中已无可供分配的资源,使得各个进程都处于等待状态导致系统发生死锁。

【注意】:

当有 n 个进程、m 个资源、且每个进程所需要的资源数为k,

并且系统采用的分配策略是轮流地为每个进程分配资源时,(软考题目都是这个策略)判断是否会发生死锁的公式如下:

m >= n * (k-1) + 1

为真就不会发生死锁、为假就会发生死锁。

二、真题

真题1:

真题2:

真题3:

真题4:

真题5:

真题6:

真题7:

二、进程资源图

2-1、可化简的进程资源图

  • 先申请资源,再分配资源;
  • 先分配资源,再申请资源;
  • 边分配,边申请。(×)

提问方式一:图中哪些进程是阻塞的,哪些进程是非阻塞的。

提问方式二:是否可以化简,是的话,化简顺序是什么?

如图,P1进程非阻塞,执行完成后,将释放资源。

可化简,则非死锁。

2-2、不可化简的进程资源图

不可以化简,是死锁的。

2-3、真题

真题1:

真题2:

真题3:

真题4:

三、死锁的处理 

死锁的处理策略主要有4种:

  • 鸵鸟策略(即不理睬策略)、
  • 预防策略、
  • 避免策略
  • 检测与解除死锁。

3-1、死锁避免

死锁预防是设法破坏产生死锁的 4 个必要条件之一,严格防止死锁的产生。

死锁避免则不那么立格地限制产生死锁的必要条件。最著名的死锁避免算法是 Diikstra 提出的银行家算法,死锁避免算法需要很大的系统开销。

银行家算法对于进程发出的每一个系统可以满足的资源请求命令加以检测,如果发现分配资源后系统进入不安全状态,则不予分配;若分配资源后系统仍处于安全状态,则实施分配。

与死锁预防策略相比,它提高了资源的利用率,但检测分配资源后系统是否安全增加了系统开销。

所谓安全状态,是指系统能按某种顺序如< P1,P2,......,Pn >来为每个进程分配其所需资源,直到最大需求,使每个进程都可顺序完成。通常称< P1,P2,......,Pn >序列为安全序列。若系统不存在这样一个安全序列,则称系统处于不安全状态。

3-2、真题

真题1:

 

真题2:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android - 深入浅出理解SeLinux

1. 概述 官方文档&#xff1a; https://source.android.com/docs/security/features/selinux https://source.android.com/docs/security/features/selinux/images/SELinux_Treble.pdf Your visual how-to guide for SELinux policy enforcement | Opensource.com SeLinux&…

基于Springboot的西安旅游系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的西安旅游系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&…

多线程(CAS, ABA问题, Runnable Callable)

CAS (Compare And Swap) 比较并交换, 可以理解成是 CPU 提供一种特殊指令, 该指令是原子的, 可以用其一定程度解决线程安全问题, 具体过程如下 假设内存中有原数据 V, 寄存器中有旧的预期值 A 和修改值 B 比较 V 与 B 的值是否相等如果相等, 则将 B 写入 V返回操作是否成功 上述…

局部路径规划算法 - 多项式曲线法

参考&#xff1a;局部路径规划算法——曲线插值法 0 前言 1 多项式曲线法 1.1 算法简介 曲线插值的方法是按照车辆在某些特定条件&#xff08;安全、快速、高效&#xff09;下&#xff0c;进行路径的曲线拟合&#xff0c;常见的有多项式曲线、双圆弧段曲线、正弦函数曲线、…

2024蓝桥杯每日一题(递归)

备战2024年蓝桥杯 -- 每日一题 Python大学A组 试题一&#xff1a;有序分数 试题二&#xff1a;正则问题 试题三&#xff1a;带分数 试题四&#xff1a;约数之和 试题五&#xff1a;分形之城 试题一&#xff1a;有序分数 【题目描述】 【输入格…

“轻”装上阵!BIM模型“瘦身”计划

您的企业在使用轻量化云平台吗&#xff1f;主要用来做什么&#xff1f;根据《中国BIM发展报告2024》调查显示&#xff0c;58%的企业正在使用BIM 轻量化。其中&#xff0c;高达83.6%的用户&#xff0c;主要是为了解决模型的轻量化查看问题。BIM轻量化是什么&#xff1f;除了轻量…

Mq之pulsar的入门使用(一)

目录 一、linux集群安装pulsar 注意事项 编辑 /etc/hostname与/etc/hosts 执行初始化命令 二、创建应用程序对消息的生产和消费进行测试 物理主机启动应用发送消息时报错处理程序的搭建及说明使用到的pom依赖springboot中pulsar配置接收消息模拟发送消息发送与接收消息打印…

HTML网页文档和DOM结构介绍

HTML网页文档和DOM结构介绍 HTML网页文档 HTML&#xff0c;全称为超文本标记语言&#xff08;Hypertext Markup Language&#xff09;&#xff0c;是用来描述并定义内容结构的标记语言&#xff0c;它是构建任何网页和网络应用的最基础的组成部分。HTML文档由一系列的元素构成…

《由浅入深学习SAP财务》:第2章 总账模块 - 2.2 组织结构

在SAP的FI模块&#xff0c;主要的组织结构有公司代码&#xff08;一定会用&#xff09;、公司&#xff08;只在做合并业务时用&#xff09;、业务范围&#xff08;可能使用&#xff09;、段&#xff08;较少使用&#xff09;、利润中心&#xff08;可能使用&#xff09;。 2.2…

二叉树|257.二叉树的所有路径

力扣题目链接 class Solution { private:void traversal(TreeNode* cur, vector<int>& path, vector<string>& result) {path.push_back(cur->val); // 中&#xff0c;中为什么写在这里&#xff0c;因为最后一个节点也要加入到path中 // 这才到了叶子节…

ThingsBoard初始化数据库Postgres+Cassandra

本章将介绍ThingsBoard初始化数据PostgresCassandra&#xff0c;两种数据库结合使用&#xff0c;以及源码的编译安装。本机环境&#xff1a;Centos7、Docker、Postgres、Cassandra 环境安装 开发环境要求&#xff1a; docker &#xff1b;Docker&#xff1b;Postgres:Cassandr…

为车主提供多路况安全保障!“北欧轮胎安全专家”熊牌轮胎迎来全新升级

德国马牌轮胎旗下明星品牌——Gislaved熊牌轮胎迎来全新升级。 自进入中国市场以来&#xff0c;熊牌轮胎凭借着坚韧安全、静音降噪等特点&#xff0c;收获无数好评。此次全新升级的熊牌轮胎&#xff0c;在品牌logo中加入了“北欧棕熊”的形象&#xff0c;并且对此前轮胎标签中的…

哨兵位、链表的链接

哨兵位&#xff1a; 通俗的话讲就是额外开辟一块空间&#xff0c;指向链表的头部。 合并两个有序链表 已解答 简单 相关标签 相关企业 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#…

PID算法原理分析及优化

今天为大家介绍一下经典控制算法之一的PID控制方法。PID控制方法从提出至今已有百余年历史&#xff0c;其由于结构简单、易于实现、鲁棒性好、可靠性高等特点&#xff0c;在机电、冶金、机械、化工等行业中应用广泛。 在大学期间&#xff0c;参加的智能汽车竞赛中就使用到了PI…

1. Java基础入门

1. Java基础入门 1.1 Java介绍(了解) 1.1.1 Java背景 Java是美国 sun 公司&#xff08;Stanford University Network&#xff09;在1995年推出的一门计算机高级编程语言。Java 之父&#xff1a;詹姆斯高斯林(James Gosling)。 2009年 sun公司被Oracle公司收购。Java公司图标…

工业网关的功能与作用进行解析-天拓四方

在工业4.0和智能制造的时代背景下&#xff0c;工业网关作为连接现场设备与云端平台的桥梁&#xff0c;正发挥着日益重要的作用。它不仅为工业设备的远程监控和管理提供了可能&#xff0c;还为企业实现数字化转型和智能化升级提供了有力支持。本文将对工业网关的功能与作用进行解…

#Linux(权限管理)

&#xff08;一&#xff09;发行版&#xff1a;Ubuntu16.04.7 &#xff08;二&#xff09;记录&#xff1a; &#xff08;1&#xff09; &#xff08;2&#xff09;-开头代表普通文件 划分为三组&#xff1a; rw- rw- r-- rw-: 文件拥有…

使用远程工具连接Mysql

&#xff08;若想要远程连接Mysql需要下面解决四个问题&#xff09; 1、目标地址 直接查询 2、端口号 3306 3、防火墙关闭 [rootlocalhost date]# systemctl stop firewalld.service 4、授权mysql数据库root用户权限&#xff08;因为mysql开始不允许其他IP访问&#xff0…

.NET开源、免费、强大的交互式绘图库

前言 今天大姚给大家分享一款.NET开源&#xff08;采用MIT许可证&#xff09;、免费、强大的交互式绘图库&#xff0c;该库能够轻松地实现大型数据集的交互式显示。使用几行代码即可快速创建折线图、柱状图、饼图、散点图等不同类型的图表&#xff1a;ScottPlot。 ScottPlot类…

【博特激光】使用视觉激光打标机有哪些优势

​ 使用视觉激光打标机具有以下优势&#xff1a; 1. 高精度定位&#xff1a;视觉激光打标机采用先进的视觉识别技术&#xff0c;能够在极短的时间内对物体进行精准的检测和定位&#xff0c;实现打标点的位置精度高达0.01mm以上。这使得它能够满足各种高精度打标需求&#xff0…