基于C++的银行家算法模拟实现

woshiniye97384 44 0 ZIP 2019-07-06 03:07:14

设计要求使用C++设计一个n个并发进程共享m个系统资源的系统。其中进程可动态申请资源和释放资源,系统按各进程的申请动态的分配资源,要求采用银行家算法实现。设计思想本实验是基于Dijkstra的银行家算法的实现,该算法可用于在操作系统中避免死锁。该算法的基本思想是:让用户输入进程数与资源类数,并输入每个进程对每类资源的最大需求量,已占用数,以及系统中当前每类资源的可用数。再选择一个进程让其申请资源。当进程动态地申请资源时,系统必须首先确定是否有足够的资源分配给该进程。若有,系统将进一步计算在将这些资源分配给进程后,是否会使系统进入不安全状态,如果不会,系统才能将资源分配给它,否则系统让进程等待。设计流程本算法分为三步:初始状态安全性检查→银

用户评论
请输入评论内容
评分:
暂无评论