Hide menu

TDDB68: Concurrent Programming and Operating Systems

Labs Spring 2015
Registration, Documentation, Assignments

astmatix.ida.liu.se will only be available until midsummer 2015. If you are doing the labs on Solaris please try to finish them before this date. Otherwise you need to change to Linux, this requires som change of the Pintos setup (e.g make files etc).

Lab Registration

The last day to sign up for the labs in Webreg is Friday 2015-01-23. It usually takes some time (around 24 hours) for user information to propagate from the central servers to the IDA systems, so if you registread late on a course or changed your password this could be the reason if you have problems logging in to the computers or webreg. You need to be course registered on at least one IDA course, to be able to sign up in Webreg.

If you encounter any problems with registration, please contact Erik Hansson (eriha AT ida.liu.se).

Reccomended Deadlines

We recommend you to follow these soft deadlines to be able to finish the labs until March 17:
Lab00: January 22, 2015
Lab1: January 30, 2015.
Lab2: February 12, 2015.
Lab3: March 3, 2015.
Lab4: March 11, 2015.

Deadline for bonus

To get 4 point bonus on the exam the labs (00, 1, 2, 3 and 4) have to be passed by March 17, 2015 in webreg. This deadline is unnegotiable! Only students who are registered on the course for the first time in spring 2015 are eligible for this bonus.

General Information

This year we have a mandatory lab00 lab. It is an introduction to C.

The Pintos labs are intended to be done on Solaris. To get accsess to solaris on the lab room linux computers do the follwoing:
Click on the Start-menu -> Internet -> Solaris Session
However, It is possible to do the labs on Linux as well, but there can somtimes be some issuse with debuging. Here are some information how to do it.

The assignments are done in pairs, but the examination is individual. This means that it may happen that only one student in a pair recieves the passing grade. You may do the assignments alone if you wish, but a pair always has priority to the computers and assistants.

Beyond the scheduled lab sessions you also have to spend non-scheduled time on these laborations.

For most students Laboration 3 is the most time consuming. You should know that the difficult part of Laborations 1 and 2 lies in understanding the problem, while the difficulty of Laboration 3 lies more in the implementation (especially synchronization issues).

Lab documentation

Some of the lessons slides are from last year(s); updated slides will be put here after the lessons.


You need to demonstrate lab 00, and lab 1, 2, 3 and 4 for your assistant!

Pintos limitations

  • We only have one emulator, and that is Qemu. This means that there is no way to get deterministic program execution with multiple user processes. This makes race conditions more difficult to debug since you can not easily reproduce the output.

Working on Solaris from home

It is possible to access your home directory and run programs om Solaris remotely using ssh, if you have a ssh client installed (that is usually the case if you run Linux or Mac). In Linux you do the following in a terminal window:

  • ssh -Y your-liu-id@astmatix.ida.liu.se
The -Y flag allows you to forward windows for graphical applications as well. If you use a Mac you need to run the above command in a xterminal (X11) to be able run graphical programs.

You can also mount your home directory as a directory on your local machine, in Linux in a terminal:

  1. Create a new directory, for example astmatix: mkdir astmatix
  2. sshfs -o idmap=user your-liu-id@astmatix.ida.liu.se:/home/your-liu-id ./astmatix
Your home directory is now mounted on ./astmatix

Rules of the game

The laboration assignments are part of the examination in the TDDB68 course. Therefore you will have to demonstrate your solutions to your laboration assistant. And the assistant will test if you understand the solution. If it is obvious that only one student in a group of two understands the code and the concepts, then only that student will get the passing grade.
Don't cheat!

IDA's general rules and policy for examination of computer labs

Rules for examination of computer lab assignments at IDA

You are expected to do lab assignments in group or individually, as instructed for a course. However, examination is always based on individual performance.

It is not allowed to hand in solutions copied from other students, or from elsewhere, even if you make changes to the solutions. If there is suspicion of such, or any other form of cheating, teachers are obliged to report it to the University Disciplinary Board.

Be prepared to answer questions about detailes in specific code and its connection to theory. You may also be asked to explain why you have chosen a specific solution. This applies to all group members.

If you foresee problems meeting a deadline, contact your teacher. You can then get some help and maybe the deadline can be set to a later date. It is always better to discuss problems, instead of, e.g., to cheat.

Any kind of academic dishonesty, such as cheating, e.g. plagiarism or use of unauthorized assistance, and failure to comply with university examination rules, may result in the filing of a complaint to the University Disciplinary Board. The potential penalties include suspension, warning.

Policy for handing in computer lab assignments at IDA

For all IDA courses having computer lab assignments there will be one deadline during or at the end of the course. If you fail to make the deadline, you must retake the, possibly new, lab course the next time the course is given.

If a course deviates from this policy, information will be given on the course web pages.

Page responsible: Christoph W Kessler
Last updated: 2015-04-22