Project #3 :: Memory Management (Paging)

CIS343 - Due: December 2, 2002

 

Write a program to simulate the memory management (paging) function of the operating system.  For page replacement, use the modClock replacement strategy, applied within global scope.  For scheduling you may use either  the FIFO or he Round Robin scheduling discipline.  Use the same job mix and the same job submission times as for Project #2 (given below).  For degree of multiprogramming allow 5 processes to be active at a time (as with project #2).

 

Run the simulation 3 separate times, using page sizes of 10, 20 and 30.  Gather statistics that would be useful in measuring system performance.  Allocate 300 units of memory.  [Thus, the number of available page frames will be 30, 15 and 10, respectively].  Use the following blocked times:

 

Length of time Blocked

  w Page Fault - 200

  w SysCall #1 or #2 - 100

  w SysCall #3

      v If no page faults :: 100

      v If page faults :: 300

 

Job Mix:

  w Use the following job mix:

          Factorial: 12

          Isprime: 900

          Sieve: 9500

          Isprime: 9497

          Factorial: 5

          Sieve: 50

   Repeated 5 times (a total of 30 jobs)

  w Let the job submission times be as follows:

          Job #1: 0; Job #2: 20; Job #3: 40; Job #4: 60; Job #5: 80;

          Job #6: 100; Job #7: 200; Job #8: 300; Job #9: 400; Job #10: 500

          Jobs #11 ® Job #30 : 700, 900, . . . {every 200 clock ticks}

 

To Hand In:

  w One copy of your program.

  w Statistics, presented in good format.

  w A few brief comments about the conclusions drawn from the statistics.