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.
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.
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)
The course exists in the following branches:
- Curriculum - Embedded Systems & Connect. Devices - Semester 7
Andrew S. Tanenbaum : Modern Operating Systems et Operating Systems Design and Implementation
Abraham Silberschatz, Peter B. Galvin et Greg Gagne : Operating Systems Concepts.