银行家算法
2017-04-01 15:37:33 0 举报
银行家算法流程图
作者其他创作
大纲/内容
报错error,停止运行
true
所有进程的end值均为true
false
run = avaliable;end[ i ] = true;
银行家算法Bank()结束
request [ i ] =need [ i ];
提出请求request [ i ]
输出提示,系统是不安全的,return false;
run = avaliable;flag = false;
安全输出队列,return true;
程序结束,退出。
avaliable[ i ] = avaliable[ i ] - request[ i ];allocation[ i ] = allocation[ i ] + request[ i ];need[ i ] = need[ i ] - request [ i ];
初始化函数Init()
是否进行再次分配
avaliable[ i ] = avaliable[ i ] + request[ i ];allocation[ i ] = allocation[ i ] - request[ i ];need[ i ] = need[ i ] + request [ i ];
request [ i ] = available [ i ];
need[ i ] =run && flag[ i ] == false;
输出提示:您的请求失败!
输出提示:您的请求成功!
银行家算法bank()
安全性算法Safe()结束
Safe();
输入所有进程的数量num
初始化函数Init()结束
输入非法,请重新输入
安全性算法Safe()
输入各资源的种类m
0 条评论
下一页