Вы находитесь на странице: 1из 13

Introduction-interruptions

certains vnements permettent galement de modier IP

- vnement "externe" (clavier, horloge, ...) - droutement (erreurs, division par 0, ...)

un traitement spcique software doit dmarrer on appelle cela une interruption

Systmes dexploitation 1re anne p. 1

Introduction-interruptions
La notication arrive au CPU par un l Le CPU connait ladresse du traitement de linterruption survenue Le CPU donne la bonne valeur IP, cest un mcanisme hardware

Systmes dexploitation 1re anne p. 2

Introduction-interruptions
traitement dune interruption :

- arrter le programme en cours - excuter le code de service de linterruption - reprendre ventuellement lexcution du programme

Systmes dexploitation 1re anne p. 3

Introduction-interruptions
le code utilisateur et systme coxistent en RAM ! !

quelle est ladresse du traitement de linterruption ? quelle est la bonne valeur donner IP au retour ? quen est-il des registres en cours dutilisation ?
Systmes dexploitation 1re anne p. 4

Introduction-interruptions
Sur intel les adresses sont sokces en RAM dans le vecteur des interruptions

problmes rsoudre :

- revenir au programme interrompu - sauvegarder les registres en cours dutilisation par le programme - protgerle code du traitement en RAM

Comment raliser cela ? SP et modedexploitation 1re anne Systmes

p. 5

Introduction-interruptions
une zone de la mmoire va servir mmoriser les valeurs de plusieurs registres

on appelle cela une Pile ou Stack le sommet est point par un registre spcique : SP

La taille de la pile varie comment se prsente une pile ? pourquoi ne suft-il pas de doubler les registres du CPU pour cette sauvegarde ?
Systmes dexploitation 1re anne p. 6

Introduction-interruptions
retour - IP et pile

la valeur de IP doit tre sauvegarde avant dtre modie le CPU se charge de la sauvegarder SP est le registre pointeur de pile

Systmes dexploitation 1re anne p. 7

Introduction-interruptions
sauvegarde - pile sauvegarde des registres autres que IP par le traitement de linterruption utilise galement la pile

Systmes dexploitation 1re anne p. 8

Introduction-interruptions
protection - mode

Laccs toute la RAM et instructions est soumis certains privilges Le code sr (code systme) a tous les droits Le basculement en mode privilgi est automatique lors des interruptions

le CPU a diffrents modes de fonctionnement (privilges diffrents)


Systmes dexploitation 1re anne p. 9

Introduction-interruptions
en cas dinterruption, le CPU (hardware) soccupe de

- basculer en mode privilgi - sauvegarder la valeur de IP (instruction suivante) dans la Pile - mettre dans IP ladresse du traitement de linterruption

Systmes dexploitation 1re anne p. 10

Emergence-interruptions

boucle dinterprtation dune instruction par le processeur NB. Une instruction commence se termine toujours

Systmes dexploitation 1re anne p. 11

Introduction-interruptions
ensuite le code de linterruption (software) :

- sauvegarde des registres utiliss sur la pile - traite les instructions (par la machine simplie) ... - restaure les registres depuis la pile - la dernire instruction de ce code restaure le mode et la valeur de IP depuis la pile

Systmes dexploitation 1re anne p. 12

Emergence-interruptions
- plusieurs numros dinterruption => le CPU connait leurs adresses de traitement - les traitements dinterruption sexcutent en "mode privilgi"

Systmes dexploitation 1re anne p. 13

Вам также может понравиться