Real-Time Systems, HT 2010
Lecturer: Wang Yi
Assistants: Martin Stigge, Xiaoyue Pan
Course Start: Mon, 30.08.2010 at 8:15 in room Pol_1111
Exam: Mon, 25.10.2010
Version 1DT063 (5hp): Follow all lectures, take the exam.
Version 1DT004 (10hp): Follow all lectures, do all labs, take the exam.
The 5hp course version focuses on the theoretical aspects during the lectures. The 10hp course version additionally provides practical experience in 4 different labs.
Course Contents
The aim of the course is to introduce a special class of time-sensitive computer systems known as real-time systems whose behavior must satisfy timing-constraints (i.e. deadlines). They are often embedded in safety-critical applications such as modern vehicles, process control, and traffic control etc, and therefore they are also known as embedded systems. In particular, the course covers these topics:
- Real-Time Operating Systems
- Real Time Programming Languages
- Scheduling Theory and Resource Management
- Worst-Case Execution Time and Response Time Analysis
- Real-Time Communication and Distributed Systems
- Design and Validation (Modeling, Verification and Testing)
- Fault Tolerance and Recovery
Course Material
Literature
- Real-Time Systems and Programming Languages, Alan Burns and Andy Wellings, Addison Wesley, 2001.
- Hard Real Time Computing Systems - Predictable Scheduling Algorithms and Applications, Giorgio Buttazzo, Springer, 2005.
- Real Time Systems, Jane W.S. Liu, Prentice Hall, 2000.
- Notes (pdf) by Hansson and Tindell
Slides
The slides used in the lectures will be made available during the course and linked on the Schedule page.
Recommended Reading
- In the text book by Giorgio C Buttazzo:
- Chap 1 - 5, 7.1-7.4
- Chap 9.1-9.6
- Chap 11
- In the text book by Jane W. S. Liu:
- Chap 1: read through
- Chap 2: read all sections
- Chap 3: read 3.1-3.4 and read through 3.5-3.9
- Chap 4: read all sections except 4.8
- Chap 5: read all sections
- Chap 6: read all sections
- Chap 7: read through all sections except 7.4, 7.8 and 7.9
- Chap 8: read all sections except 8.9 and 8.10
- Chap 9: read all sections except 9.7
- Chap 12: read 12.1-12.3
- In the text book by Burns and Wellings:
- Chap 1, 5, 6, 7, 12, 13
Lab assignments
The course offers four lab assignments which are mandatory in the 10hp course variant. They are described in detail on their corresponding pages:
- Real-Time Programming using Ada
- Programming in RTOS using OSEK and LEGO Mindstorms NXT
- Response Time Analysis using FpsCalc
- Modeling and Verification using UPPAAL
For each lab assignment, you need to hand in a report. You need to get a "passed" on all reports. Presence during lab hours is optional but highly recommended.
Deadlines: Each lab has a deadline. Please try to make the deadline with your reports. Hand-ins after the deadline won't get any bonus points and will be checked with possibly much lower priority. There is a second, even deadlier deadline: Latest on 1.12., even all late hand-ins must have reached us. Hand-ins after that will be ignored. You will have to wait until the next course in autumn next year. Please take this seriously.
Bonus points: Depending on the quality of your report, you can get up to 5 bonus points for each lab, to be added to your exam result (which otherwise has max. 100 points). This only holds for your first hand-in for each lab that is on time before the first deadline. I.e., you won't get any bonus for late hand-ins (after the first deadline) nor any additional bonus for re-hand-ins (because of "komplettering"). Note that you can thus achieve up to 20 bonus points. (No bonus will be offered for the 5hp course variant.)
The results of your hand-ins will be posted on the Lab Results page.
Exam
Your performance in the course is examined by a written exam in the end of the course. You find more information on the dedicated Exam page.
Note: In order to pass the course, you need to pass the exam and all lab assignments.
Feedback