TDDA47 Real Time and Concurrent Programming, 4 ECTS-points
/Realtids- och processprogrammering/

Advancement level:
B

Aim:
To understand the basic notion of process and learn concurrent programming in a high level language. To give understanding for problem issues, methods and structuring mechanisms for realtime and concurrent- programming. In particular the course focuses on systems that interact with an external environment of sensors and actuators.

Prerequisites:
For I, Ii: TDDB32 Object-Oriented Programming: Data Structures and Alg. For M: TDDB21 Programming and Data Structures For Y: TDDB20 Programming and Data Structures or corresponding good knowledge in programming using an imperative programming language, (e.g., Ada, C or Java).

Supplementary courses:
Embedded system simulation and verification

Course organization:
At the lectures the theory part will be presented. Exercises will train the student on the presented material and be preparatory for the laborative work.

Course content:
Part I: Concurrent program execution in contrast to sequential. Strategies for communication and mechanisms for synchronization in process- interaction. Part II: Executives and operating systems for real time systems. Resource management. Introduction to real-time scheduling. Design of real-time systems.

Course literature:
Burns & Wellings: Real Time Systems and their programming languages, Addison Wesley. Laboratory lesson material, published by the Department of Computer and Information Science. Handouts during lessons and lectures.

TEN1A written examination, 2 p.
LAB1programming exercises, 1 p.
TDDA47 cannot be combined with TDDB12, TDDB47 or TDDB63 in the final degree.

Course language is english.