The operating system lays the foundation for all software that runs on a system. The
goal of the operating system is to provide a generic interface for such software, so
that applications do not have to bother about how the video card, hard disk and
other hardware should be controlled.
We will study all aspects of operating systems, such as process management, virtual
memory management, system calls, file systems, device drivers and bootstrapping.
Concepts such as processes, scheduling, synchronization, deadlocks, context
switching and memory mapping will be introduced.
A custom developed operating system will be used for the lab. In the lab we will
experiment with the theory discussed during class, including process management and
virtual memory management.
Written exam at the end of the semester and lab assignments during the semester.
Both the written exam and lab assignments will make up the final grade. The lab
assignments will play an important role in the course.
Making students familiar with functionalities of operating systems, which are
applied in contemporary operating systems. In the accompanying lab we will
experiment with different implementations of operating system functionality
introduced during class.
Book: Operating System Concepts, 8th Edition (International Student Version).
Abraham Silberschatz, Peter B. Galvin, Greg Gagne. 2008. Wiley Publishing.