Ensimag Rubrique Formation 2022

Operating Systems Development Project - Fundamentals - 4MMPCSEF

  • Number of hours

    • Lectures -
    • Projects -
    • Tutorials -
    • Internship -
    • Laboratory works 16.5
    • Written tests -

    ECTS

    ECTS 1.5

Goal(s)

This is a specialisation course, for students who chose a Computer Science oriented track. Notions seen include Operating System kernel design and writing low-level C code interacting with a standard PC hardware. Time-sharing is introduced by implementing a simple preemptive scheduler.

Responsible(s)

Christophe RIPPERT

Content(s)

1. Design of IO driver in C
=> students will use pointers to write directly to the video memory of the PC
2. Time-sharing using the PC hardware clock
=> this implies writing an interrupt handler to manage the hardware clock (with a very small part in 32 bits x86 assembly)
3. Writing a simple preemptive scheduler
=> this is the main part of the projet: students will first use a cooperative scheduler to share time between processes, then they will connect the scheduling fonction to the hardware clock handler in order to implement preemptive scheduling.

Prerequisites

Computer Architecture. Basic Programming. Operating Systems and Concurrent Programming.

Test

Students will take a practical exam at the end of the semester to validate the course (all documents are forbidden).

    • MCC en présentiel **
      N1=Examen de TP
      N2=N1 (pas de rattrapage)
    • MCC en distanciel **
      N1=Rendu de Projet
      N2=N1 (pas de rattrapage)

Calendar

The course exists in the following branches:

see the course schedule for 2023-2024

Additional Information

Course ID : 4MMPCSEF
Course language(s): FR

The course is attached to the following structures:

You can find this course among all other courses.

Bibliography

Andrew S. Tanenbaum : Modern Operating Systems et Operating Systems Design and Implementation
Abraham Silberschatz, Peter B. Galvin et Greg Gagne : Operating Systems Concepts.