一、问题:某系统在某时刻的进程和资源状态如下表所示:

进程

Allocation(已分配资源数)

(A  B  C  D)

Max(最大需要资源数)

(A  B  C  D)

Avaliable(可用资源数)

(A  B  C  D)

P1  0  0  1  1  0  2  2  2  1  5  2  0
P2  1  1  2  0  1  5  4  1  
P3  1  3  5  4  1  3  6  4  
P4  1  3  2  1  2  6  4  2  
P5  0  0  2  3  1  5  4  4  

用银行家算法回答下列问题:

1.计算该系统中个资源的总数

2.计算Need矩阵的内容

3.解释什么是安全状态

4.如果进程P5提出资源请求(0,4,2,1),这个请求能否被满足?为什么?

5.如果进程P2提出资源请求(0,3,1,0),这个请求能否被满足?为什么?

二、参考答案

1.(A,B,C,D)的总数为(4,12,14,9)

A = 1+1+1+1 =4

B = 1+3+3+5=12

C=1+2+5+2+2+2=14

D=1+4+1+3=9

2.

进程

Need(还需要资源数)

(A  B  C  D)

P1  0  2  1  1
P2  0  4  2  1
P3  0  0  1  0
P4  1  3  2  1
P5  1  5  2  1

3.安全状态::若系统能够找到一个进程执行序列,使得系统只要按此序列为每个进程分配资源,就可以保证进程的资源分配和执行顺序完成,此时称系统处于安全状态

4.不能满足,因为P5请求的资源比系统可用资源多,D资源没有

5.能满足,系统为P2分配资源后,仍然可以找到一个安全序列:P3、P1、P2、P4、P5

因为满足了请求所以P2变化了已分配资源数等

进程

Allocation(已分配资源数)

(A  B  C  D)

Max(最大需要资源数)

(A  B  C  D)

Need(还需要资源数)

(A  B  C  D)

Avaliable(可用资源数)

(A  B  C  D)

 顺序
P1  0  0  1  1  0  2  2  2  0  2  1  1  3  9  9  4 
P2  1  4  3  0  1  5  4  1  0  1  1  1  2  5  6  4 
P3  1  3  5  4  1  3  6  4  0  0  1  0  1  5  2  0
P4  1  3  2  1  2  6  4  2  1  3  2  1  3  9  10  5 
P5  0  0  2  3  1  5  4  4  1  5  2  1  3  9  12  8 

操作系统综合题之“银行家算法,计算各资源总数和Need还需要数量和解释什么是安全状态以及银行家进阶题(额外提出资源请求计算是否满足)”的更多相关文章

  1. 用python实现银行家算法

    编制模拟银行家算法的程序,并以下面给出的例子验证所编写的程序的正确性. 进程 已占资源 最大需求数 资源种类 A B C D A B C D P0 0 0 1 2 0 0 1 2 P1 1 0 0 0 ...

  2. 【操作系统】银行家算法实现(C语言)

    [操作系统]银行家算法实现(C语言) 注意:本人编码水平很菜.算是自己的一个总结.可能会有我还没有发现的bug.如果有人发现后可以指出,不胜感激. 1.银行家算法: 我们可以把操作系统看作是银行家,操 ...

  3. Round() 四舍五入 js银行家算法(转)

    首先问一下round(0.825,2) 返回的结果,大家猜一猜, 首先SQL server 返回的是 0.83 js的返回结果 是0.83,code 如下: var b = 0.825;        ...

  4. 银行家算法java实现

    关于银行家算法的理论知识,课本或者百度上有好多资料,我就不再多说了,这里把我最近写的银行家算法的实现带码贴出来. 由于这是我们的一个实验,对系统资源数和进程数都指定了,所以这里也将其指定了,其中系统资 ...

  5. 操作系统,银行家算法模拟实现(Windows 环境 C++)

    计算机操作系统课设需要,写了两个下午的银行家算法(陷在bug里出不来耽误了很多时间),参考计算机操作系统(汤子瀛) 实现过程中不涉及难度较大的算法,仅根据银行家算法的思想和步骤进行实现.以下为详细步骤 ...

  6. Round() 四舍五入 js银行家算法

    首先问一下round(0.825,2) 返回的结果,大家猜一猜, 首先SQL server 返回的是 0.83 js的返回结果 是0.83,code 如下: var b = 0.825;        ...

  7. [OS] 死锁相关知识点以及银行家算法详解

    因此我们先来介绍一下死锁: 死锁特征 当出现死锁时,进程永远不能完成,并且系统资源被阻碍使用,阻止了其他作业开始执行.在讨论处理死锁问题的各种方法之前,先深入讨论一下死锁的特征. ·必要条件 (1)互 ...

  8. 银行家算法之JavaScript实现

    上学期有个课程叫做操作系统,期末的时候这课程还有个课程设计,其中有个题目叫做银行家算法. 什么是银行家算法我就不解释了! 看着同学们的设计,大同小异甚至前篇一律. 清一色的控制台程序,清一色的蛋疼输入 ...

  9. C语言实现 操作系统 银行家算法

    /**************************************************** 银行家算法 算法思想: 1. 在多个进程中,挑选资源需求最小的进程Pmin. 可能存在多类资 ...

  10. java面试题之死锁产生的条件,以及如何避免死锁,银行家算法,产生死锁后如何解决(阿里面试题)

    死锁产生的四个必要条件: 互斥:一个资源每次只能被一个进程使用(资源独立) 请求与保持:一个进程因请求资源而阻塞时,对已获得的资源保持不放(不释放锁) 不剥夺:进程已获得的资源,在未使用之前,不能强行 ...

随机推荐

  1. 【忍者算法】从十字路口相遇到链表交点:探索相交链表问题|LeetCode第160题 相交链表

    从十字路口相遇到链表交点:探索相交链表问题 生活中的相遇问题 想象两个人从不同的地方出发,最后在一个十字路口相遇.他们可能走过不同长度的路程,但最终会在同一个点汇合.这就很像我们今天要讨论的相交链表问 ...

  2. kubernetes 集群中部署 nginx 服务

    kubernetes 部署nginx服务 本章节将介绍如何在kubernetes集群中部署一个nginx服务,并且能够对其进行访问. Namespace Namespace是kubernetes系统中 ...

  3. IPEX几代接口的区别

    IPEX共分五代,简单判别IPEX接口是几代的方法是测量直径. IPEX 1代      高度小于3.0mm,端子口径φ2.0 IPEX 2代      高度小于2.1mm,端子口径φ2.0 IPEX ...

  4. class com.ttsx.activity.item.dao.entity.RoleMenu ,Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method. 报错解决办法

    启动项目的时候,有几条WARN警告,如图: 引起原因: 是因为数据表实体类 没有di导致的. 例如: 解决办法: 增加实体id字段!或可以忽略!不影响程序!

  5. datagrid源码

    /** * jQuery EasyUI 1.2.3 * * Licensed under the GPL terms * To use it on other terms please contact ...

  6. Jupyter Notebook的所有文件ipynb保存下来

    前言 如果你想要保存整个 Jupyter Notebook 工作目录,包括所有笔记本和其他相关文件,最直接的方法是将整个文件夹压缩为一个 ZIP 或 TAR 文件. 下载单个文件 压缩文件夹下载 在 ...

  7. Oracle 强行断开用户连接的方法

    1.查找目标用户的当前进程 select sid,serial# from v$session where username='test'; 2.使用上述语句会返回一个进程列表,每行有两个数字,用数字 ...

  8. Pydantic Mixin:构建可组合的验证系统体系

    title: Pydantic Mixin:构建可组合的验证系统体系 date: 2025/3/22 updated: 2025/3/22 author: cmdragon excerpt: Pyda ...

  9. FFT & NTT & FWT 基础

    FFT Part 公式 欧拉公式: \(e^{i\theta}=\cos{\theta}+i\sin{\theta}\) 特殊形式:\(e^{i\pi}=-1\) Begin 一个多项式 \(F=x^ ...

  10. 【Python】面向对象版学员管理系统

    面向对象版学员管理系统 一. 系统需求 使用面向对象编程思想完成学员管理系统的开发,具体如下: 系统要求:学员数据存储在文件中 系统功能:添加学员.删除学员.修改学员信息.查询学员信息.显示所有学员信 ...