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.
See course description in Danish
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.
Teaching Method
Lectures, group project and experiments, presentations.
Faculty
Remarks
The course is a specialization course within the software technology bachelor line.