设进程i提出请求request[i][M],则银行家算法按如下规则进行判断。
(1)如果request[i][M]<=need [i][M],则转(2);否则,出错。
(2)如果request[i][M]<= available[M],则转(3);否则,出错。
(3)系统试探分配资源,修改相关数据:
available= available-request;
allocation = allocation +request ;
need = need –request;
(4)系统执行安全性检查,如安全,则分配成立;否则试探险性分配作废,系统恢复原状,进程等待。
1、设计一个有N个进程共行的进程调度程序。每个进程由一个进程控制块PCB表示。进程控制块包括以下信息:进程名,进程优先数,进程需要运行的时间,占用CPU的时间以及进程的状态等。
2、本调度程序用优先数调度算法。
3、编写程序并调试运行。