OS Lab Manual (1) - 18-21
OS Lab Manual (1) - 18-21
4-------->1
5 Block is already allocated
6-------->1
Do you want to enter more file(Yes - 1/No - 0)1
Enter index starting block and length: 4 2
4 starting block is already allocated
Do you want to enter more file(Yes - 1/No – 0)
MVT:
#include<stdio.h>
//#include<conio.h>
void main()
{
intms,mp[10],i,temp,n=0; char ch = 'y'; //clrscr();
printf("\nEnter the total memory available (in Bytes)-- ");
scanf("%d",&ms);
temp=ms;
for(i=0;ch=='y';i++,n++)
{
printf("\nEnter memory required for process %d (in Bytes) -- ",i+1);
scanf("%d",&mp[i]);
if(mp[i]<=temp)
{
printf("\nMemory is allocated for Process %d ",i+1);
temp = temp - mp[i];
}
else
{
printf("\nMemory is Full");
break;
}
printf("\nDo you want to continue(y/n) -- ");
scanf(" %c", &ch);
}
printf("\n\nTotal Memory Available -- %d", ms);
printf("\n\n\tPROCESS\t\t MEMORY ALLOCATED ");
for(i=0;i<n;i++)
printf("\n \t%d\t\t%d",i+1,mp[i]);
printf("\n\nTotal Memory Allocated is %d",ms-temp);
printf("\nTotal External Fragmentation is %d",temp);
//getch();
}
Output:
MFT:
#include<stdio.h>
void main()
{
intms,bs,nob,ef,n,mp[10],tif=0;
inti,p=0;