Osss Fatt
Osss Fatt
#include <stdio.h>
#define MAX 10
int allocation[MAX][MAX], max[MAX][MAX], need[MAX][MAX], available[MAX];
int n, m;
void input() {
int i, j;
printf("Enter the number of processes: ");
scanf("%d", &n);
printf("Enter the number of resource types: ");
scanf("%d", &m);
printf("Enter the Allocation Matrix:\n");
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
scanf("%d", &allocation[i][j]);
printf("Enter the Maximum Matrix:\n");
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
scanf("%d", &max[i][j]);
printf("Enter the Available Resources:\n");
for (j = 0; j < m; j++)
scanf("%d", &available[j]);
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
need[i][j] = max[i][j] - allocation[i][j];
}
void display() {
int i, j;
printf("Process\tAllocation\tMax\tNeed\n");
for (i = 0; i < n; i++) {
printf("P%d\t", i);
for (j = 0; j < m; j++)
printf("%d ", allocation[i][j]);
printf("\t");
for (j = 0; j < m; j++)
printf("%d ", max[i][j]);
printf("\t");
for (j = 0; j < m; j++)
printf("%d ", need[i][j]);
printf("\n");
}
}
int is_safe() {
int finish[MAX] = {0}, work[MAX], safe_sequence[MAX], count = 0, i, j;
for (j = 0; j < m; j++)
work[j] = available[j];
num=1
for ((i=num_rows; i>0; i--)); do
for ((j=num_rows; j>i; j--)); do
echo -n " "
done
for ((k=1; k<=2*i-1; k++)); do
echo -n "$num "
done
echo
num=$((num + 1))
done
Execution:
bash
Copy code
chmod +x myscript.sh
./myscript.sh
gcc -o filename filename.c
./filename