This program is a scheduler simulation for Real Time Operating System (RTOS). It takes input as periodic, aperiodic and sporadic tasks and simulate using C Programming language.
.
├── periodic_scheduler.c # Periodic Scheduler
├── periodic_scheduler.h
├── sched_dynamicarray.c # Dynamic Array Implementation
├── sched_dynamicarray.h
├── sched_queue.c # Custom Queue to handle QNode, which consist of task_id and deadline
├── sched_queue.h
├── scheduler_driver.c # Main driver program which executes schedulers
├── scheduler_driver.h
├── sched_util.c # Contains utility functions
├── sched_util.h
├── util/stringencoders/modp_numtoa.c # Used library for number to string conversion
├── input_periodic.txt # Sample Input file
└── README.md
Compilation can be done by running make command
make
This will generate scheduler.out
file
To read a periodic Tasks execute the following command
./scheduler.out input_periodic.txt
This will generate output file scheduler_output.txt
To read a aperiodic Tasks execute the following command
./scheduler.out input_aperiodic.txt
This will generate output file scheduler_output.txt
Following Tasks has been acoomplished
- Periodic Scheduler (Done, without tasksplit)
- Aperiodic Scheduler (To Implement)
- Sporadic Scheduler (To Implement)
Contributers in this project
Ashish Patel |
This project follows the all-contributors specification. Contributions of any kind are welcome!
MIT