TDDB12 Concurrent Programming, ECTS-points
/PROCESSPROGRAMMERING/

Advancement level:
B

Aim:
The first part of the course presents the concept of parallel processes, and gives examples of how it is supported by programming languages and computer architectures. The second part of the course presents the construction and function of modern operating systems.

Prerequisites:
TDDB57 Datastructures and algorithms, or TDDB20 Programming and Datastructures

Supplementary courses:
TDDB47 Real Time Systems, TDTS51 Computer Architecture, TDDA67 Distributed Systems

Course organization:
A series of lectures presents the theory. Laboratory assigments complements the theory.

Course content:
Parallel programming: processes, semphores, monitors, message passing, deadlock. Operating systems: implementation of processes, file systems, process scheduling, memory management, input/output, security and protection. Case study: Unix.

Course literature:
Silberschatz, Galvin, "Operating Systems Concepts, 4th ed.", Addison-Wesley, 1994. Articles and laboratory material

LAB 1Labratory work
TEN 1Written examination
Course language is Swedish.