Skip to content

Programming With Embedded & Real-Time Operating Systems

About This Course

In this second course, you’ll deepen your understanding of embedded software design, development and debugging for real-time operating systems (RTOS). You'll explore multithreading, task scheduling and synchronization mechanisms, and gain hands-on experience in porting RTOS to embedded platforms. You'll learn about device firmware layers, memory management and hardware abstraction while applying these concepts to real-time applications in IoT and machine learning (ML). You’ll also learn to optimize embedded systems for performance, security and power efficiency in resource-constrained environments.

What You’ll Learn

  • Fundamentals of real-time systems, including task prioritization, scheduling and tuning time-sensitive software
  • How to design applications using an RTOS, including implementing inter-task communication, synchronization primitives (mutexes, semaphores, message queues), and system resource management
  • Best practices for firmware architecture, including how to develop modular and reusable firmware using APIs, board support packages and middleware components
  • How to connect embedded systems to IoT cloud platforms and deploy ML inference at the edge
  • How to port and debug RTOS, including how to navigate kernel internals, configure memory management, and adapt RTOS for different embedded architectures

Get Hands-On Experience

  • Develop multithreaded applications, manage task execution and debug system performance using RTOS tools
  • Use logic analyzers and debugging tools to diagnose issues in SPI, I2C and UART communication
  • Utilize GitHub, Visual Studio Code, OpenOCD and Arm GNU Toolchain for coding, version control, and debugging

Course Sessions

Online Synchronous

January 2027
Dates Jan 11 - Mar 29
Location Online
Instructor Serah Peterson
Cost $1,732
Scheduled Meetings
Date
Day
Time
Location
Jan 11, 2027
Mon
6 – 9 p.m.
Online
Jan 25, 2027
Mon
6 – 9 p.m.
Online
Feb 1, 2027
Mon
6 – 9 p.m.
Online
Feb 8, 2027
Mon
6 – 9 p.m.
Online
Feb 22, 2027
Mon
6 – 9 p.m.
Online
Mar 1, 2027
Mon
6 – 9 p.m.
Online
Mar 8, 2027
Mon
6 – 9 p.m.
Online
Mar 15, 2027
Mon
6 – 9 p.m.
Online
Mar 22, 2027
Mon
6 – 9 p.m.
Online
Mar 29, 2027
Mon
6 – 9 p.m.
Online

All times are Pacific Time.

Noncredit Course

You'll earn 3.0 continuing education units (CEUs) for successfully completing this course.