I have a project where I am asked to develop an application to simulate how different page replacement algorithms perform (with varying working set size and stability period). My results:




- Vertical axis: page faults
- Horizontal axis: working set size
- Depth axis: stable period
Are my results reasonable? I expected LRU to have better results than FIFO. Here, they are approximately the same.
For random, stability period and working set size doesnt seem to affect the performance at all? I expected similar graphs as FIFO & LRU just worst performance? If the reference string is highly stable (little branches) and have a small working set size, it should still have less page faults that an application with many branches and big working set size?
More Info
My Python Code | The Project Question
- Length of reference string (RS): 200,000
- Size of virtual memory (P): 1000
- Size of main memory (F): 100
- number of time page referenced (m): 100
- Size of working set (e): 2 - 100
- Stability (t): 0 - 1
Working set size (e) & stable period (t) affects how reference string are generated.