嵌入式即時系統
Real-time and embedded systems
| 節 | 週二 |
|---|---|
5 13:20–14:10 | 嵌入式即時系統 ED102 2 節連堂 |
6 14:20–15:10 |
* 根據陽明交大上課時間表所列
2025 course schedule https://docs.google.com/spreadsheets/d/1oAnSXssBd3stOVI4iWsPvJfVRtOo_zbnSKoXYmZRhwI/edit?usp=drive_link **歡迎大三大四學生修課 (juniors and seniors are welcome) Real-time and embedded systems are mission-oriented, and their software and hardware are often designed with close integration. In addition to functionality correctness, the system must also meet timing requirements, i.e., to respond before the deadline expires. Examples of real-time and embedded systems include Wireless Sensor Network (WSN), Internet-of-Things (IoT) devices, automobile systems, robots, smart healthcare devices, and smartphones (iOS and Android). Instead of application design, this course is focused on deep analysis of the Real-Time and Embedded Operating Systems (RTOS) kernels and why they are designed this way. Our lecturing will involve two parts: 1) line-by-line, instruction-by-instruction source code analysis of popular real-time kernels and 2) theoretical foundation of the algorithms used in real-time operating systems. In other words, this course covers both the theory and practice of the system-level issues of real-time embedded systems. Different from commodity OS kernels (Linux and Windows), RTOS kernels are compact and small. In other words, you will have the opportunity to trace the source code of and enhance the functionality of an RTOS kernel. Specifically, this course will cover the following topics *Embedded processor architecture CPU register design, memory addressing mode, memory layout, timer hardware, and interrupt handling mechanism *RTOS kernel design CPU scheduling algorithms, memory allocation algorithms, priority management, resource synchronization protocol, deadline handling, process management, and kernel data structures. This course will cover two RTOSes, i.e., uC/OS-2 and FreeRTOS *Real-time scheduling theory Fixed-priority scheduling, deadline-driven scheduling, schedulability analysis, periodic/aperiodic task scheduling, bandwidth servers, resource synchronization protocols, priority inversion management, multiprocessor scheduling algorithms, and case studies.
Introduction to Operating Systems (undergraduate) Computer Organization (undergraduate) You are supposed to be skillful with C
Midterm*1 Final*1 Programming assignments (uCOS-2 and FreeRTOS), including the following: Assignment 1: periodic task programming Assignment 2: Earliest-Deadline First implementation Assignment 3: Ceiling-Priority Protocol implementation Assignment 4: FreeRTOS (periodic tasks with EDF) Assignment 5: Checkpoint for FreeRTOS
| 週次 | 主題 |
|---|---|
| 第 1 週 | Course introduction. Independent task scheduling: rate-monotonic scheduling, response-time analysis, Liu and Layland utilization bound, Earliest-Deadline First (EDF) scheduling |
| 第 2 週 | Independent task scheduling: rate-monotonic scheduling, response-time analysis, Liu and Layland utilization bound, Earliest-Deadline First (EDF) scheduling |
| 第 3 週 | ucOC-2: getting started, programming exampleucOC-2: real-time systems concept |
| 第 4 週 | ucOS-2: kernel structures, task management |
| 第 5 週 | ucOS-2: x86 architecure, x86 port, Lab 1 orientation (periodic task) |
| 第 6 週 | Lab 1: periodic task |
| 第 7 週 | Resource synchronization protocol: non-preemptible critical section, priority-inheritance protocol, deadlocks |
| 第 8 週 | Resource synchronization protocol: Highest-Locker protocol, Priority Ceiling Protocol (PCP), Stack-Resource Protocol (SRP)Lab 2 (EDF implementation) orientation |
| 第 9 週 | Lab 2: EDF implementation |
| 第 10 週 | ucOS-2: semaphores and mutexes, priority inheritance protocol implementationLab 3 (highest-locker protocol) orientation |
| 第 11 週 | Midterm |
| 第 12 週 | Lab 3: Highest-Locker Protocol |
| 第 13 週 | FreeRTOS case study: MSP430 processor structure, kernel structures, scheduler design, context switch, timer interrupt handling, process scheduling algorithm. |
| 第 14 週 | FreeRTOS: checkpointing with FreeRTOS. Memory organization and checkpoint design, energy harvesting, intermittent computation |
| 第 15 週 | FreeRTOS project (EDF) FreeRTOS project (checkpoint) |
| 第 16 週 | Final |
--- Textbooks are optional. --- Real-Time Systems, Jane W.S. Liu MicroC/OS-II: The Real-Time Kernel, Jean Labrosse FreeRTOS: Online documentation and source code
- 地點
- EC705
- 時間
- Please send email to make an appointment.
- 聯絡方式
- lpchang@cs.nycu.edu.tw