Teaching

ECS62642: IoT Operating Systems
This course will explore the fundations of modern Real-time operating systems from the programmer's perspective. Topics include structure of real-time embedded systems, interrupts, concurrent task synchronization and communication, inter-process interface and multitasking, sharing resources, schedulability and reliability. The course will provide a particular emphasis on predictable scheduling algorithms and provide the basic methodologies for designing predictable computing systems useful in supporting time critical IoT systems. The course also discuss popular open-source FreRTOS to identify the benefits and weaknesses in deciding whether or not to adopt more traditional, less powerful, techniques for a project.