/My-RTOS

Implemented my own RTOS from scratch on Tiva-C. It has a preemptive priority-based scheduler, so all high-priority threads meet their hard-time requirements (simulation); it supports thread blocking using Os_delay() and context switching using assembly instructions (every thread has a TCB and its own stack).

Primary LanguageC

My-RTOS

This screenshot shows the simulation of My RTOS using PicoScope. It shows the difference between a simple round-robin scheduler and my priority-based scheduler. As we see here for Task 1, My RTOS gives it the highest priority so that it is not interrupted until it finishes, unlike the round-robin scheduler.

Thanks to Quantum Leaps, LLC for the course

Priority simulation RTOS