Skip to content
All courses
EMB 215
Term 4
4 credits

Real-Time Operating Systems

This course provides an in-depth exploration of Real-Time Operating Systems (RTOS) and their critical role in embedded systems engineering. Students will learn core RTOS concepts, including task scheduling, inter-process communication, and synchronization mechanisms, with a strong emphasis on practical application. Through hands-on labs, students will gain experience implementing and debugging RTOS-based solutions for real-world embedded challenges.

Prerequisites

Course outline

Lectures, virtual labs, and graded assignments — completed in your browser.

01Introduction to Embedded Systems and RTOS Conceptslecture
02RTOS Architecture and Kernel Serviceslecture
03Task Management and Scheduling Algorithmslecture
04Lab 1: Getting Started with an RTOS (Task Creation and Switching)lab
05Inter-Task Communication: Queues and Message Passinglecture
06Synchronization Primitives: Semaphores and Mutexeslecture
07Lab 2: Implementing IPC and Synchronizationlab
08Assignment 1: Designing a Multi-Tasking Systemassignment
09Timers and Delays in RTOSlecture
10Interrupts and Exception Handling in RTOSlecture
11Memory Management and Resource Sharinglecture
12Lab 3: RTOS Integration with Peripherals and Interruptslab
13Comprehensive Midterm Reviewlecture
14Final Reviewlecture

Syllabus

### Course Description
This course provides an in-depth exploration of Real-Time Operating Systems (RTOS) and their critical role in embedded systems engineering. Students will learn core RTOS concepts, including task scheduling, inter-process communication, and synchronization mechanisms, with a strong emphasis on practical application. Through hands-on labs, students will gain experience implementing and debugging RTOS-based solutions for real-world embedded challenges.

### Learning Outcomes
Upon successful completion of this course, students will be able to:
*   Understand the core concepts of Real-Time Operating Systems (RTOS) and their distinction from general-purpose operating systems.
*   Analyze and apply various RTOS scheduling algorithms, inter-process communication (IPC) mechanisms, and synchronization primitives.
*   Implement and debug multi-tasking embedded applications using an RTOS on a target microcontroller platform.
*   Evaluate RTOS features and select an appropriate RTOS for specific embedded system requirements.
*   Develop solutions for common RTOS challenges, including resource management, deadlocks, and priority inversions.

### Assessment Breakdown
*   Labs/Practical Assignments: 40%
*   Quizzes/Homework: 20%
*   Midterm Exam: 20%
*   Final Project: 20%

### Policies
*   **Attendance:** Regular attendance is expected. Students are responsible for all material covered regardless of attendance.
*   **Late Work:** Late assignments may incur a penalty of 10% per day unless prior arrangements are made with the instructor due to extenuating circumstances.
*   **Academic Integrity:** All work submitted must be original. Plagiarism or cheating will result in a failing grade for the assignment and may lead to further disciplinary action.
*   **Disability Services:** Students with disabilities requiring accommodations should contact the college's Disability Services office and the instructor at the beginning of the semester.