Formation : Systèmes d’exploitation : processus, mémoire et fichiers

Formation en ligne gratuite · Intermédiaire · 9 unités

Découvre comment un système d’exploitation virtualise le processeur et la mémoire, gère la concurrence avec fils d’exécution, verrous et sémaphores, conserve les données sur disque et dans les systèmes de fichiers, et isole les programmes. Tu sauras raisonner sur les processus, la mémoire et le stockage de tout système.

Par Studeli

Commencer par l'unité 1

Ce cours de Systèmes d’exploitation est-il fait pour toi ?

Pour qui

Tu sais programmer en C (ou tu es prêt à lire des exemples en C) et tu veux comprendre les processus, la mémoire, la concurrence et les systèmes de fichiers du point de vue du système d’exploitation.

Ce que tu vas apprendre en 9 unités

Chaque unité comprend les neuf outils d'étude

  • Guide d'Étude
  • Résumé
  • Leçons Interactives
  • Questions Pratiques
  • Flashcards
  • Explique-Le
  • Mots-Clés
  • Fiche Mémo
  • Carte Conceptuelle
  1. Explique comment un système d’exploitation virtualise le processeur avec les processus, les appels système et les changements de contexte, et crée des processus avec fork, exec et wait.

    5 objectifs d'apprentissage
    1. 1.Explique le rôle d’un système d’exploitation
    2. 2.Décris les processus et les états par lesquels ils passent
    3. 3.Crée et contrôle des processus avec fork, exec et wait
    4. 4.Explique le mode utilisateur, le mode noyau et les appels système
    5. 5.Explique comment le système d’exploitation partage le processeur grâce à l’exécution directe limitée
  2. Compare des politiques d’ordonnancement comme FIFO, plus court travail d’abord, à tour de rôle et les files multiniveaux avec rétroaction à l’aide du temps de séjour et du temps de réponse.

    6 objectifs d'apprentissage
    1. 1.Décris le rôle d’un ordonnanceur du processeur et les critères permettant de l’évaluer
    2. 2.Compare les ordonnancements FIFO, plus court travail d’abord, à tour de rôle et par priorité
    3. 3.Ordonnance les tâches sans connaître leur durée d’exécution grâce aux files multiniveaux avec rétroaction
    4. 4.Partage proportionnellement le processeur à l’aide des tickets, des pas et du temps d’exécution virtuel
    5. 5.Ordonnance le travail sur plusieurs processeurs
    6. 6.Explique et utilise les ordonnanceurs des systèmes d’exploitation existants
  3. Explique comment le système d’exploitation donne à chaque processus son propre espace d’adressage grâce à la base et à la limite, à la segmentation et à la gestion de l’espace libre.

    5 objectifs d'apprentissage
    1. 1.Explique comment le système d’exploitation donne à chaque processus sa propre mémoire
    2. 2.Utilise l’API de gestion mémoire et explique comment le système d’exploitation la prend en charge
    3. 3.Traduis les adresses avec une base et une limite
    4. 4.Traduis les adresses par segmentation
    5. 5.Gère l’espace libre et la fragmentation
  4. Traduis les adresses avec les tables des pages et le TLB, compare les tables des pages multiniveau et évalue les politiques de remplacement des pages lorsque la mémoire est pleine.

    5 objectifs d'apprentissage
    1. 1.Traduis les adresses virtuelles par pagination
    2. 2.Accélère la traduction avec le TLB
    3. 3.Réduis la taille des tables des pages
    4. 4.Dépasse la capacité de la mémoire physique grâce à l’échange
    5. 5.Choisis des politiques de remplacement des pages et préviens l’écroulement
  5. Crée des fils d’exécution, repère les conditions de concurrence et les sections critiques, et protège les données partagées avec des verrous.

    5 objectifs d'apprentissage
    1. 1.Explique ce que sont les fils d’exécution et crée-les avec l’interface POSIX
    2. 2.Repère les conditions de concurrence et les sections critiques dans du code concurrent
    3. 3.Protège les données partagées avec des verrous et des mutex
    4. 4.Explique comment les verrous sont construits à partir des mécanismes matériels
    5. 5.Conçois des structures de données concurrentes fondées sur des verrous
  6. Coordonne les fils d’exécution avec des variables de condition et des sémaphores, résous les problèmes du producteur-consommateur et des lecteurs-rédacteurs, et préviens les interblocages et les autres bogues de concurrence.

    5 objectifs d'apprentissage
    1. 1.Coordonne les fils d’exécution avec des variables de condition
    2. 2.Utilise les sémaphores pour assurer l’exclusion mutuelle, ordonner les fils d’exécution et limiter leur concurrence
    3. 3.Reconnais et corrige les bogues de concurrence sans interblocage
    4. 4.Préviens, évite et détecte les interblocages
    5. 5.Construis des programmes concurrents avec des événements plutôt qu’avec des fils d’exécution
  7. Explique comment le système d’exploitation communique avec les périphériques grâce aux interruptions, au DMA et aux pilotes, et compare les disques durs, les SSD et les niveaux de RAID en matière de performances et de fiabilité.

    5 objectifs d'apprentissage
    1. 1.Explique comment le système d’exploitation communique avec les périphériques
    2. 2.Modélise les performances d’un disque dur et ordonnance les requêtes disque
    3. 3.Explique le fonctionnement des SSD à mémoire flash et compare-les aux disques durs
    4. 4.Utilise le RAID pour concilier capacité, performances et fiabilité
    5. 5.Détecte et répare les erreurs de stockage avec des sommes de contrôle
  8. Utilise l’interface de gestion des fichiers et des répertoires, explique comment les systèmes de fichiers stockent les données avec des inodes et des structures d’allocation, et compare la journalisation et les systèmes structurés en journal pour assurer la cohérence après une panne.

    6 objectifs d'apprentissage
    1. 1.Utilise l’interface de gestion des fichiers et des répertoires
    2. 2.Explique comment un système de fichiers simple stocke et retrouve les données
    3. 3.Explique comment le Fast File System exploite la localité pour accélérer les accès
    4. 4.Assure la cohérence d’un système de fichiers malgré les pannes
    5. 5.Explique comment un système de fichiers structuré en journal écrit les données et récupère l’espace
    6. 6.Compare les méthodes de partage de fichiers en réseau des systèmes de fichiers distribués
  9. Explique comment les systèmes d’exploitation authentifient les utilisateurs, contrôlent l’accès aux ressources et isolent les charges de travail avec des machines virtuelles et des conteneurs.

    5 objectifs d'apprentissage
    1. 1.Explique comment le matériel et le noyau protègent le système
    2. 2.Authentifie les utilisateurs et attribue une identité aux processus
    3. 3.Contrôle l’accès aux fichiers et aux autres ressources
    4. 4.Exécute des systèmes d’exploitation dans des machines virtuelles
    5. 5.Isole les applications avec des conteneurs
Informatique : données, algorithmes, Internet et IA (Débutant)

Tu veux un premier aperçu large et conceptuel de l’informatique (ordinateurs, données, algorithmes, Internet, IA) avant ou pendant tes débuts en programmation.

Crée ton propre Matériel d'Étude

Transforme tes notes, diapos et documents en Guides d'Étude, Questions Pratiques, Flashcards et 6 autres outils.

Commencer