Aller au contenu

Systèmes d’exploitation (#AGREG)

  • Séquence de démarrage : de l’initialisation aux processus utilisateur.
  • Abstractions fournies par le système : accès au matériel, répartition équitable des ressources, accès aux fichiers (dont open, read, write et close).
  • Liens entre système d’exploitation et applications : adressage physique et virtuel, notion de pagination, MMU, interruptions, appels systèmes, gestion des processus (dont fork, wait, waitpid), gestion du temps (ticks et implémentation du temps partagé).
  • Isolation et interaction entre les processus : espace mémoire d’une application, communication entre applications (pipe, mmap).
  • Concurrence : modèles de cohérence (forte, faible, PRAM et au relâchement) et d’équité. Construction des mutex et sémaphores à partir des instructions atomiques test and set. Schéma lecteurs rédacteurs.
  • Émulation et virtualisation : types d’hyperviseurs (natif, hébergé) et conteneur.
  • Virtualisation matérielle et para-virtualisation.