The world’s Largest Sharp Brain Virtual Experts Marketplace Just a click Away
Levels Tought:
Elementary,Middle School,High School,College,University,PHD
| Teaching Since: | Apr 2017 |
| Last Sign in: | 103 Weeks Ago, 2 Days Ago |
| Questions Answered: | 4870 |
| Tutorials Posted: | 4863 |
MBA IT, Mater in Science and Technology
Devry
Jul-1996 - Jul-2000
Professor
Devry University
Mar-2010 - Oct-2016
Design and implement a Demand Paging virtual memory simulator!
It must be a text based application (NOT a GUI based one).
You can use the Java programming language.
The following algorithms must be implemented: FIFO, OPT, LRU and LFU.
The application must simulate the execution of each of these algorithms on a hypothetical computer having only N physical frames (numbered from 0 to N-1, NThe algorithms will be simulated based on a reference string (a sequence of pages that are to be accessed) that will be either read from the keyboard or randomly generated.
Â
The program should be menu-based and the menu will keep the user in a loop containing the following options:
0 – Exit
Will exit the program
1 – Read reference string
A reference string will be read from the keyboard and stored in a buffer. Each value of the reference string will be verified and validated (or rejected).
Using option 1 again will result in overwriting the old reference string.
2 – Generate reference string
A reference string will be randomly generated; the length of the reference string will be given by the user interactively. The string will be stored in a buffer.
Using option 2 more than once will result in overwriting the old reference string.
3 – Display current reference string
Will display the stored reference string; if there is no reference string stored yet, an error message will be displayed.
4 – Simulate FIFO
Will simulate the step by step execution of the FIFO algorithm using the stored reference string; if there is no reference string stored yet, an error message must be displayed.
The user will press a key after each step of the simulation to continue the simulation.
The total number of faults will be displayed at the end of the simulation.
5 – Simulate OPT
Will simulate the step by step execution of the OPT algorithm using the stored reference string; if there is no reference string stored yet, an error message must be displayed.
The user will press a key after each step of the simulation to continue the simulation.
The total number of faults will be displayed at the end of the simulation.
6 – Simulate LRU
Will simulate the step by step execution of the LRU algorithm using the stored reference string; if there is no reference string stored yet, an error message must be displayed.
The user will press a key after each step of the simulation to continue the simulation.
The total number of faults will be displayed at the end of the simulation.
7 – Simulate LFU
Will simulate the step by step execution of the LFU algorithm using the stored reference string; if there is no reference string stored yet, an error message must be displayed.
The user will press a key after each step of the simulation to continue the simulation.
The total number of faults will be displayed at the end of the simulation.
Selecting a different option will result in an error message but the user will NOT exit the loop!
Deliverables:
1. The source code of the project
Â
Â
Â
Â
Grading Components:
 Comments (Max 5%) – All code is accurately and neatly commented
ï‚§ Error Checking (Max 5%)- All code provides error checking to prevent and catch runtime errors
ï‚§ Correct implementation of the main program loop (Max 5%)
 Correct FIFO implementation (Max 11%) – FIFO design and implementation correct and complete
 Correct OPT implementation (Max 11%) – OPT design and implementation correct and complete
ï‚§ Correct LRU implementation (Max 11%) - LRU design and implementation correct and complete
ï‚§ Correct LFU implementation (Max 11%) - LRU design and implementation correct and complete
 User friendliness (Max 9%) – Project is easy to use and intuitive
ï‚§ Introduction and Overview (Max 4%) - Report provides an introduction and overview of the implementation
ï‚§ Project Description (Max 4%) - Report provides a project description that is detailed, accurate and well-written
 FIFO Testing (Max 6%) – FIFO is fully tested against the specified reference strings
ï‚§ OPT Testing (Max 6%) - OPT is fully tested against the specified reference strings
ï‚§ LRU Testing (Max 6%) - LRU is fully tested against the specified reference strings
ï‚§ LFU Testing (Max 6%) - LRU is fully tested against the specified reference strings