Voila, j'inaugure mon journal par cette question angoissante et existentielle, copie d'un post (http://linuxfr.org/comments/203996.html) lancé lors d'une dépêche sur l'Opteron (et cette fois-ci, avec la case bien cochée).
Si un dlfp-naute calé en hardware avait la réponse, je lui en serais reconnaissant.
« Complètement vrai.
Ceci m'amène à une autre question. L'architecture d'un PC a toujours été très loin de représenter l'idéal en la matière (même dans les premières années), mais même sachant cela, il y a quelque chose qui m'a toujours échappé.
Comment se fait-il que les périphériques d'un PC aient besoin d'une IRQ exclusive ?
Qu'ils aient tous une adresse I/O qui leur est propre, ça c'est normal. Mais l'IRQ, pour autant que je sache, c'est une ligne qui permet d'interrompre automatiquement le processeur lorsqu'elle passe à un état déterminé (en général 0), lequel processeur se charge alors de vérifier quel périphérique a sonné et a besoin d'être traité. En ce sens, une seule IRQ devrait être suffisante pour tout le monde.
En 1987, j'utilisais un MO6 dont le 6809 local ne proposait que trois interruptions matérielles (à part Reset), dont seule l'IRQ était réellement exploitée. Cela suffisait à gérer une souris, une crayon optique, un lecteur de disquette, un clavier, un timer (le clignotement du curseur était réalisé en soft) et plusieurs autres périphériques. Le tout emmené dans une joyeuse farandole à 1 Mhz.
En principe, une ligne que l'on active en la mettant à la masse peut très supporter un OU câblé, et a partir du moment où au moins un périphérique relie cette ligne à la masse, l'interruption est déclenchée, et le pilote passe en revue les ports des périphériques susceptibles d'interrompre le processeur et traite chacun d'eux le cas échéant.
Pourquoi tant de soucis sur un PC ? ».
# Re: Comment ca marche, les IRQ sur PC ?
Posté par Kibos . Évalué à 3.
Si tu n'as pas d'IRQ differents, tu ne peux pas "queuer" par ordre de priorité les IRQ arrivant puisque tu ne sais pas a quoi l'IRQ unique correspond. J'espère que je suis assez clair (il est tard).
En gros, si tu as un seul IRQ, il va falloir aller voir qui veut le proc, si un IRQ arrive à ce moment là tu en fais quoi ? si tu l'ignores les IRQ ne servent plus à rien, si tu le queues pour le traiter après tu fais peut-être attendre un truc plus pressant que celui que tu traites, et si tu le traites en faisant attendre celui que tu traitais, il n'est peut-être pas aussi prioritaire que ça et tu as fait poireauter ton premier IRQ pour rien.
# Re: Comment ca marche, les IRQ sur PC ?
Posté par Sébastien Koechlin . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.