ID1206 Operating Systems 7.5 credits

The course covers the implementation of operating systems and system programming.
Choose semester and course offering
Choose semester and course offering to see information from the correct course syllabus and course offering.
Content 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 timetabling of assignments; 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
Having passed the course, the student should be able to:
- explain how multi-threaded processes are structured
- explain how an operating system can handle several processes at the same time
- implement parts of the functions of an operating system.
For higher grades, the student should also be able to
- explain how virtualisation of memory is implemented
- explain how memory management is implemented
- explain properties for different scheduling algorithms
- explain properties for different types of process communication
- explain implementation of more advanced file system.
Course disposition
Literature and preparations
Specific prerequisites
- Knowledge and skills in programming, 6 credits, corresponding to completed course ID1018.
- Knowledge in computer hardware engineering, 7,5 credits, corresponding to completed course IS1200.
- Knowledge and skills in algorithms and data structures, 4,5 credits, corresponding to completed course component ARBA in ID1020/ID1021.
Active participation in a course offering where the final examination is not yet reported in Ladok is considered equivalent to completion of the course.
Registering for a course is counted as active participation.
The term 'final examination' encompasses both the regular examination and the first re-examination.
Recommended prerequisites
Specific prerequisites autumn 2020:
- As from HT20 the specific prerequisite for course ID1020 Algorithms and data structures, is considered to be fulfilled if course component “ARBA - Course work, 4.5 credits” is approved.
- ID1019 Programming II, is not a requirement for eligibility.
Equipment
Literature
Examination and completion
If the course is discontinued, students may request to be examined during the following two academic years.
Grading scale
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
Opportunity to raise an approved grade via renewed examination
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 ID1206Offered by
Main field of study
Education 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.
Supplementary information
In this course, the EECS code of honor applies, see: http://www.kth.se/en/eecs/utbildning/hederskodex.