Archie 5
7 pages
Français

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
7 pages
Français
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

COURS D’ARCHITECTURE DES ORDINATEURS Chapitre 5   : Exceptions et interruptions.    I) Gestion des interruptions    :L’environnement ext érieur est tr ès important, il faut en tenir compte. Quand le CPU  travaille, il se s’int éresse pas au monde ext érieur. Il a un fonctionnement synchrone (les  instructions sont ex écutées les une apr ès les autres. Le monde ext érieur est al éatoire et impr évisible, on dit qu’il est asynchrone.(par ex  : le temps  de r éponse de l’utilisateur est al éatoire) . Il y a un probl ème de synchronisation entre le CPU  et le monde ext érieur, il y a deux solutions  : soit le programme attend la donn ée arrive, soit le  CPU lit quelque part si la donn ée est pr ête. Si elle n’est pas pr ête, le CPU attend jusqu’ à qu’elle le soit. 99% du temps, le CPU attend, il fait un travail de fond en attendant les  instructions donn ées par le monde ext érieur, il ex écute ces instructions et retourne a son  travail de fond.On parle alors d’un programme pilot é par un flot de contr ôle (ici contr ôle à le sens de  pilote), contrairement aux programmes pilot é par un flot de donn ée.  La prise en compte des  événements ext érieurs s’appelle interruptions et exceptions. Termes d épendants des  constructeurs, certains ne parlent que d’interruptions, une interruption est li ée à un  événement externe, la source est un p ériphérique, ce sont des  événements asynchrones.Les exceptions  ou «  interruption interne ...

Sujets

Informations

Publié par
Nombre de lectures 329
Langue Français

Extrait

COURS D’ARCHITECTURE DES ORDINATEURS Chapitre5inteettionrrup.sxE:tpecsnoi
I)Gestiondesinterruptions:
L’environnement extérieur est très important, il faut en tenir compte. Quand le CPU travaille, il se s’intéresse pas au monde extérieur. Il a un fonctionnement synchrone (les instructions sont exécutées les une après les autres. Le monde extérieur est aléatoire et imprévisible, on dit qu’il est asynchrone.(par ex : le temps de réponse de l’utilisateur est aléatoire) . Il y a un problème de synchronisation entre le CPU et le monde extérieur, il y a deux solutions : soit le programme attend la donnée arrive, soit le CPU lit quelque part si la donnée est prête. Si elle n’est pas prête, le CPU attend jusqu’àqu’elle le soit. 99% du temps, le CPU attend, il fait un travail de fond en attendant les instructions données par le monde extérieur, il exécute ces instructions et retourne a son travail de fond. On parle alors d’un programme pilotépar un flot de contrôle (ici contrôleàle sens de pilote), contrairement aux programmes pilotépar un flot de donnéprise en compte dese. La événements extérieurs s’appelle interruptions et exceptions. Termes dépendants des constructeurs, certains ne parlent que d’interruptions, une interruption est liéeàunévénement externe, la source est un périphérique, ce sont desévénements asynchrones.
Les exceptionsou « interruption interne » sont parfaitement synchrone avec le CPU et sont liées au développement d’un programme. (ex : Anomalies détectées par le CPU (dépassement de pile), appel au système d’exploitation, division par zéro, défaut de page mémoire et défaut de paritémémoire.) (Rappel : un système d’exploitation est un programme qui remplace une machine physique en machine virtuelle, ce programme fournit des services et possèdent deux modes de fonctionnement : le mode utilisateur et le mode superviseur.)
Les interruptionsviennent desévénements extérieurs et sont liées aux périphériques. (Ex : requête de dispositifs d’Entrée/Sortie, défaut de paritémémoire.)
On ne peut gérer unévénement que si on est prêt avant, sa gestion est prévue mais sa date est inconnue. Pour une source donnée, on utilise toujours la même procédure. Il faut que l’arrêt du CPU soit propre (il doit finir l’instruction en cours). Il faut que l’on puisse reprendre la suite des instructions, pour cela on sauvegarde l’instruction que l’on vient de finir. Le CPU doit identifier la source de l’événement, il le fait grâceàun numéro, et alors le CPU lance la procédure (routine d’interruption) de l’adresse correspondante. Quelque part ( dans la mémoire ) il y a une table oùchaque numéro d’événement correspondàune adresse de procédure.
Sur le CPU il y a une broche qui sertàcesévénements, le CPU vérifieàla fin de chaque instruction si le bit de cette broche està1 ouà0. Dés qu’il està1, le CPU sauvegarde l’adresse de retour ( le compteur de programme), et le registre d’états. Il y a un autre endroit oùl’adresse de la procédure est stocké: le contrôleur d’entrée/sortie, il estàl’écoute des périphériques, des interruptions et les signale au CPU. Il faut synchroniser et donc mémoriser l’événement. S’il y a plusieursévénements arrivent durant la même instruction, le contrôleur les stocke dans une file et fait le tri par priorité.
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents