ALL > Computer and Education > courses > university courses > undergraduate courses > Operating System > ZSTU class(2019-2020-1) > student directories > >
homework_5 Version 0
👤 Author: by 838135750qqcom 2019-10-10 13:51:58
Processes apply for resources dynamically.Operating system calculates the security before allocating resources.If it is safe,it allocates the resources.If it is unsafe,it waits to advoid the deadlock.

EXAMPLE:

Allocation         Max            Available              Need

A B C                  A B C           A B C                  A B C

P0     4,0,5                  4,0,11           2,3,3                  0,0,6

P1     4,0,2                  5,3,6                                         1,3,4

P2     2,1,4                  4,2,5                                          2,1,1

P3     2,1,2                  5,5,9                                          3,4,7

P4     3,1,3                  4,2,4                                          1,1,1

P2 request(2,0,1)

The sequence<P2,P4,P0,P1,P3>

DEMO:

void BankerAlgorithm() {

boolean T=true;

if(Request[num][0]<=Need[num][0]&&Request[num][1]<=Need[num][1]&& Request[num][2] <= Need[num][2]) {

if(Request[num][0]<=Available[0]&&Request[num][1]<=Available[1]&& Request[num][2] <= Available[2]) {

for (int i=0; i<3; i++) {

Available[i] = Available[i]- Request[num][i];

Alloction[num][i]= Alloction[num][i]+ Request[num][i];

Need[num][i] = Need[num][i]-Request[num][i];

}

} else {

printf(“wait”);

T=false;

}

} else {

printf(“error”);

T=false;

}

if(T==true){

printf(“Entry Security Algorithm”);

SecurityAlgorithm();

}

}

Please login to reply. Login

Reversion History

Loading...
No reversions found.