Real-Time Scheduling (182.086)

[TISS-Seite] [TISS Syllabus] [Background info] [Enrolling] [Grading] [Homework] [SCHEDULE] [Other resources]


Updated slides (minor clarifications/error correction on PIP) available below.

Second homework assignment available below.


Real-time 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) worst-case response time and feasibility analysis of tasks under scheduling algorithms like earliest deadline first is hence of great importance. This graduate-level optional course provides an introduction into theory and mathematical analysis of scheduling algorithms for real-time 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 "anglo-american 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 problem-solving skills are trained.

ECTS-Breakdown (3 ECTS = 75 hours):

  24        Lecture time
   2        2-3 Quizzes
   4        2 Homework presentations
   9        Preparation time for 2-3 Quizzes
 36        Preparation time for 2 homework assignments  (2-3 exercises each): Single version (in LaTeX)


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.


Prof. Ulrich Schmid




This is a graduate-level theoretical course on real-time scheduling, primarily based on the textbook John A. Stankovic, Marco Spuri, Krithi Ramamritham, Giorgio C. Buttazzo: Deadline Scheduling for Real-Time Systems, Kluwer Academic Publishers (now Springer Verlag), 1998, ISBN 0-7923-8269-2. [A number of copies is available in the in the Lehrbuchsammlung of the TU library.] The emphasis is on the mathematical analysis of real-time scheduling algorithms. A nice "practical" overview of the topics dealt with in this course can be found in C. J. Fidge. Real-time scheduling theory. SVRC Services (UniQuest Pty Ltd) Consultancy Report 0036-2, April 2002. Prepared for the Air Operations Division, Defence Science and Technology Organisation. A general account on real-time computing is John A. Stankovic: Misconceptions About Real-Time Computing. IEEE Computer 21(10): 10-19 (1988).

Recommended prerequisites are real-time systems basics (level of 182.713 Real-Time 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 "push-based", master courses like RTS are "pull-based": You should view this course an an opportunity to develop a coherent and in-depth understanding of real-time 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 LVA-Forum 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 (15-20 min.), consisting of a few simple questions (for example, short answer, true-false, 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 make-up 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 (30-40 min.) or oral.

You will find your grades here (and here is the Excel-sheet). 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.texfirstpage.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:

  1. 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.
  2. 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:15-15: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 REAL-TIME 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 real-time systems papers:

  • Journals:
    • Real-Time Systems
    • Journal of Scheduling
  • Conference proceedings:
    • IEEE Real-Time Systems Symposium (RTSS)
    • IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS)
    • IEEE Int. Symposium on Object-oriented Real-time distributed Computing (ISORC)
    • Real-Time and Embedded Computing Systems and Applications (RTCSA)
    • Euromicro Conference on Real-Time Systems
    • International Conference on Principles of Distributed Systems (OPODIS)
  • The world-wide-web: Most papers are available on-line, freely accessible for academic institutions like TU Vienna. Here are some very useful links: