ID2206 Operating Systems 7.5 credits
This course has been discontinued.
Last planned examination: Spring 2021
Decision to discontinue this course: No information inserted

The course covers the implementation of operating systems and system programming.
Course offering missing
Course offering missing for current semester as well as for previous and coming semestersContent and learning outcomes
Course contents
The course provides knowledge of the principles of and how one can implement:
- abstractions of hardware,
- virtualisation of resources and scheduling of tasks; mainly as regards execution, memory and persistent storage.
The structure of an operating system is studied to increase the knowledge of these concepts and also give skills in efficient use of the abstraction level that an operating system offers.
Intended learning outcomes
Students should on completion of the course:
Demonstrate understanding of abstractions and virtualisation of resources such as:
- memory,
- processor,
- persistent storage.
Be able to describe how an operating system is implemented to offer:
- a virtual memory,
- several executing threads
- scheduling of processes,
- process communication via signals and shared memory,
- a file system for persistent storage
- handling of users and rights
- safety and robustness.
At implementation of a program be able to use:
- the system calls of an operating system
- shared memory in multi-threaded programming
- communicating processes.
Course disposition
The course consists of 12-16 lectures to which practical smaller assignments be connected. The practical assignments are intended to give an increased understanding of the concepts that are presented as well as to give the practical skills that is required to satisfy the aim of the course.
The course also has a larger assignment that should be carried out during the course. The assignment should give increased understanding of how an operating system is built in practice and how it functions.
Literature and preparations
Specific prerequisites
- ID1018 Programming I
- IS1200 Computer Hardware Engineering
- ID1020 Algorithms and Data Structures
- ID1019 Programming II
Recommended prerequisites
No information inserted
Equipment
No information inserted
Literature
The course will be based on:
Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau, "Operating System: Three Easy Pieces", Arpaci-Dusseau Books
Reference work:
Andrew S. Tanenbaum, “Modern Operating Systems", Prentice-Hall
Examination and completion
If the course is discontinued, students may request to be examined during the following two academic years.
Grading scale
A, B, C, D, E, FX, F
Examination
- SEMA - Seminar, 1.5 credits, grading scale: P, F
- TENA - Examination, 6.0 credits, grading scale: A, B, C, D, E, FX, F
Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.
The examiner may apply another examination format when re-examining individual students.
Opportunity to complete the requirements via supplementary examination
No information inserted
Opportunity to raise an approved grade via renewed examination
No information inserted
Examiner
Ethical approach
- All members of a group are responsible for the group's work.
- In any assessment, every student shall honestly disclose any help received and sources used.
- In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.
Further information
Course web
Further information about the course can be found on the Course web at the link below. Information on the Course web will later be moved to this site.
Course web ID2206Offered by
Main field of study
This course does not belong to any Main field of study.
Education cycle
Second cycle
Add-on studies
Operating systems are an integral part and necessary pre-requisite for many of the progression courses offered by the ICT school. Theses courses mainly fall into one of three categories: Computer Engineering, Software Engineering and Communication systems.