**Need a Dispatcher Program implemented in C++.**
**Program should include two different versions of a dispatcher**:
1)one based on a simple round robin
2)another based on two round robin queues with different priorities, where processes from the queue with the higher priority get twice as much time as processes from the queue with the lower priority.
**Make the following assumptions**:
a)the size of internal memory is 120K, and it is divided into 30 page frames.
b)the size of every process in the system is a number in the range from 4K to 36K.
c)when a process is generated, it is allocated 3 free page frames that can be filled on a demand basis(that is, the dispatcher uses local policy, creating a separate page table from every process).
d)the lifetime of every process is a number in the range from 1 to 10.
**How the program should work**:
The driver program should run 100 times. On each of the first 10 runs, it randomly creates a process (randomly choosing the size and the lifetime) and places it into a queue (if simple round robin is being used,it is a single queue; if two queues are being used, processes with the lifetime up to 5 get higher priority, and processes with greater lifetime get lower priority). On the next runs of the loop, it creates a new process whenever some process has been completed. Every run of the loop is considered as one clock tick. If two queues are being used, the scheduler runs processes with higher priority for two clock ticks and processes with lower priority for one clock tick, alternating between the queues. The driver simulates running of a process by generating a random reference to a page(must use LRU with linked list to manage page replacements.
**Program should Output the following**:
a)sizes
b)lifetimes
c)moments of creation
d)moments of completion of generated processes
e)reference strings for both processes, indicating page faults
f)average turnaround time for each run
**Code should be well-documented **
## Deliverables
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).
## Platform
Microsoft Visual C++ 6.0