Application
Système
Pilote
Matériel
Clavier
Souris
Imprimante
Disque dur
Pilote (driver) : Logiciel spécifique qui permet au système d'exploitation de communiquer avec un périphérique.
- Traduire les commandes du système en commandes compréhensibles par le périphérique
- Gérer les interruptions envoyées par le périphérique
- Contrôler directement le matériel
- Fournir une interface standardisée aux applications
Application
API système
Pilote
Périphérique
Lors de la détection, le système recherche un pilote compatible
Le pilote est chargé en mémoire et initialisé
Le pilote configure les paramètres du périphérique
Le pilote gère les échanges entre le système et le périphérique
Le pilote surveille l'état du périphérique et gère les erreurs
Les pilotes sont des logiciels essentiels qui permettent la communication entre le système et les périphériques.
• Spécificité : Chaque type de périphérique nécessite un pilote spécifique
• Abstraction : Le pilote masque la complexité du matériel aux applications
• Sécurité : Le pilote contrôle l'accès au périphérique
Interruption : Signal envoyé par un périphérique pour informer le processeur d'un événement important.
Événement
Interruption
CPU
Pilote
Le périphérique envoie un signal d'interruption au processeur
Le processeur sauvegarde son état courant (compteur d'instructions, registres)
Le processeur identifie le numéro d'interruption et le pilote concerné
Le gestionnaire d'interruption du pilote est exécuté
Le processeur restaure son état précédent et reprend l'exécution normale
Les interruptions permettent aux périphériques de signaler des événements importants au processeur de manière asynchrone.
• Asynchronisme : Les interruptions peuvent survenir à tout moment
• Priorité : Les interruptions ont des niveaux de priorité différents
• Effacement : Le pilote doit traiter l'interruption pour éviter les blocages
E/S (Entrée/Sortie) : Ensemble des opérations de transfert de données entre le système et les périphériques.
Lecture
Écriture
Contrôle
Synchrones (bloquant) ou asynchrones (non bloquant)
Programmée, par interruption, par DMA (Direct Memory Access)
Utilisation de tampons pour optimiser les transferts
Stockage temporaire des données pour améliorer les performances
Détection et traitement des erreurs de transfert
Les E/S sont des opérations critiques pour la communication entre le système et les périphériques.
• Optimisation : Utilisation de méthodes efficaces pour minimiser les temps d'attente
• Sécurité : Contrôle des accès aux opérations d'E/S
• Fiabilité : Gestion des erreurs pour garantir l'intégrité des données
Accès concurrents : Situation où plusieurs processus tentent d'accéder au même périphérique simultanément.
Processus A
Synchronisation
Processus B
Périphérique
Le système garantit qu'un seul processus peut accéder au périphérique à la fois
Les processus en attente sont placés dans une file d'attente
Le système décide de l'ordre d'accès selon des critères prédéfinis
Utilisation de mécanismes de verrouillage pour contrôler l'accès
Le système surveille les accès pour éviter les situations de blocage
Le système gère les accès concurrents pour garantir l'intégrité des données et éviter les conflits.
• Exclusion : Empêcher les accès simultanés au même périphérique
• Fairness : Équité dans l'accès aux ressources partagées
• Performance : Minimiser les temps d'attente
Planification : Ensemble des techniques pour optimiser l'ordre et le timing des opérations E/S.
File d'E/S
Algorithme
Exécution
FCFS (First Come First Served), SCAN, C-SCAN, SSTF (Shortest Seek Time First)
Les requêtes critiques peuvent avoir une priorité plus élevée
Regroupement de plusieurs petites requêtes pour améliorer l'efficacité
Anticipation des besoins pour réduire les temps d'accès
Adaptation des algorithmes selon les charges d'utilisation
La planification optimise les performances en déterminant l'ordre optimal des opérations E/S.
• Optimisation : Minimiser les temps d'attente et maximiser le débit
• Algorithmes : Choisir selon le type de périphérique et les besoins
• Adaptabilité : S'adapter aux conditions changeantes du système
- Pilotes de périphériques : Gestion spécifique à chaque type de périphérique
- Interruptions : Mécanisme de notification asynchrone
- Accès direct à la mémoire (DMA) : Transfert de données sans intervention du CPU
- Bufferisation : Tampons pour optimiser les transferts
- Planification : Algorithmes pour optimiser l'ordre des opérations
- Les pilotes sont des logiciels de base essentiels au fonctionnement du système
- Les interruptions permettent une communication asynchrone avec les périphériques
- Les E/S sont des opérations critiques qui peuvent affecter les performances globales
- La gestion des accès concurrents est nécessaire pour éviter les conflits
- La planification optimise les performances en déterminant l'ordre optimal des opérations