OHJ-4046 Concurrency, Advanced course (3cp; spring 2008)

Official description
Home page
Exam file
Newsgroup tut.ot.rinnjk
Studies of Software Engineering
Prior: spring2006 spring2007
Revision 1589 2008/04/03 09:35:24  mikko
Moved exercises to TB224, except Apr 16.

Revision 3.1  2007/09/05 06:44:24  mikko
Added exercise room.

Revision 3.0  2007/08/25 12:48:41  mikko
Spring 2008, initial version.

Lecturer: Professor Mikko Tiusanen, mikko.tiusanen@tut.fi. Office hours are posted on the home page.

When sending E-mail, start the field "Subject:" with the string "RinnJK: ", if you want the message to be treated as non-junk. (:-)

Lectures: Room TB224, Tue, 12noon-2pm, and Wed, Apr 2, 12noon-2pm, all in English.

Exercises: Room TB224, Wed, 12noon-2pm, except on Wed, Apr 16 in TC130, 12noon-2pm;
not on Wed, Apr 2, when exercise session is replaced by a lecture. in English. Goal and contents: The course considers the correctness of concurrent programs. In particular, we shall consider one way of constructing programs so that these are provably correct.

The course can be included in post-MSc graduate studies.

Grading: Weekly, graded homework that can replace exam. The exam can raise the grade based on homework. The homework is to be done individually and personally; the solutions are to be submitted to be graded on paper (stapled together) as hand-written but readable originals, to box nr 224 (on TC2XX corridor, near F wing of the Institute of Software Systems). A preliminary estimate is that 50% of homework points are required to pass the course.

Materials: English lecture notes, distributed through TiTe-guild. These can be found during the course in PostScript and PDF forms, here. Save a tree, order the lecture notes! (Or, copy one of the files.)

The important errors found in the lecture notes are posted here. These have already been fixed on the lecture notes above.

The lecture notes have been long ago based on the book:

Gregory Andrews: Concurrent Programming: Principles and Practice, Benjaming/Cummings 1991,

though this will not be covered or followed slavishly. It is recommended as extra reading, if you can find a copy. Purchasing the book is recommended mainly, if you wish to get a more thorough treatment of the subject than can be obtained from the lecture notes.

Prerequisites: OHJ-2500 Program Verification (recommended), OHJ-4100 Operating systems (recommended), 8104000 Operating systems (compulsory) or OHJ-4010 Concurrency (compulsory).