Operating Systems Project – Page Replacement Simulator
Operating Systems1代写 Goal: Gain a deeper understanding of page replacement by implementing a simulator in Java that demonstrates the results of various
Goal: Gain a deeper understanding of page replacement by implementing a simulator in Java that demonstrates the results of various page replacement algorithms.
Description: Create a PageReplacement class and implement subclasses of it for each algorithm listed below. You will need to use a few data structures for these. You may reuse code from 241/310, use Java API versions, or create new ones that serve your purposes.Operating Systems1代写
Your program will need to create a series of reference strings and run a simulation that tracks the number of page faults generated from that string. Test your program against different frame sizes and reference strings. Describe the results of your test in your postmortem.
0000: Setup Operating Systems1代写
Implement the following abstract class. Create a Main class that can read your input files. The Main class should accept two command line parameters, the input filename, and the number of frames that you would like to use for a particular run of your program.
0001: FIFO Operating Systems1代写
Implement the FIFO algorithm. This should be a subclass of ReplacementAlgorithm. Test your code to make sure that everything functions properly. Your Main class should be able to read and print out the number of page faults that result from running your reference strings through these algorithms. Consider how stacks and queues work.
Implement the LRU algorithm with a Stack. Your Stack will need to be able to access different parts of the underlying list, so be sure to use the appropriate data structure. (Java lists are useful).
Input: Read a file with the following format: Each line will be a reference string. It will have a series of integer values separated by a single space. See the attached input file.Operating Systems1代写
Output: The number of page faults generated for each algorithm. Optionally: You may find it useful to output the frames in a manner similar to how we have drawn them in class. After each reference string has run, print out which algorithm performed better overall (and by how much).
- Executable jar, [YOUR_NAME]PageRepSim.jar – Test this on the command
- All source code – Copy your entire src folder over, but NOT your IDE project
- txt – Describe how to run yourprogram.
- Your input files – Show what you tested.
- Postmortem – Document your experience with this project. You should also include screenshots of you running your program.
- Read yourbook
- Seriously, your book is better than Google or StackOverflow
- Make your own reference strings and test your output.
- Keep your frame size small since we have short reference strings.
Checklist Operating Systems1代写
|FIFO Operating Systems1代写||25|
|Bugs / run-time errors||-x|
|Unsatisfactory design Operating Systems1代写||-y|