Single-Course English 5 ECTS

Operating Systems

Overall Course Objectives

Operating systems provide computer programs with the necessary execution environment. They are used in computer systems ranging from very small embedded systems to large scale server installations. Although these different systems require different forms of operating systems, the services provided are very similar. In this course, you will be able to explore operating systems and also investigate their implementation and function.

Learning Objectives

  • explain the role of the operating system and how computer programs are executed.
  • define in own words basic operating system concepts such as processes, threads and scheduling.
  • identify strategies for communication and synchronisation among different programs.
  • program at the operating system interface.
  • design and implement parts of operating systems, such as schedulers or device drivers.
  • propose and design strategies for implementing operating systems for multi-processor systems.
  • evaluate the advantages and disadvantages of different approaches and apply them to real-world situations.
  • critically analyse an operating system, identify performance requirements, and defend implementation strategies.

Course Content

Operating systems: Processes, threads, scheduling. System calls. Support for synchronization and communication. Operating system organizations. Device drivers. Virtual memory. File systems. Security aspects.

Recommended prerequisites

02100/02101/02102/02105/02132, Experience in sequential programming; basic knowledge of computer systems organisation; experience with the C programming language.

Teaching Method

Lectures, group project and experiments, presentations.



The course is a specialization course within the software technology bachelor line.

See course in the course database.





13 weeks




DTU Lyngby Campus

Course code 02159
Course type Bachelor
Semester start Week 35
Semester end Week 48
Days Thurs 8-12

7.500,00 DKK