Hide menu

TDDE68 Concurrent programming and Operating Systems

Lectures and Lessons
Slides and Reading directions


This page contains the lecture series and links to the slides to be used in the lectures and lab lessons.

Lectures and lessons

Note: The reading guidelines refer to the 10th edition. If you have an older copy of he book you can find the table of contents from the newer editions here, and through that find the corresponding sections in your book. Also, for the 9th edition there is a dedicated page with reading guidelines from 2020.

The table below contains the preliminary course schedule (lectures and lessons). For an up to date schedule check the course time table. Updated slides will come after each lecture.

Date Lecture topics By Material Reading (10e)
2025-01-20 Lecture 1: Introduction. Interrupts and system calls. A. Ernstsson, K. Arvidsson slides Ch. 1.1-1.5, 2.3-2.4
2025-01-21 Lecture 2: Introduction to system programming in C Pointer programming, Storage classes, Compiling, Linking, Debugging. K. Arvidsson Live coding result, briefly commented
[Similar, more elaborate example with code]
[previous year slides]
[previous year files (C code, Makefile, VSCode)]
[even older stuff]
Read Pintos code to the point of understanding it, Practice writing own code (Lab0), See slide material, Lookup unclear things in man pages, pintos documentation or favourite C-book.
2025-01-23 Lesson 1 (Labs 0-2) D. Jönsson slides (updated 2025-01-22)
Lab 0 GDB notes
2025-01-27 Lecture 3: Processes and threads and file system intro K. Arvidsson slides, Ch. 3.1-3.4, 4.1-4.3,4.5, 13.1, 14.1-2
2025-01-30 Lecture 4: Scheduling A. Ernstsson slides, Ch. 5.1-5.5, 5.8
2025-01-03 Lecture 5: Synchronisation K. Arvidsson slides, Python code (2023)
Examples in Progviz (On lab computer or Thinlinc: /courses/TDDE47/progviz.sh, File -> Open example -> concurrency/buffer/...)
Ch. 6.1-6.7 + 7.1-7.3
2025-02-06 Lecture 6: Deadlocks K. Arvidsson slides, Chapter 8
2025-02-10 Lesson 2 (Labs 3-4) D. Jönsson slides (updated 2025-02-09)
2025-02-13 Lecture 7: Memory management I A. Ernstsson slides Ch. 9, 10.1-1.3
2025-02-17 Lecture 8: Memory management II + File systems II K. Arvidsson slides Ch. 10.4, 10.6, 10.7, 14.2-14.7
2025-02-24 Lesson 3 (Labs 5, 6) D. Jönsson slides (updated 2025-02-24)
Dining philosophers problem
2025-03-03 Lecture 9: Virtualization + Synchronization II A. Ernstsson slides, Ch. 2.8, Ch. 18
2025-03-07 Lecture 10: Extra resource N/A

Page responsible: Klas Arvidsson
Last updated: 2025-02-24