Learning outcomes

At the end of the course, the student is able to describe and analyse the components of an operation system, in its technical aspects. In particular, he will master the management of processes and threads, main and secondary memory, including filesystem and file management. He will also be able to manipulate efficiently the inter-processes synchronisation and communication primitives, and will be familiar with the foundations of a virtualisation solution.

 

Goals

The objective of the course is to master the main concepts of modern operating systems. The student is asked to decompose the main functions to understand the underlying mechanisms and interactions. The class is organized around a set of modules targeted at the different components of operating systems. Since Operating Systems lay at the ground of modern Information Systems, it is essential for the students to acquire a deep understanding of OS mechanisms.

Content

The course is structured around the following chapters:

  • interrupt handling
  • I/O management
  • process management
  • memory management
  • file management
  • inter-process synchronisation
  • multi-threading
  • virtualisation concepts
  •  

Exercices

Exercises are organized to illustrate the concepts presented in the course, and get the student to become familiar with the tools and primitives of a real Operating System. 
Participation to the exercises session is mandatory and part of the final note

Pre-requisites

Computer Architecture [INFOB126]

Teaching methods

The class is given as oral presentations, during which students are often requested to actively partipate to lead to a common reflection and construction of the solution. The objective is to get the student to think and reflect by himself rather than giving him/her the information in a uni-directional way. Additionally, practical work is organized during which the student is asked to reason on OS concepts, and design and develop some of them.

Assessment method

The assessment consists of an oral examination covering the material covered in the course: the questions focus on a specific part of the course, but the ability to think across different areas and make connections with other parts is also assessed. The emphasis is on an in-depth understanding of the concepts studied and the ability to link them together. The examination will also cover the projects carried out as part of the practical work.

Sources, references and any support material

  • A, Cazes. architecture des machines et des systÈmes informatiques. dunod, 2008.
  • Tanenbaum, Andrew S. Modern Operating Systems. 4th edition. Pearson Academic Computing, 2014

Language of instruction

French
Training Block Credits Mandatory
Bachelor in Computer Science 2 5 Yes