EM-413
Real-Time Operating Systems
This course examines the structure and application of real-time operating systems (RTOS) in embedded systems. Students explore methods of achieving concurrency, including multithreading models, context switching, and synchronization mechanisms such as semaphores, mutexes, and spin locks. The course addresses scheduling techniques, thread states, and challenges such as priority inversion and resource starvation, along with industry-standard solutions. Learners investigate memory management strategies, including static and dynamic allocation, memory pooling, and shared memory. Emphasis is placed on preparing and deploying an RTOS by configuring hardware resources, exploring APIs, and integrating driver libraries. Through a major project, students design, implement, and evaluate a working embedded system employing a real-time operating system.
- Credit Hours
- 42
- Min. Grade
- 0%