首页 > 试题广场 >

银行家算法中的数据结构包括有可利用资源向量Available

[单选题]
银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项中表述正确的是()。
  • Allocation[i,j]=Max[i,j] +Need[i,j]
  • Need[i,j]= Max[i,j]- Allocation[i,j]
  • Max[i,j]= Allocation[i,j]*Need[i,j]
  • Need[i,j]= Max[i,j]+Allocation[i,j]
这个用向量,矩阵这样数学定义一样的描述看起来有点复杂
--
最大需求资源数=已分配的资源+还需申请的资源.
--
要考虑每一个进程对于每一种资源,这也就是描述成矩阵的原因.
发表于 2016-11-19 13:41:29 回复(0)

1)可利用资源向量Available

是个含有m个元素的数组,其中的每一个元素代表一类可利用的资源数目。如果Available[j]=K,则表示系统中现有Rj类资源K个。

2)最大需求矩阵Max

这是一个n×m的矩阵,它定义了系统中n个进程中的每一个进程对m类资源的最大需求。如果Max[i,j]=K,则表示进程i需要Rj类资源的最大数目为K。

3)分配矩阵Allocation

这也是一个n×m的矩阵,它定义了系统中每一类资源当前已分配给每一进程的资源数。如果Allocation[i,j]=K,则表示进程i当前已分得Rj类资源的 数目为K。

4)需求矩阵Need。

这也是一个n×m的矩阵,用以表示每一个进程尚需的各类资源数。如果Need[i,j]=K,则表示进程i还需要Rj类资源K个,方能完成其任务。

Need[i,j]=Max[i,j]-Allocation[i,j] 

 

发表于 2015-09-02 17:01:32 回复(0)
A B。。一定是我打开的方式不对(⊙o⊙)…
发表于 2015-08-25 17:14:52 回复(1)
A和B有啥区别啊?
发表于 2015-08-24 17:04:19 回复(3)

假设你是一家银行的经理,银行里有各种资源(比如打印机、扫描仪等)。你有多个客户(进程),每个客户都想借用这些资源来完成他们的任务。为了避免银行破产(系统死锁),你需要跟踪以下信息:

  1. 可利用资源向量 (Available):表示当前系统中每种资源的可用数量。

    • 例如:如果系统有 5 台打印机,目前空闲的有 3 台,那么 Available[打印机] = 3。

  2. 最大需求矩阵 (Max):表示每个进程对每种资源的最大需求量。

    • 例如:进程 A 最多需要 5 台打印机,那么 Max[A][打印机] = 5。

  3. 分配矩阵 (Allocation):表示每个进程当前已经分配到的每种资源的数量。

    • 例如:进程 A 已经借走了 2 台打印机,那么 Allocation[A][打印机] = 2。

  4. 需求矩阵 (Need):表示每个进程还需要的每种资源的数量才能完成任务。

    • 例如:进程 A 最大需要 5 台打印机,已经分配了 2 台,那么它还需要 3 台,所以 Need[A][打印机] = 3。

关键点:Need 不是独立存在的,它是通过 Max 和 Allocation 计算出来的。计算规则很简单:

  • Need = Max - Allocation
    也就是说,一个进程的“还需要量”等于它的“最大需求量”减去“已经分配量”。

编辑于 2025-07-23 21:39:15 回复(0)
A.B到底有什么区别啊,求大哥们解释一下
发表于 2020-01-04 13:51:05 回复(1)
ab算术式相等 但是代表的意义不一样,说ab一样的再看一下银行家算法吧
发表于 2019-06-29 10:43:55 回复(0)
炫头像
可以参考“银行家算法”的百度解释
http://baike.baidu.com/link?url=Brntjv0ndivnXXGPqylPxarPz71_1PSuoJrDPCTmhbxU4__4oiXcdCLHivo9b_cifImMEPGqYWRO0dlgL_YzCK
发表于 2016-04-15 13:26:35 回复(0)
- -A&B
发表于 2015-09-07 14:20:48 回复(0)