Real-Time Systems, HT 2011
Version 1DT063 (5hp): Follow the basic topics, do labs 1 and 3, take the exam.
Version 1DT004 (10hp): Follow all topics, do all labs, take the exam.
Course Start: Mon, 29.08.2011 at 15:15 in room Pol_1211
Exam: Wed, 19.10.2011
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 5hp course variant 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
The 10hp course variant additionally covers the following advanced topics:
- Multiprocessor systems
- Design and Validation (Modeling, Verification and Testing)
- Fault Tolerance and Recovery
- 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
The slides used in the lectures will be made available during the course and linked on the Schedule page.
- 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
The course offers four lab assignments. 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 and you should hand in your report before the deadline. Hand-ins after the deadline will still be graded, but won't get any bonus points (see below) and are checked with much lower priority. However, after 1.12., we do not grade any hand-ins anymore. 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. I.e., you won't get any bonus for late hand-ins (after the deadline) nor any additional bonus for re-hand-ins (because of "komplettering").
The results of your hand-ins will be posted on the Lab Results page.
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.