Need a program implemented in C++ that simulates two versions of a paging memory management system, one FIFO-based and the other LRU-based(Least Recently Used).
The **FIFO** version must use a **linked list** to represent a queue.
The **LRU** version must use a **stack** and a **doubly linked list** .
1)the size of the internal memory is 40K, and is divided into 10 page frames.
2)the system loads and runs one process; the length of the process is 80K and is to be divided into 20 pages.
Program will be a loop running 40 times. On each run of the loop, it randomly generates a reference to a page in the process(a number from 0 - 19) and makes sure that the referenced page gets a frame. The program will count and print out the total number of page faults. When a page fault occurs, it will print out the number of the page that caused the fault and the number of the page frame it gets.
Program should run first with FIFO-version and save the reference string that it generates. Then run the LRU-version
and compare the numbers of page faults occurred in both cases
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request.
3) Exclusive and complete copyrights to all work purchased. (No GPL, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site).
Microsoft Visual C++ 6.0