IS1350 Operating Systems 7.5 credits

Operativsystem

The course covers the design, implementation, operation, configuration, administration of modern operating systems.

Offering and execution

Course offering missing for current semester as well as for previous and coming semesters

Course information

Content and learning outcomes

Course contents *

The course consists of lectures and a lab course

Intended learning outcomes *

The course is offered for students of the bachelor programmes in Computer Engineering and Information and Communication Technology. The course is currently only offered in Swedish. The course gives the student knowledge and practical skills to understand how a modern operating system is designed and implemented. It also enables the student to analyze the operation of an operating system from a system administration and security perspective.

After a completed course the student should be able to:  

  • understand and explain how modern operating systems are designed and implemented with focus on: processes, threads, scheduling, virtual memory management, file systems, I/O, device drivers and system calls
  • understand an explain how different parts of an operating system interacts and how they and their implementation affect applications
  • explain how the operating systems UNIX, LINUX and Windows are designed and the design choices made and make relevant comparisons
  • know and explain the fundamentals of real-time operating systems and support for soft real-time
  • explain the basics of synchronization
  • adjust the memory management to fit the demands of different applications
  • program simple device drivers and kernel modules for Linux and Windows
  • explain basic methods to implement I/O
  • configure and install a Linux kernel
  • analyze and correct applications with regard to performance problems, erroneus behavior and security issues in Linux and Windows

Course Disposition

No information inserted

Literature and preparations

Specific prerequisites *

Required pre-requisits are:

  • Basic knowledge of C and assembly programming
  • Digital design
  • Computer organization and architecture
  • Good knowledge and ability to program in high-level languages such as JAVA
  • User experience from Unix/Linux and Windows

Recommended prerequisites

No information inserted

Equipment

No information inserted

Literature

Modern Operating Systems, Andrew S. Tanenbaum.
Third edition Prentice-Hall, Inc.

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 *

  • LAB1 - Laboratory Work, 4.5 credits, Grading scale: A, B, C, D, E, FX, F
  • TEN1 - Examination, 3.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.

Other requirements for final grade *

The labs are performed in groups of one or two persons. The labs are examined and presented orally. All labs should be performed and examined during the academic year when the lab course was started. The lab course is graded depending on the number of higher grade assignments that are passed in addition to the mandatory assignments. The final grade, A-F, is based on the grade of the lab course and the written exam.  

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

No information inserted

Examiner

Johan Montelius

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 IS1350

Offered by

EECS/Computer Science

Main field of study *

Information Technology, Technology

Education cycle *

First 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. These courses mainly fall into one of three categories: Computer Engineering, Software Engineering and Communication systems. For the groups of students that the course is offered for we would recommend the courses in Server administration and Planning, deployment and support of local and global computer networks.

Supplementary information

The course is evaluated and developed according to the KTH policy for Course Analysis