25.10.2014 Views

Architecture des ordinateurs

Architecture des ordinateurs

Architecture des ordinateurs

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

IRQ standards (ISA)<br />

IRQ Allocation N°Interruption<br />

IRQ 0 System timer 0X8<br />

IRQ 1 Keyboard 0X9<br />

IRQ 3 Serial port #2 0xB<br />

IRQ 4 Serial port #1 0xC<br />

IRQ 5 Parallel port #2 0xD<br />

IRQ 6 Floppy Controller 0xE<br />

IRQ 7 Parallel port #1 0xF<br />

IRQ 8 Real Time Clock 0x70<br />

IRQ 9 Available 0X71<br />

IRQ 10 Available 0X72<br />

IRQ 11 Available 0x73<br />

IRQ 12 Mouse 0x74<br />

IRQ 13 87 ERROR line 0X75<br />

IRQ 14 Hard Drive Controller 0x76<br />

♦IRQ 0 est associée à l'interruption 8<br />

♦Sous linux : cat /proc/interrupts<br />

Interruptions internes et logicielles<br />

♦Interruptions internes : détectées par le processeur<br />

Faute : détectée avant l'exécution (violation de segment)<br />

Trappe : résultat d'une instruction (division par zéro)<br />

Abandon : protection générale<br />

♦Interruptions logicielles : instructions INT et IRET<br />

Permet à un programme d'accéder à un sous-programme<br />

d'interruption<br />

• Pour dialoguer avec <strong>des</strong> périphériques<br />

• Pour dialoguer avec le système d'exploitation<br />

2006/2007 Licence ST mention Informatique L3 4-53<br />

2006/2007 Licence ST mention Informatique L3 4-54<br />

Interruptions standards<br />

N° Interruption Description Type<br />

0x0 Erreur de division Faute<br />

0x1 Exception pas à pas<br />

0x2 NMI<br />

0x3 Point d'arrêt Trappe<br />

0x4 Dépassement (overflow) Trappe<br />

0x5 Teste limite (Bound check) Faute<br />

0x6 Code opération erroné Faute<br />

0x7 Coprocesseur non disponible Faute<br />

0x8 Double faute Abandon<br />

0x9 Dépassement segment coprocesseur Abandon<br />

0xA Task State Segment Erronée Faute<br />

0xB Segment absent Faute<br />

0xC Exception pile Faute<br />

0xD Protection générale Faute<br />

0xE Défaut de page Faute<br />

0x10 Erreur coprocesseur Trappe<br />

♦Certains numéros sont communs aux IRQs<br />

Le sous-programme doit faire la différence<br />

2006/2007 Licence ST mention Informatique L3 4-55<br />

Appel d'une procédure d'interruption<br />

♦INT - Similaire au CALL<br />

Faute : l'adresse de l'instruction qui cause la faute est empilée<br />

• L'instruction sera re-exécutée après l'interruption<br />

Autre : l'adresse de l'instruction suivante est empilée<br />

Le registre EFLAGS est empilé<br />

Saut à l'adresse de la procédure d'interruption<br />

• Déterminée en utilisant une table de <strong>des</strong>cription (IDT)<br />

♦Retour : IRET<br />

EFLAGS puis l'adresse de retour sont dépilés<br />

2006/2007 Licence ST mention Informatique L3 4-56

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!