OS09
OS09
Experiment No:
Experiment Name:
Implement First In First Out (FIFO) replacement Algorithm
2 Journal Performance
3 Punctuality
Total
A. C. Patil College of Engineering OS Lab
Theory :
FIFO Page Replacement Algorithm – Theory
The First-In First-Out (FIFO) page replacement algorithm is one of the simplest page replacement techniques used in operating
systems for memory management. In FIFO, the oldest page in memory (the one that entered first) is replaced when a new page
needs to be loaded, and all frames are full.
This algorithm uses a queue to keep track of the order of pages loaded into memory. When a page fault occurs (i.e., the
requested page is not in any frame), the page at the front of the queue is removed, and the new page is added to the rear.
Although FIFO is simple to implement, it does not consider page usage frequency, which may lead to suboptimal performance
in some cases.
Program:-
#include<stdio.h>
int main()
{
int i,j,n,a[50],frame[10],no,k,avail,count=0;
printf("\n ENTER THE NUMBER OF PAGES:\n");
scanf("%d",&n);
printf("\n ENTER THE PAGE NUMBER :\n");
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
printf("\n ENTER THE NUMBER OF FRAMES :");
scanf("%d",&no);
for(i=0;i<no;i++)
frame[i]= -1;
j=0;
printf("\tref string\t page frames\n");
for(i=1;i<=n;i++)
{
printf("%d\t\t",a[i]);
avail=0;
for(k=0;k<no;k++)
if(frame[k]==a[i])
avail=1;
if (avail==0)
{
frame[j]=a[i];
j=(j+1)%no;
count++;
for(k=0;k<no;k++)
printf("%d\t",frame[k]);
}
printf("\n");
}
printf("Page Fault Is %d",count);
return 0;
}
A. C. Patil College of Engineering OS Lab
Output:-