Department of Information Technology

Computer Systems DV1, Fall 2004 (10p)

The course consists of two parts: an introduction to operating systems (5 points) and a project (5 points). Part 1 covers: algorithms for scheduling of the CPU, methods for synchronization of concurrently executing processes and for interprocess communication, techniques for memory management, and methods for protection. The UNIX operating system is used as a case study. The objective for Part 2 of the course is to implement a small operating system.


Ivan Christoff - lecturer (018-4713161, , room 1252)
Erik Berg - lab instructor (018-4716861, , room 1239)
Jakob Engblom - lecturer (0709 - 242646, , room 1445)
Dan Wallin - lab instructor (018-4716234, , room 1241)

Short description

Part 1 of the course covers essential aspects of operating systems.
Part 2 is the project, where you implement a simple operating system kernel.

The course is given at B-level in Computer Science.

Prerequisites: Algebra DV1, Computer Architecture DV1 and Algorithms and Data Structures DV1.

Course start and registration: September 2, at 10.15, in room 1211.

Exam(s): October 20 (Part 1).


The schedule can be found at The lectures in the course will cover the following topics, in order:

01 Introduction and registration (Ivan)
02 Processes (Ivan)
03 The project (Jakob)
04 Scheduling (Ivan)
05 Lab instruction - Lab 1 (Erik)
Lab 1 (Erik)
06Synchronization (Ivan)
07 Synchronization (Ivan)
08 Deadlocks (Ivan)
09 Memory allocation (Ivan)
10 Lab instruction - Lab 2 (Erik)
L2 Lab 2 (Erik)
11 Paging and Segmentation (Ivan)
12 Virtual memory (Ivan)
13 File- and I/O-systems (Ivan)
14 Lab instruction - Lab 3 (Erik)
15 Protection and Security (Ivan)
L3 Lab 3 (Erik)
16 Problem session (Ivan)
17 Problem session (Ivan)
Exam - Part 1

Updated  2004-08-31 08:46:50 by Jakob Engblom.