Hide menu

TDDI04 Concurrent programming, Operating Systems, and Real-time Operating Systems


Organization in short

The course will contain the following moments:

Written exam (2p = 3hp = 3 ECTS), graded U, 3, 4, 5
From 2010 the exam will be split in two parts, see below.
A LAB part (2p = 3hp = 3 ECTS), graded pass/fail (U, G)
From 2010 the labs will also give an unofficial "bonus VG" grade if completed on time. See below.
Lectures Strongly recommended to read relevant chapters before each lecture and attend the lecture to ask the lecturer tricky questions. If you know and understand the content by heart you will be able to pass the final exam.
Lessons This is your time to ask questions about lab, lesson and exam problems. Some lessons will be more devoted to exam problems and some will serve more as lab preparation.
Lab questions Preparation work related to each lab that must be understood and passed before you start the corresponding lab. If you do not fully understand the assignment before you come to lab you will for sure waste a lot of time. If you guess on what is a working solution or a working C-syntax you will waste a lot of time. C is not forgiving, it will seem to work at first, and then stab you in the back when you least expect, unless you know what you're doing.
Laborations You will add functionality to a small x86 operation system known by the name PINTOS. Much of the Pintos code are on a very low level (C-programming) and even some assembler if you strive for full understanding of all details. Be warned that they are very time-consuming. The implementation, testing and above all, debugging of your exec and join system calls typically takes 75% of the total lab time. Completing all labs on time will give "bonus VG" that can raise your exam grade. This bonus can only be attained on your first attempt on the course.
VT1 Quiz ("Dugga") In mid-term a quiz is given that will allow you to complete half the exam in advance. The quiz will also be given simultaneous as the exam. If you do not pass it the first time you have to solve it then (corresponding to writing the full exam).
VT1 and VT2 Written exam The final written exam. Students near a grade limit may be raised or lowered based on overall impression. As of 2010 the exam will be split in two parts, one part on the VT1 content and one on the VT2 content. A quiz on the VT1 part will be given in the middle of the course. Passing the quiz will enable you to skip that part on the final exam. The grade limits on each part will be at about 50%, 67% and 84% out of total point. The total exam grade is calculated from the grade on the course parts VT1, VT2 and LAB.

Course registration

We are not entitled to correct exams and report results for students who are not registered on the course. If you forgot to register, please follow the studierektor's instructions for late registration.


The laborations are done in pairs and are challenging. You will not be allowed to work alone. Take care to prepare a solution before each lab occasion, and show it to your lab assistant. The assistants are there to help you, but it is your responsibility to get the help you need and make sure you are "on track".

To be able to complete the labs you must understand large parts of the PINTOS code, which means you will need to sit down and browse/read the code. Do this before labs on your own time. We provide instructions for each Pintos lab assignment, which piece of code should be investigated and understood in order to complete the assignment.

Keep in mind that the Pintos-code is not a typical lab-skeleton. You can not deduce where or how to do things by looking at "what you thing the teacher removed", because nothing is not removed, only "hacked just to make it work at first", or not written at all. You will fix such things by removing or reimplementing (replacing) relevant code.

The lab occasions are not obligatory, but in order to complete all labs you will need all the scheduled time and a considerable amount of own time. The course is planned for 30h x 6p. That is a total of 180h of work. Only a fraction is scheduled, you can do the math on your own.

Page responsible: Klas Arvidsson
Last updated: 2010-08-23