Systèmes d'exploitation : principes, programmation et virtualisation

Code UE : SMB101-IDF

  • Cours + travaux pratiques
  • 6 crédits

Responsable(s)

Samia BOUZEFRANE

Public et conditions d'accès

Elèves ayant des connaissances de base en systèmes informatiques vues en UTC502 au Cnam ou équivalent, ainsi que des connaissances en programmation (de préférence en langage C).

Objectifs pédagogiques

Ce cours a pour objectif de présenter les concepts des systèmes d’exploitation et leur programmation en étudiant les mécanismes de base des systèmes d’exploitation classiques
mais aussi ceux des systèmes temps réel, des systèmes embarqués et des objets connectés. Les principes de virtualisation des systèmes d’exploitation sont aussi abordés dans ce cours.

Compétences visées

  • Conception et programmation de tout type de système d'exploitation (système classique comme Linux, système temps réel, système embarqué pour objets connectés).
  • Architecture et fonctionnement des systèmes d'exploitation tels que Unix et Linux mais aussi des systèmes embarqués (comme par exemple Raspberry pi, Arduino, STM32, ou Android) et des systèmes temps réel (dans le domaine de l’avionique, des automobiles, etc.) pour maîtriser leur administration et le développement d'applications.
  • Maîtrise des principes sous-jacents à la virtualisation de systèmes afin de faciliter l'intégration et l'administration de ce type de service dans un système informatique (Cloud Computing, Haute Disponibilité, Tolérance aux pannes, etc.).

Concepts et paradigmes des systèmes d'exploitation classiques.
  • Mécanismes de mise en œuvre des primitives dans le noyau de systèmes tels que Linux ou Unix BSD : notion de processus, de thread, parallélisme et synchronisation, ordonnancement, gestion de la mémoire virtuelle, gestion des signaux, etc.
- Concepts et paradigmes des systèmes temps réel.
  • Architecture, notion de tâche périodique et apériodique, gestion des interruptions, politiques d’ordonnancement temps réel, gestion des handlers, etc.
- Concepts et paradigmes des systèmes embarqués et objets connectés.
  • Etude de quelques exemples microcontrôleurs
  • Programmation d’un système embarqué et d’un objet connecté
  • Principes de l’internet des objets
- Concepts et principes de la virtualisation de systèmes et de la conteneurisation
  • Etude des différentes techniques mises en œuvre dans les hyperviseurs logiciels (VMWare, Xen, KVM).
  • Support matériel de la virtualisation de systèmes.
  • Etude du support de la virtualisation intégré dans les architectures matérielles récentes : processeurs Intel-VT, mécanismes de Direct I/Os, fonctions PCI virtuelles.
  • Etude des principes de la conteneurisation et de l’orchestration des conteneurs (exemple de Docker containers et Kubernetes)
Les séances de cours sont suivies de séances de TP permettant d’illustrer les concepts étudiés. En plus de TP sous Linux, des TPs peuvent être proposés sur d’autres plates-formes comme FreeRTOS pour les systèmes temps réel, Raspberry pi ou Arduino pour illustrer la programmation des systèmes embarqués et les plates-formes mobiles (Android par exemple) comme exemple d’objets connectés. La virtualisation traitera de la gestion des machines virtuelles à l’aide d’hyperviseurs mais aussi de solutions de virtualisation avec empreinte plus légère comme les Container Docker. Ainsi des TPs sur la virtualisation et la conteneurisation (exemple de Kubernetes) viennent illustrer les concepts étudiés en séances de cours.

Examen écrit

  • S. Bouzefrane : Les systèmes d'exploitation, Unix, Linux et Windows XP, avec C et Java, Dunod 2003 (566 pages), ISBN : 2100071890
  • R. H. Carver, Kuochung Tai : Modern Multithreading Wiley 2005 (465 pages)
  • J.E. Smith, R. Nair : Virtual Machines - versatile platforms for systems and processes, Elsevier
  • E. Bugnon, J. Nich, D. Tsafrir : Hardware and Software Support for Virtualization - Morgan and Claypool Life Sciences ISBN: 1627056939

Cette UE apparaît dans les diplômes et certificats suivants

Chargement du résultat...
Patientez
Intitulé de la formation
Type
Modalité(s)
Lieu(x)
Lieu(x) À la carte
Lieu(x) À la carte
Lieu(x) Alternance
Lieu(x) À la carte
Lieu(x) À la carte
Lieu(x) À la carte
Lieu(x) Alternance
Intitulé de la formation Licence informatique
Lieu(x) À la carte
Intitulé de la formation Licence informatique
Lieu(x) Alternance
Lieu(x) Package
Lieu(x) Normandie
Lieu(x) À la carte
Lieu(x) Alternance
Lieu(x) À la carte
Intitulé de la formation Architecte en cybersécurité
Lieu(x) Alternance
Intitulé de la formation Architecte en cybersécurité
Lieu(x) À la carte
Intitulé de la formation Type Modalité(s) Lieu(x)

Contact

EPN 05 Informatique
2 rue conté 31.1.79
75003 Paris
Tel :01 40 27 20 38
Agathe Froger

Centre(s) d'enseignement proposant cette formation