Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as C by registered user 13bce0243 ( 9 years ago )
#include<stdio>
#include<conio>
void accept(int a[],int n)
{
int i;
for(i=0;i<n for(i=0;i for(i=0;i for(j=0;j>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
void first_fit(int psize[],int np,int msize[],int nm)
{
nt i,j,itot,etot,flag[30]={0};
tot=etot=0;
for(i=0;i<np for(j=0;j xss=removed>=psize[i])
{
flag[j]=1;
itot=itot+msize[j]-psize[i];
break;
}
}
if(j==nm)
printf("\n\nTHERE IS NO SPACE FOR PROCESS %d ",i);
}
for(i=0;i<nm xss=removed etot=etot+msize[i]; xss=removed xss=removed i,j,itot,etot,temp[30],flag[30]={0}; itot=etot for(i=0;i temp[i]=msize[i]; for(i=0;i for(j=0;j xss=removed>=psize[i])
{
flag[j]=1;
itot=itot+temp[j]-psize[i];
break;
}
}
if(j==nm)
printf("\n\nTHERE IS NO SPACE FOR PROCESS %d ",i);
}
for(i=0;i<nm xss=removed etot=etot+temp[i]; xss=removed xss=removed i,j,itot,etot,temp[30],flag[30]={0}; itot=etot for(i=0;i temp[i]=msize[i]; for(i=0;i for(j=nm-1;j>=0;j--)
if(flag[j]==0 && temp[j]>=psize[i])
{
flag[j]=1;
itot=itot+temp[j]-psize[i];
break;
}
}
if(j==nm)
printf("\n\nTHERE IS NO SPACE FOR PROCESS %d ",i);
}
for(i=0;i<nm;i++)
{
if(flag[i]==0)
etot=etot+temp[i];
}
printf("\n\nPROCESSES::");
display(psize,np);
printf("\n\nMEMORY HOLES::");
display(temp,nm);
printf("\n\nTOTAL SUM OF INTERNAL FRAGMENTATION = %d ",itot);
printf("\n\nTOTAL SUM OF EXTERNAL FRAGMENTATION = %d ",etot);
}
void main()
{
int ch,np,nm,psize[30],msize[30];
clrscr();
printf("\nENTER NO OF PROCESSES::");
scanf("%d",&np);
printf("\n\nENTER SIZES OF PROCESSES::");
accept(psize,np);
printf("\nENTER NO MEMORY HOLES::");
scanf("%d",&nm);
printf("\n\nENTER SIZES OF MEMORY HOLES::");
accept(msize,nm);
while(1)
{
printf("\n\n\t\t**MAIN MENU**");
printf("\n\n\tMEMORY MANAGEMENT");
printf("\n\n\t1.FIRST FIT");
rintf("\n\n\t2.BEST FIT");
rintf("\n\n\t3.WORST FIT");
rintf("\n\n\t4.QUIT");
printf("\n\nENTER YOUR CHOICE::");
scanf("%d",&ch);
switch(ch)
{
case 1:
printf("\n\nFIRST FIT::\n");
first_fit(psize,np,msize,nm);
break;
case 2:
printf("\n\n\tBEST FIT::\n");
best_fit(psize,np,msize,nm);
break;
case 3:
printf("\n\n\tWORST FIT::\n");
worst_fit(psize,np,msize,nm);
break;
case 4:
exit(0);
default:
printf("\n\nPLEASE ENTER CORRECT CHOICE!!");
}
getch();
}
}
Revise this Paste