The course introduces the fundamentals of real-time scheduling and resource management protocols that are essential in designing and building commercial products and covers the use of RTOS to effectively design tasks and device drivers to meet real-time requirements. You'll learn about important topics in real-time systems, such as priority-based real time scheduling, interrupt handling, using timers, and detecting and preventing deadlocks. The course will also discuss multi-threading, cooperative versus preemptive multi-tasking and inter-process communications, focusing on programming in FreeRTOS and understanding internals such as schedulers and idle tasks.
You'll design and code a real-time embedded systems project in C language on an open source FreeRTOS emulator. Upon completion of the course, you'll understand real-time embedded systems programming and the interactions of hardware, software, and the OS in such systems.
At the conclusion of the course, you should be able to
- Explain the fundamental concepts of real-time embedded systems including various scheduling and resource management protocols
- Explain the software architecture of a real time embedded application, the hardware/software interfaces, the RTOS foundation, and the multitasking based design needed to meet real time requirements of the system
- Use the hardware interfaces that embedded applications typically need to work with
- Explain the RTOS kernel, scheduling mechanisms, task management, interrupt management as well as IPC mechanisms
- Design and program an embedded system application using a RTOS simulator
- Compare and contrast existing commercial RTOS for performance and applicability
Skills Needed: A strong background in C programming and an understanding of embedded system architecture.
- Save Your Seat
Help us confirm course scheduling. Enroll at least seven days before your course starts.
- Accessing Canvas
Learn more about gaining access to your course on Canvas in our FAQ section.
Accessibility and Accommodation
For accessibility questions or to request an accommodation, please visit Access for Students with Disabilities or email the Extension registrar.
Finance Your Education
Here are ways to pay for your education.
Estimated Cost: TBD
Course Availability Notification
Please use this form to be notified when this course is open for enrollment.
Speak to a student services representative.
Call (408) 861-3860