Real-Time Systems, HT 2010
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.
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
- 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 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.
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.