主观题:h522.假设某系统有某类资源12个,有P1、P2、P3三个进程来共享,已知P1、P2、P3所需该类资源总数分别为8、6、9,它们申请资源的次序和数量如下表..
假设某系统有某类资源12个,有P1、P2、P3三个进程来共享,已知P1、P2、P3所需该类资源总数分别为8、6、9,它们申请资源的次序和数量如下表所示:

系统采用银行家算法分配资源,问:
(1)哪几次申请被满足会使系统进入不安全状态?请应说明理由。
(2)执行完序号为6的申请后,各进程的状态和各进程占用的资源数如何?
答案:答:
(1) 显然,前3次申请满足后,系统状态仍是安全的,因为,此时系统中剩余资源数为2,P1、P2、P3尚需资源数分别为6、2、5,存在安全序列{P2,P1,P3}; (3分)
此后,P1再申请1个资源(序号4),若被满足,则系统中剩余的可用资源数为1,而P1、P2、P3尚需资源数分别为5、2、5,剩余资源已不能满足任何进程的尚需量,即已不存在安全序列,系统进入不安全状态。故系统不能满足P1的申请,P1阻塞。 (2分)
同样,P3申请2个资源(序号5),若被满足,则系统中剩余的可用资源数为0,而P1、P2、P3尚需资源数分别为6、2、3,剩余资源已不能满足任何进程的尚需量,即已不存在安全序列,系统进入不安全状态。故系统不能满足P3的申请,P3阻塞。 (2分)
P2申请2个资源(序号6),可以被满足。
(2) 执行完序号为6的申请后,P1、P3处于阻塞状态,P2处于运行状态或就绪状态。P1、P2、P3占用的资源数分别为2、6、4。 (3分)

系统采用银行家算法分配资源,问:
(1)哪几次申请被满足会使系统进入不安全状态?请应说明理由。
(2)执行完序号为6的申请后,各进程的状态和各进程占用的资源数如何?
答案:答:
(1) 显然,前3次申请满足后,系统状态仍是安全的,因为,此时系统中剩余资源数为2,P1、P2、P3尚需资源数分别为6、2、5,存在安全序列{P2,P1,P3}; (3分)
此后,P1再申请1个资源(序号4),若被满足,则系统中剩余的可用资源数为1,而P1、P2、P3尚需资源数分别为5、2、5,剩余资源已不能满足任何进程的尚需量,即已不存在安全序列,系统进入不安全状态。故系统不能满足P1的申请,P1阻塞。 (2分)
同样,P3申请2个资源(序号5),若被满足,则系统中剩余的可用资源数为0,而P1、P2、P3尚需资源数分别为6、2、3,剩余资源已不能满足任何进程的尚需量,即已不存在安全序列,系统进入不安全状态。故系统不能满足P3的申请,P3阻塞。 (2分)
P2申请2个资源(序号6),可以被满足。
(2) 执行完序号为6的申请后,P1、P3处于阻塞状态,P2处于运行状态或就绪状态。P1、P2、P3占用的资源数分别为2、6、4。 (3分)