【操作系统】系统有某种共享资源m个提供给n个进程互斥使用,假设进程p1需要该资源数目的最大值是m1,p2需要该资源数目的最大值是m2,...,pn需要该资源数目的最大值是mn,那么满足什么条件,系统一

摘要:微信搜索【三桥君

一、题目

系统有某种共享资源m个提供给n个进程互斥使用,假设进程p1需要该资源数目的最大值是m1,p2需要该资源数目的最大值是m2,…,pn需要该资源数目的最大值是mn,那么满足什么条件,系统一定不会发生死锁,反之,系统可能死锁?引申问题,不发生死锁的最小m值?可能发生死锁的最大m值?

二、答案

一定不发生死锁:(m1-1)+(m2-1)+(m3-1)+…(mn-1)+1<=m;<=改为>则可能发生死锁

因为是不等式,所以分别有一个最小值和最大值

解释:把最后的那个1加到前面的任一个括号中,可保证一个进程的资源最大需求,那么该进程就可完成从而释放其占用的全部资源,这些释放的资源就可提供给其它进程,使得全部进程顺利完成

注意后面改为">"号,是可能死锁(不是一定死锁),因为如果调度得当,也可能不发生死锁


文章整理不易,有帮助请点赞关注支持,谢谢!微信搜索【三桥君 】,回复【关注】有我准备的一份资源大礼包。后续持续更新~~~

猜你喜欢

转载自blog.csdn.net/weixin_46218781/article/details/107027603