Architecture des systèmes d'exploitation

Architecture des systèmes d'exploitation
Licence InformatiqueParcours Informatique

Description

Ce cours présente le fonctionnement des principaux composants architecturaux des systèmes d'exploitation (noyau, gestion mémoire, processus et threads, fichiers et périphériques), l'interface avec le matériel (interruptions, traduction d'adresses, gestion des périphériques) et les mécanismes sous-jacents (pagination, synchronisation, commutation, ordonnancement, etc.). Les mécanismes de synchronisation et les problèmes de concurrence sont abordés à travers la programmation en C avec les threads POSIX et le partage de mémoire entre processus.

Compétences requises

  • Savoir écrire des programmes complexes en langage C

  • Savoir écrire des programmes utilisant les primitives systèmes POSIX

  • Savoir écrire des programmes simples en assembleur

Compétences visées

À l’issue de cet enseignement, les étudiants seront capables :

  • de comprendre les mécanismes de base d’un système d’exploitation

  • d’identifier les tâches d’administration système

  • d’identifier et de résoudre les problèmes de concurrence dans les programmes

  • de rédiger des programmes partageant des ressources

  • d’organiser l’accès à des ressources partagées

Disciplines

  • Informatique

Bibliographie

Références :
- A. Silberschatz, P. B. Galvin, G. Gagne, Operating System Concepts (9th Edition), Wiley
- R. Arpaci-Dusseau, A.C. Arpaci-Dusseau, Operating Systems: Three Easy Pieces, http://pages.cs.wisc.edu/~remzi/OSTEP/

Contacts

Responsable(s) de l'enseignement