OS 11 c
OS 11 c
printf("P%d\t%d\t", i + 1, processSize[i]);
if (allocation[i] != -1)
printf("Block %d\n", allocation[i] + 1);
else
printf("Not Allocated\n");
}
// Show remaining memory
printf("\nRemaining Memory in Blocks:\n");
for (int i = 0; i < blocks; i++) {
printf("Block %d: %d\n", i + 1, blockSize[i]);
}
}
int main() {
int blockSize[MAX_BLOCKS], processSize[MAX_PROCESSES];
int blocks, processes;
printf("Enter number of memory blocks: ");
scanf("%d", &blocks);
printf("Enter sizes of %d blocks:\n", blocks);
for (int i = 0; i < blocks; i++) {
scanf("%d", &blockSize[i]);
}
printf("Enter number of processes: ");
scanf("%d", &processes);
printf("Enter sizes of %d processes:\n", processes);
for (int i = 0; i < processes; i++) {
scanf("%d", &processSize[i]);
}
worstFit(blockSize, blocks, processSize, processes);
return 0;
}
Sprno:9223
OUTPUT:
Enter number of memory blocks: 5
Enter sizes of 5 blocks:
100 500 200 300 600
Enter number of processes: 3
Enter sizes of 3 processes:
212 417 112
Process Size Allocated Block
P1 212 Block 5
P2 417 Block 2
P3 112 Block 5
Remaining Memory in Blocks:
Block 1: 100
Block 2: 83
Block 3: 200
Block 4: 300
Block 5: 276