#include <stdio.h>
int main() {
int no, frame[10], a[50], n, avail, count = 0;
int i, j, k;
printf("Enter the number of frames: ");
scanf("%d", &no;);
printf("Enter the number of pages: ");
scanf("%d", &n);
printf("Enter the page reference string: ");
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
for (i = 0; i < no; i++) {
frame[i] = -1;
}
j = 0;
printf("Page reference string: ");
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n\nFrame allocation:\n");
for (i = 0; i < n; i++) {
avail = 0;
for (k = 0; k < no; k++) {
if (frame[k] == a[i]) {
avail = 1;
break;
}
}
if (avail == 0) {
frame[j] = a[i];
j = (j + 1) % no;
count++;
for (k = 0; k < no; k++) {
if (frame[k] != -1) {
printf("%d ", frame[k]);
} else {
printf("- ");
}
}
printf("\n");
}
}
printf("\nTotal page faults: %d\n", count);
return 0;
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}