What is Dispatcher...
Dispatcher is a short time scheduler simulator for use in studying operating systems principles, developed at Università degli studi di Napoli "Federico II".
Features
Dispatcher executes a set of processes, using one of the available schedulers and collecting times foreach process.
Processes
- Processes are randomly created as sets of interrupts and SVCs
- Two kind of processes can be added to simulator: CPU-BOUND and I/O-BOUND
- You may choose processes's length, to verify scheduler's equity (fcfs scheduler penalizes short processes).
- short (10-50 istructions)
- normal (50-150 istrutions)
- long (150-200 istructions)
- If you choose the priority scheduler, you can add to the simulation processes that suffer starvartion
- You can test memory protection, adding process that tryes to violate memory. Those processes will be killed when memory violation is detected.
- Processes can forks.
- Forked processes can execute other program.
Schedulers available
- First come first served (fcfs) scheduler. Convoy effect can be tested.
- Round Robin scheduler.
- Virtual Round Robin scheduler.
- Priority scheduler.
Two policy are available to manage lesser priority queue
- first come first served policy
- processes are moved to higher priority queue
startvation cat be tested.
Collected times
For each process those times are collected:
- Arrival time
- Start time
- Finish time
- Turnaround time
- Service time
- Normalized turnaround
Thanks
I wish to thanks prof. Domenico Cotroneo for his suggestions.
This software is released under the term of GNU GPL, see file COPYING for more informations.
|