module systèmes dexploitation chapitre 11 systèmes dentrée/sortie École normale supérieure...

25
Module Module Systèmes d’exploitation Systèmes d’exploitation Chapitre 11 Systèmes d’entrée/sortie École Normale École Normale Supérieure Supérieure Tétouan Tétouan Département Département Informatique Informatique 2008-2009

Upload: internet

Post on 03-Apr-2015

121 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

ModuleModuleSystèmes d’exploitationSystèmes d’exploitation

Chapitre 11 Systèmes d’entrée/sortie

École Normale SupérieureÉcole Normale SupérieureTétouanTétouan

Département InformatiqueDépartement Informatique

2008-2009

Page 2: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

2

SynopsisSynopsis

• Introduction• Méthodes de communication

– Scrutation (polling)– Interruption

• Catégorie des périphériques• Accès direct en mémoire (DMA)• Niveaux des logiciels d’entrées-sorties

– Contrôleurs– Pilotes

• Sous-système E/S du noyau• Ordonnancement E/S

– Mise en tampon– Mise en cache– Mise en attente et réservation de périphérique– Gestion des erreurs

Page 3: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

3

IntroductionIntroduction

• L’ordinateur peut effectuer des entrées-sorties – échanger des données – avec des organes externes :

– électroniques, tels que les mémoires,

– magnétiques, tels que les disques ou les disquettes,

– mécaniques, tels que le clavier, les imprimantes,…

• Les périphériques – les organes externes – mis en œuvre sont de nature très différente et l’un des objectifs du système de gestion des entrées-sorties est de préserver une relative homogénéité dans leur mode d’accès.

Page 4: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

4

IntroductionIntroduction

Structure typique de bus PCStructure typique de bus PC

Page 5: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

5

IntroductionIntroduction

• Deux techniques de base pour communiquer le CPU et contrôleurs périphériques:– CPU et contrôleurs communiquent directement par des

registres– CPU et contrôleurs communiquent par des zones de

mémoire centrale– Combinaisons de ces deux techniques

RAM

CPUContrôleur

Périphérique

Page 6: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

6

IntroductionIntroduction

Adresses des ports d’E/S des périphériques PCAdresses des ports d’E/S des périphériques PC

Page 7: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

7

Méthodes de communicationMéthodes de communication

• Deux méthodes principales:– Scrutation (polling): l’initiative est au

programme– Interruption: l’initiative est à la périphérique

• Grande variété d’implémentations

Page 8: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

8

Méthodes de communication Méthodes de communication Scrutation (polling)Scrutation (polling)

• Bit dans le contrôleur E/S:– 0 si occupé à travailler– 1 si libre - prêt à accepter commande

• Bit dans le CPU: commande prête (command ready)– 1 s’il y a une commande prête à exécuter par le contrôleur

• Le CPU continue de regarder le bit occupé du contrôleur jusqu’à ce qu’il soit libre

• Elle positionne alors le bit commande prête• Le contrôleur voit ceci et devient occupé• Inefficacité de cette méthode si (comme normal) le CPU

se trouve très souvent dans une boucle de scrutation– Attente occupée

Page 9: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

9

• le CPUfait son travail, jusqu’à ce qu’elle reçoit un signal sur la ligne de requête d’interruption (interrupt request line)– Cette ligne est interrogée après l’exécution de chaque

instruction• À moins que l’interruption ne soit masquée• Souvent deux lignes d’interruptions: masquable, non

masquable– Transfert à une adresse de mémoire où il y a renvoi à

la routine de traitement– Les interruptions ont différentes priorités

• Si une interruption d’haute priorité se présente lors que le système est en train de traiter une int. de prio. faible, la première est traitée avant

Méthodes de communication Méthodes de communication InterruptionInterruption

Page 10: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

10

Méthodes de communication Méthodes de communication InterruptionInterruption

Page 11: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

11

Méthodes de communication Méthodes de communication InterruptionInterruption

Table des vecteurs d’interruptions Intel Pentium (partie)Table des vecteurs d’interruptions Intel Pentium (partie)

Page 12: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

12

Catégorie des périphériquesCatégorie des périphériques

• On classe les périphériques d’entrées-sorties en deux catégories principales :

• Les périphériques blocs : On gère les données par l’intermédiaire de blocs de tailles fixes, couramment de 512 ou 1024 octets et parfois plus. L’accès à chacun de ces blocs étant aléatoire. Les disques correspondent, à peu près, aux périphériques blocs.

• Les périphériques caractères : Ils fournissent ou acceptent une suite de caractères sans réelle structure. Les terminaux, les écrans, les mémoires sont des périphériques caractères.

Page 13: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

13

Accès direct en mémoire (DMA)Accès direct en mémoire (DMA)

• Dans les systèmes sans DMA, le CPU est impliquée dans le transfert de chaque octet

• DMA est utile pour exclure l’implication de le CPU surtout pour des E/S volumineuses

• Demande un contrôleur spécial

• Ce contrôleur a accès direct à la mémoire centrale

Page 14: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

14

Accès direct en mémoire (DMA) Accès direct en mémoire (DMA) En six étapesEn six étapes

Page 15: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

15

Niveaux des logiciels d’entrées-sortiesNiveaux des logiciels d’entrées-sorties

• Le traitement des entrées-sorties se fait sur plusieurs niveaux, des plus proches du matériel aux plus proches de l’utilisateur. Les niveaux proches de l’utilisateur doivent s’efforcer, autant que possible, de masquer les particularités physiques des périphériques.

Page 16: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

16

Niveaux des logiciels d’entrées-sortiesNiveaux des logiciels d’entrées-sortiesContrôleursContrôleurs

• La plupart du temps, le processeur ne commande pas directement les périphériques. Il utilise pour cela un circuit spécialement adapté, un contrôleur, de caractéristiques propres à chaque périphérique.

• Les commandes du processeur au périphérique s’opéreront alors par l’intermédiaire de ce contrôleur.

• Ces commandes correspondent directement aux mécanismes physiques du périphérique telles, par exemple, que le déplacement du bras d’un lecteur de disque. Par ailleurs, les contrôleurs sont souvent d’une grande complexité électronique.

Page 17: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

17

Niveaux des logiciels d’entrées-sortiesNiveaux des logiciels d’entrées-sortiesContrôleursContrôleurs

• Les contrôleurs et le processeur opèrent en parallèle. Le contrôleur dispose d’une mémoire tampon, pour lui permettre, par exemple, de lire des données en provenance du périphérique d’entrée pendant que le processeur traite une autre tâche.

• Le contrôleur signale l’achèvement de son travail en émettant une interruption qui lui est propre. À la réception de cette interruption, le processeur se branche à un emplacement fixe. La valeur de cet emplacement est contenue dans une adresse – un vecteur – spécifique à chaque interruption. À l’adresse d’interruption, une routine réalise, en général, le transfert des données vers la mémoire principale, puis rend la « main » au processus précédent.

Page 18: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

18

Niveaux des logiciels d’entrées-sortiesNiveaux des logiciels d’entrées-sortiesPilotesPilotes

• Les pilotes de périphériques s’occupent de traduire les requêtes des entrées-sorties dans des commandes propres à chaque contrôleur. Ils gèrent aussi une partie des erreurs matérielles. Ils s’intègrent enfin, dans le cas d’Unix, dans le système de fichiers.

• Les fichiers pouvant recouvrir à la fois des données sur disques, des périphériques,… Ce système de fichiers à l’avantage de présenter une interface uniforme aux entrées-sorties :

• d’adressage,• de protection,• d’allocation et de libération des périphériques,• de signalisation des erreurs, etc.

Page 19: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

19

Sous-système E/S du noyauSous-système E/S du noyau

• Fonctionnalités:– Ordonnancement E/S– Mise en tampon– Mise en cache– Mise en attente et réservation de périphérique– Gestion des erreurs

Page 20: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

20

Sous-système E/S du noyauSous-système E/S du noyauOrdonnancement E/SOrdonnancement E/S

• Optimiser l’ordre dans lequel les E/S sont exécutées – Chapitre 10 (partie ordonnancement disque)

Page 21: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

21

Sous-système E/S du noyauSous-système E/S du noyau Mise en tamponMise en tampon

• Double tamponnage: – P.ex. en sortie: un processus écrit le prochain

enregistrement sur un tampon en mémoire tant que l’enregistrement précédent est en train d’être écrit

– Permet superposition traitement/E/S

Page 22: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

22

Sous-système E/S du noyauSous-système E/S du noyauMise en cacheMise en cache

• Quelques éléments couramment utilisés d’une mémoire secondaire sont gardés en mémoire centrale

• Donc quand un processus exécute une E/S, celle-ci pourrait ne pas être une E/S réelle:– Elle pourrait être un transfert en mémoire, une

simple mise à jour d’un pointeur, etc.

Page 23: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

23

Sous-système E/S du noyauSous-système E/S du noyauMise en attente et réservation de périphérique: Mise en attente et réservation de périphérique:

spoulespoule

• Spoule ou Spooling est un mécanisme par lequel des travaux à faire sont stockés dans un fichier, pour être ordonnancés plus tard

• Pour optimiser l’utilisation des périphériques lentes, le SE pourrait diriger à un stockage temporaire les données destinés à la périphérique (ou provenant d’elle)– P.ex. chaque fois qu’un programmeur fait une impression,

les données pourraient au lieu être envoyées à un disque, pour être imprimées dans leur ordre de priorité

– Aussi les données en provenance d’un lecteur optique pourraient être stockées pour traitement plus tard

Page 24: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

24

Sous-système E/S du noyauSous-système E/S du noyauGestion des erreursGestion des erreurs

• Exemples d’erreurs à être traités par le SE:– Erreurs de lecture/écriture, protection,

périphérique non-disponible

• Les erreurs retournent un code ‘raison’

• Traitement différent dans les différents cas…

Page 25: Module Systèmes dexploitation Chapitre 11 Systèmes dentrée/sortie École Normale Supérieure Tétouan Département Informatique 2008-2009

25

Quiz Time!Quiz Time!

Questions?