RealTime Scheduling (182.086)
[TISSSeite] [TISS Syllabus] [Background info] [Enrolling] [Grading] [Homework] [SCHEDULE] [Other resources]
News
Updated slides (minor clarifications/error correction on PIP) available below.
Second homework assignment available below.
Aim
Realtime scheduling, i.e., determining the sequence of execution of tasks with deadlines, is a central problem in critical embedded systems. Their design must ensure that the timing constraints imposed by the surrounding physical system can be guaranteed. The (inherentily complex) worstcase response time and feasibility analysis of tasks under scheduling algorithms like earliest deadline first is hence of great importance. This graduatelevel optional course provides an introduction into theory and mathematical analysis of scheduling algorithms for realtime systems. It allows its attendees to: (1) become familiar with task models, scheduling algorithms, feasibility and optimality results and associated proof techniques, (2) be able to apply existing results in new situations, (3) be able to devise and analyze new scheduling algorithms for special purposes.
The course is organized in the "angloamerican style", which is based on continuous engagement during the whole semester: Quizzes and homework assignments ensure (1) that the topics taught in the lecture are efficiently acquired, and (2) that the individual analytic problemsolving skills are trained.
ECTSBreakdown (3 ECTS = 75 hours):
24 Lecture time
2 23 Quizzes
4 2 Homework presentations
9 Preparation time for 23 Quizzes
36 Preparation time for 2 homework assignments (23 exercises each): Single version (in LaTeX)
Subject
Earliest Deadline First (EDF) scheduling: Optimality and complexity analysis, feasibility analysis, response time analysis, competitive analysis under overloads, EDF scheduling with shared resources and precedence constraints.
Lecturer
Prof. Ulrich Schmid
Homepage
https://ti.tuwien.ac.at/ecs/teaching/courses/rt_sched
This is a graduatelevel theoretical course on realtime scheduling, primarily based on the textbook John A. Stankovic, Marco Spuri, Krithi Ramamritham, Giorgio C. Buttazzo: Deadline Scheduling for RealTime Systems, Kluwer Academic Publishers (now Springer Verlag), 1998, ISBN 0792382692. [A number of copies is available in the in the Lehrbuchsammlung of the TU library.] The emphasis is on the mathematical analysis of realtime scheduling algorithms. A nice "practical" overview of the topics dealt with in this course can be found in C. J. Fidge. Realtime scheduling theory. SVRC Services (UniQuest Pty Ltd) Consultancy Report 00362, April 2002. Prepared for the Air Operations Division, Defence Science and Technology Organisation. A general account on realtime computing is John A. Stankovic: Misconceptions About RealTime Computing. IEEE Computer 21(10): 1019 (1988).
Recommended prerequisites are realtime systems basics (level of 182.713 RealTime Systems), basic discrete mathematics (level of 104.271 Discrete Mathematics) and elementary complexity theory (level of 185.291 Formale Methods in Computer Science).
The syllabus can be found here, and here are the slides.
Aims & scope and requirements are quite different from undergraduate courses. Master programs like Technische Informatik are devoted to scientific education, and courses like RTS contribute to the development the required analytical skills and knowledge. In contrast to undergraduate courses where knowledge acquisition is more or less "pushbased", master courses like RTS are "pullbased": You should view this course an an opportunity to develop a coherent and indepth understanding of realtime scheduling issues  it is up to you to make the best use of it!
You are encouraged to do advance reading of the textbook [and any additional material listed in the schedule below]. In fact, it is difficult to really benefit from the lectures without any advance knowledge.
Since your grade will also depend upon participation in discussions, presence in class is expected.
Collaboration: Discussion of concepts with others is encouraged, but any homework must be done on your own and written up in your own words, unless otherwise instructed. If you use any source other than the textbook or my slides, reference it/him/her, whether it be a person, a book, a solution set, a web page or whatever.
[To understand the rationale of the above, it is very instructive to see how rigidly top US universities handle the issue of academic integrity, plagiarism, etc. Consult the Texas A&M University Code of Honors for an example.]
There is no need for an enrollment, but all participants should subscribe to the TISS LVAForum and News, as certain general announcements will be posted there.
Grading will be based on the following components:
 Homework assignments (45%): There will be 2 paper exercises, to be worked out in LaTeX and presented in class; the details can be found below.
 Quizzes (45%): There will be 2 short quizzes in class (1520 min.), consisting of a few simple questions (for example, short answer, truefalse, or multiple choice) concerning the material covered in the lectures since the last quiz. A sample quiz can be found here. There will be no makeup quizzes, but you can compensate one missed quiz upon taking the final exam.
 Final exam (10%): There is a final exam [optional], with questions similar to the ones in the standard quizzes, but covering all the material taught in the course. Depending on the number of participants, it can be either written (3040 min.) or oral.
You will find your grades here (and here is the Excelsheet). Participation in discussions in class etc. is also taken into account (at most +/ 10% of total points) when assigning the final grade, which will be assigned according to the following scale:
1 for 90% or above of the total points,
2 for 80 to 89%,
3 for 70 to 79%,
4 for 60 to 69%,
5 for less than 60%.
All homework assignments are to be worked out in LaTeX using our LaTeX resources (hw.tex, firstpage.tex). Here will be the LaTeX source files of the assignments (ex1.tex, ex2.tex)  just compile hw.tex or hwnotitle.tex (with the macro \homeworknumber set accordingly).
For every homework assignment, the procedure is as follows:
 Download the current assignment as soon as it is announced. There will be a clarification meeting [attendance not mandatory] in class soon after the announcement.
 Work out all the exercises in writing (either in English or in German). Deliver your solutions (.pdf) by the scheduled time), both:
 A paper copy, which must be duly signed and given to me in class by the deadline.
 An electronic version (.pdf), which must be sent to me by email by the deadline.
 Present your solutions, on my request, on blackboard in class at the scheduled presentation time [please make sure that you bring your own copy of your solutions along, since I will need "my" copy for taking notes!]. This presentation shall primarily give you an (additional) opportunity to find out whether your solution is OK. Therefore, the grade assigned for presentations will not be lowered when your solution contains errors. [Incorrect solutions will of course lower the grade assigned for the homework itself, however.]
The tentative schedule is shown in the table below. All lectures are currently scheduled for Tuesday 14:1515:45 in the Library of the Embedded Computing Systems Group (E182/2), Treitlstraße 3, second floor. Still, the lectures could also be moved to another time or even day.
Day  Date  :  Time  :  Topic  Reading material 

Tue  05.03.2019  14:15  Lecture Introduction  Intro slides  
Tue  12.03.2019  14:15  Lecture Basic Model, Fundamentals of EDF scheduling  Ch. 2, Ch. 3  
Tue  19.03.2019  14:15  Lecture Fundamentals of EDF scheduling (cont.)  Ch. 3  
Tue  16.03.2019  14:15  Lecture Fundamentals of EDF scheduling (cont.)  Ch. 3  
Tue  02.04.2019  14:15  Lecture Fundamentals of EDF scheduling (cont.)  Ch. 3  
23:59  Announce Homework 1  
Tue  09.04.2019  14:15  dropped  
Tue  30.04.2019  14:15  Lecture Fundamentals of EDF scheduling (cont.)  Ch. 3  
15:45  Lecture Response time analysis of EDF  Ch. 4  
Sun  05.05.2019  23:59  Homework 1 due  
Tue  07.05.2019  14:15  Quiz1: Ch.2  Ch.4  Ch. 5.1  
Presentation Homework 1  
23:59  Announce Homework 2  
Tue  14.05.2019  14:15  Lecture EDF under overloads  Ch. 5.1  
Tue  21.05.2019  14:15  Lecture EDF under overloads (cont.)  Ch. 5.1  
Tue  28.05.2019  14:15  Lecture EDF scheduling with shared resources  Ch. 6  
Tue  04.06.2019  14:15  Lecture EDF scheduling with shared resources (cont.)  Ch. 6  
Tue  11.06.2019  No lecture  
Tue  18.06.2019  14:15  Lecture EDF scheduling with shared resources (cont.)  Ch. 6  
Sun  23.06.2019  23:59  Homework 2 due  
Tue  25.06.2019  14:15  Presentation Homework 2  
Quiz 2: Ch.4  Ch.6 

to be ann.  Final exam [optional] 
Recommended additional books/papers:
 Giorgio Buttazzo, HARD REALTIME COMPUTING SYSTEMS: Predictable Scheduling Algorithms and Applications, 2nd ed., Springer, 2005.
 Joseph Y.T. Leung. Handbook of Scheduling: Algorithms, models, and performance analysis. Chapman & Hall/CRC, 2004
Some selected places to look for realtime systems papers:
 Journals:
 RealTime Systems
 Journal of Scheduling
 Conference proceedings:
 IEEE RealTime Systems Symposium (RTSS)
 IEEE RealTime and Embedded Technology and Applications Symposium (RTAS)
 IEEE Int. Symposium on Objectoriented Realtime distributed Computing (ISORC)
 RealTime and Embedded Computing Systems and Applications (RTCSA)
 Euromicro Conference on RealTime Systems
 International Conference on Principles of Distributed Systems (OPODIS)

The worldwideweb: Most papers are available online, freely accessible for academic institutions like TU Vienna. Here are some very useful links:
Miscellaneous: