Phelma Formation 2022

Operating Systems Development Project - Fundamentals - 4PMIPCS1

  • Number of hours

    • Lectures 0
    • Projects 0
    • Tutorials 0
    • Internship 0
    • Laboratory works 20.0
    • Written tests 0

    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 machine with a RISC V processor.
Time-sharing is introduced by implementing a simple preemptive scheduler.

Contact Sebastien VIARDOT

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 machine
2. Time-sharing using the hardware clock
=> this implies writing an interrupt handler to manage the hardware clock
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

Attendance is mandatory to validate this course: each unjustified absence is penalised by 2 points and the final mark will be 0/20 for any students who misses 2 or more classes.



N1=CC
N2=N1 (pas de rattrapage)

Calendar

The course exists in the following branches:

  • Curriculum - Embedded Systems & Connect. Devices - Semester 7
see the course schedule for 2020-2021

Additional Information

Course list
Curriculum->Engineering degree->Semester 7

Bibliography

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