Zur Webseite der Informatik

Abteilung Programmiersprachen und Übersetzerbau

April 12, 2017:

Nevertheless, due to many requests by students in need of a repeat exam,
a written exam for the course will be given during the summer term 2017.
As a
repeater, you have to register for this exam and take part (short of a medical excuse)
or else the
administration will record a failing grade.

According to preliminary information, the exam is likely to be in early
September. (Do not rely on this date information; check with official
sources.)

 

Exam results posted near room 1.217, C.Sc.Building;
review opportunity on 26 Oct, 1:00 p.m., 1.212

 

Real-Time Programming (3V + 1Ü)

Lectures

Prof. Dr. Erhard Plödereder

  • Lecture Monday, 11:30 - 13:00, V38.04
  • Lecture Friday, 11:30 - 13:00, V38.04

The first lecture will start on Monday April 11, 2016 (in the second week of the semester).

Today's lecture (May 23) had to be cancelled. The next lecture will be on this Friday (May 27).

  Day Date Time Room
Lecture 1 Monday April 11, 2016 11:30-13:00 38.04
Lecture 2 Friday April 15, 2016 11:30-13:00 38.04
Lecture 3 Monday April 18, 2016 11:30-13:00 38.04
Lecture 4 Friday April 22, 2016 11:30-13:00 38.04
Lecture 5 Monday April 25, 2016 11:30-13:00 38.04
Lecture 6 Friday April 29, 2016 11:30-13:00 38.04
Lecture 7 Monday May 02, 2016 11:30-13:00 38.04
Lecture 8 Friday May 06, 2016 11:30-13:00 38.04
Lecture 9 Monday May 09, 2016 11:30-13:00 38.04
Lecture 10 Monday May 23, 2016 11:30-13:00 38.04
Lecture 11 Friday May 27, 2016 11:30-13:00 38.04
Lecture 12 Monday May 30, 2016 11:30-13:00 38.04
Lecture 13 Monday June, 06, 2016 11:30-13:00 38.04
Lecture 14 Friday June 10, 2016 11:30-13:00 38.04
Lecture 15 Monday June 13, 2016 11:30-13:00 38.04
Lecture 16 Monday June 20, 2016 11:30-13:00 38.04
Lecture 17 Friday June 24, 2016 11:30-13:00 38.04
Lecture 18 Monday June 27, 2016 11:30-13:00 38.04
Lecture 19 Monday July 04, 2016 11:30-13:00 38.04
Lecture 20 Friday July 08, 2016 11:30-13.00 38.04
Lecture 21 Monday July 11, 2016 11:30-13.00 38.04

Lecture Notes

Lecture notes are available (via the internal network only)
All kinds of comments and improvements are welcome.

Assignments

Torsten Görg

  • Group 1: Tuesday, 15:45 - 17:15, 0.124
  • Group 2: Wednesday, 14:00 - 15:30, 0.363
  • Group 3: Friday, 14:00 - 15:30, 0.363

https://uebungsgruppen.informatik.uni-stuttgart.de/uebungsgruppen-bin/rtp/groups

In order to be able to access the page, please enter rtp as user name and the password you will receive in the lecture on April 15, 2016 as password.

Assignments are not graded and need not be submitted. They are discussed in the exercises accompanying the lectures. Even though sample solutions will be discussed in the exercises, students are encouraged to present their own versions during each exercise. Many exercises (as well as a number of lectures) will use the Ada programming language. We strongly recommend that participants familiarize themselves with Ada beforehand. It is essential that you work through at least the code samples of the "Ada in a Nutshell" tutorial linked below before attending the assignment classes.

Assignment When Material Partial Solution
1

Group 1: April 26, 2016
Group 2: April 27, 2016
Group 3: April 29, 2016

Sheet 1

heapsort.adb
quicksort.adb

stacks.ads
stacks.adb
stackmain.adb

 
2

Group 1: May 10, 2016
Group 2: May 11, 2016
Group 3: May 13, 2016

Sheet 2

Ariane5.pdf

 
3

Group 1: May 24, 2016
Group 2: May 25, 2016
Group 3: May 27, 2016

Sheet 3

cycexe.adb
task.ads
task.adb

 

4

Group 1: June 7, 2016
Group 2: June 8, 2016
Group 3: June 10, 2016

Sheet 4

 
5

Group 1: June 21, 2016
Group 2: June 22, 2016
Group 3: June 24, 2016

Sheet 5

for Exercise 5.1 a:
semaphore.ads
semaphore.adb
readers_writers.adb

for Exercise 5.3:
avalanche.adb

 
6

Group 1: July 5, 2016
Group 2: July 6, 2016
Group 3: July 8, 2016

Sheet 6

for Exercise 6.1 c:
sieve.adb

 
7

Group 1: July 12, 2016
Group 2: July 13, 2016
Group 3: July 15, 2016

Sheet 7  

 

Description

The course will focus on the specific requirements arising from programming real-time (or embedded) systems. These systems differ from the typical, more traditional information processing systems and hence place new requirements on the programming language as well as the programmer. The following topics will be discussed:

  • Introduction to real-time systems
  • Fault tolerance and error recovery
  • Scheduling
  • Concurrency
  • Communication and synchronization
  • Device communication and interrupts

Literature

  • Alan Burns and Andy Wellings: Real-Time Systems and Programming Languages, Addison Wesley, Fourth Edition (April 2009)
  • Alan Burns and Andy Wellings: Real-Time Systems and Programming Languages, Addison Wesley, Third Edition (March 2001)
  • Alan Burns and Andy Wellings: Real-Time Systems and Programming Languages, Addison-Wesley, Second Edition (April 1996)
  • Ariane 5 failure due to overflow error
  • Mars Pathfinder failure