Design two different versions of a dispatcher, one based on round robin, the other 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 lower priority. Make the following assumptions: a) internal memory size = 120k; divided into 30 page frames. b) the size of each process 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 demand (i.e. the dispatcher uses local policy, creating a separate page table for every process). d) the lifetime of every process is a number in the range from 1 to 10. Driver program will run 100 times. On each of the first 10 runs, it randomly creates a process (randomly choosing the size and lifetime) and places it into a queue (if simple round robin is being used, it is the single queue; if 2 queues are being used, processes with a 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 the simple round robin is being used, the dispatcher picks the next process to run on every next clock tick. If 2 queues are being used, the sceduler runs processes with higher priority for 2 clock ticks and lower priority for one clock tick, alternating between queues. The driver simulates running of a process by generating a random reference to a page (you can choose FIFO or LRU to manage page replacements; you may incorporate a program from the first assignment). Program should print a) sizes, b) lifetimes, c) the moments of creation, d) the moments of completion of generated processes, e) reference strings for both processes, indicating page faults. Determine and submit the average turnaround time for each run.
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 c++ 6.0