IoT Operating Systems /


  • New Lecture is up: So You Wanna Be an Embedded Engineer? [slides] [handout]
  • New Lecture is up: Scheduling of Dependent Tasks [slides] [handout]
  • New Lecture is up: Scheduling of Independent TasksD [slides] [handout]
  • New Lecture is up: Task scheduling taxonomy [slides] [handout]
  • New Assignment released: [Lab #3 - Alarm clock]
  • A few reminders

    • Lab 2 is posted and is due on Sunday Oct. 10 by midnight
    • There will be a quiz on Wednesday. The quiz will open at 6pm and due at 11:59pm
    • There will be a quiz on Friday. The quiz will open at 2pm and due at 6pm
    • No class on Friday. I have an important meeting to attend.
    • The course is almost over. However, you still have two projects to do. Details will be communicated to you later.

    You can access the quiz on the UR e-learning platform

  • New Assignment released: [Lab #2 - Introduction to FreeRTOS]

Course Description

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.