You are on page 1of 2

#include<stdio.

h>
#include<string.h>
#include<process.h>
void main()
{
int pno[10],ps[10],pe[10],n,i,flag,ch,prs,psi[10];
char pn[10],pc[10][10];
printf("enter no. of partitions:");
scanf("%d",&n);
ps[0]=0;
for(i=0;i<n;i++)
{
printf("enter partition size:",i+1);
scanf("%d",&psi[i]);
pno[i]=i+1;
if(i<=n-1)
{
ps[i+1]=ps[i]+psi[i];
pe[i]=psi[i]+ps[i]-1;
strcpy(pc[i],"empty");
}
}
while(1)
{
printf("\n par_no\t\tpar_start\t\tpar_end\t\tpar_size\tpar_content\n");
for(i=0;i<n;i++)
{
printf("\n %d\t\t%d\t\t%d\t\t%d\t\t%s\
n",pno[i],ps[i],pe[i],psi[i],pc[i]);
}
printf("1.CREATE\n");
printf("2.TERMINATE\n");
printf("3.EXIT\n");
printf("enter ur choice\n");
scanf("%d",&ch);
switch(ch)
{
case 1:printf("enter name and size of process:");
scanf("%s%d",pn,&prs);
for(flag=-1,i=0;i<n;i++)
if(strcmp(pc[i],"empty")==0&&psi[i]>=prs)
{
flag=i;
break;
}
if(flag==-1)
printf("not able to enter the process into main memory\n");
else
{
printf("%d",i);
strcpy(pc[i],pn);
}
break;
case 2:printf("enter the process name to delete:");
scanf("%s",pn);
for(flag=-1,i=0;i<n;i++)
{
if(strcmp(pc[i],pn)==0)
{
flag=i;
break;
}
}
if(flag==-1)
printf("not possible to delete a process from memeory\n");
else
strcpy(pc[flag],"empty");
break;
case 3:exit(0);
default:printf("invalid choice");
}
printf("do u want to continue(0/1)");
scanf("%d",&ch);
}

You might also like