#include #include #define SEQ_SIZE 50 #define CACHE_SIZE 3 int page_reference_sequence[SEQ_SIZE]; int read_file(char *filename)  // read in the page reference sequence from the file {    FILE *input;    int i, n;    if ((input = fopen(filename, "r")) == NULL) {       printf("The input file does not exist.\n");       exit(1);    }    for (i = 0; i < SEQ_SIZE; i++) {       if (fscanf(input, "%d", &page_reference_sequence[i]) == EOF) {  // end of file          n = i;  // total number of page reference          i = SEQ_SIZE;  // stop reading from file       }    }    fclose(input);    printf("Input page reference sequence: ");    for (i =0; i < n; i++) {       printf("%d ", page_reference_sequence[i]);    }    printf("(total %d references)\n", n);    return n;  // return the total number of page reference } void FIFO(int n) {    // write your own code for the FIFO policy    // based on the input file content, print out a table similar to the Figure 22.2    int i;    printf("FIFO  page reference sequence: ");    for (i = 0; i < n; i++) {       printf("%d ", page_reference_sequence[i]);    }    printf("(total %d references)\n", n); } void LRU(int n) {    // write your own code for the LRU policy    // based on the input file content, print out a table similar to the Figure 22.5    int i;    printf("LRU   page reference sequence: ");    for (i = 0; i < n; i++) {       printf("%d ", page_reference_sequence[i]);    }    printf("(total %d references)\n", n); } int main(int argc, char *argv[]) {    int i, n;    if (argc != 2) {       printf("Usage: %s input_filename\n", argv[0]);       exit(1);    }    n = read_file(argv[1]);    FIFO(n);    LRU(n); }

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

 

 

#include <stdio.h>
#include <stdlib.h>

#define SEQ_SIZE 50
#define CACHE_SIZE 3

int page_reference_sequence[SEQ_SIZE];

int read_file(char *filename)  // read in the page reference sequence from the file
{
   FILE *input;
   int i, n;

   if ((input = fopen(filename, "r")) == NULL) {
      printf("The input file does not exist.\n");
      exit(1);
   }
   for (i = 0; i < SEQ_SIZE; i++) {
      if (fscanf(input, "%d", &page_reference_sequence[i]) == EOF) {  // end of file
         n = i;  // total number of page reference
         i = SEQ_SIZE;  // stop reading from file
      }
   }
   fclose(input);

   printf("Input page reference sequence: ");
   for (i =0; i < n; i++) {
      printf("%d ", page_reference_sequence[i]);
   }
   printf("(total %d references)\n", n);

   return n;  // return the total number of page reference
}

void FIFO(int n)
{
   // write your own code for the FIFO policy
   // based on the input file content, print out a table similar to the Figure 22.2

   int i;

   printf("FIFO  page reference sequence: ");
   for (i = 0; i < n; i++) {
      printf("%d ", page_reference_sequence[i]);
   }
   printf("(total %d references)\n", n);
}

void LRU(int n)
{
   // write your own code for the LRU policy
   // based on the input file content, print out a table similar to the Figure 22.5

   int i;

   printf("LRU   page reference sequence: ");
   for (i = 0; i < n; i++) {
      printf("%d ", page_reference_sequence[i]);
   }
   printf("(total %d references)\n", n);
}

int main(int argc, char *argv[])
{
   int i, n;

   if (argc != 2) {
      printf("Usage: %s input_filename\n", argv[0]);
      exit(1);
   }

   n = read_file(argv[1]);

   FIFO(n);

   LRU(n);
}

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 3 images

Blurred answer
Similar questions
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY