Real-Time Systems, HT 2009
Course Start: Tue, 27.10.2009 at 8:15 in room Pol_1211
Exam: Wed, 9.12.2009
Version 1TT842 (4.5hp): Follow all lectures, do two labs, take the exam.
Version 1DT008 (7.5hp): Follow all lectures, do all labs, take the exam.
For 1TT842, it is recommended to take labs 1 and 3.
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. They are described in detail on their corresponding pages:
- Real-Time Programming using Ada
- Programming in RTOS using LEGO Mindstorms
- 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.
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.
Bonus points: In addition, 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"). Note that you can thus achieve up to 20 bonus points. (The students taking the 4.5hp variant of the course take only 2 labs, so their bonus points will be doubled in order to compensate for this disadvantage.)
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.