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

进程

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. SparkRDD算子(transformations算子和actions算子)

    RDD提供了两种类型的操作:transformation和action1.所有的transformation都是采用的懒策略,如果只是将transformation提交是不会执行计算的,计算只有在ac ...

  2. 在 Aspire 项目下使用 AgileConfig

    什么是 Aspire .NET Aspire 是一组工具.模板和包,用于构建易于监控的.可投入生产的应用程序..NET Aspire 通过一系列 NuGet 包交付,这些包通过启动或解决现代应用开发中 ...

  3. 【ABAQUS模态动力学】Material-Damping 对模态分析的影响

    先说结论,执行Frequency Step (特征值提取)时定义材料行为中的Damping 行为,对结果没有影响. 1. abaqus calculation compare 1.1 ANALYSIS ...

  4. zookeeper windows 安装

    下载 zookeeper 下载地址为: https://zookeeper.apache.org/releases.html. 选择一个地址点击版本下载: 配置 下载后解压到指定磁盘的 zookeep ...

  5. vue 保留两位小数

    前言 有时候我们需要对各种数值进行保留位数,以便于更好的展示. Html部分 template中这样使用,需要处理的字段名,再加上过滤器方法 <div class="text prim ...

  6. OpnenHarmony 开源鸿蒙北向开发——2.第一个工程HelloWorld

    ​ 一.新建项目 我们打开IDE后,选择新建项目 选择这一个 设置参数 设置完成后选择Finish 项目创建后会自动下载一些东西,不用担心 二.运行 我们先什么都不用管,直接运行 先设置设备,我们这里 ...

  7. PaddleOCR学习笔记1

    尝试使用PaddleOCR方法,如何使用自定义的模型方法,参数怎么配置,图片识别尝试简单提高识别率方法. 目前仅仅只是初步学习下如何使用PaddleOCR的方法. 一,测试识别图片: 1.png : ...

  8. some notes

    .displaynone { display: none } https://voce.chat/zh-CN 一个开源的迷你的国产开源聊天软件,服务端非常小,只有 15MB. 4 分钟前 虽然没有办法 ...

  9. Windows 提权-密码搜寻

    本文通过 Google 翻译 Password Hunting – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释 ...

  10. BUUCTF---传感器

    题目 5555555595555A65556AA696AA6666666955 这是某压力传感器无线数据包解调后但未解码的报文(hex) 已知其ID为0xFED31F,请继续将报文完整解码,提交hex ...