À certains moments, le processeur principal cesse de fonctionner et vérifie si un contrôleur lui a attribué un message. S'il l'a déjà fait, traite le message et reprend l'opération. Ceci s'appelle interrogation. De plus, il est clair que le processeur principal fait son travail et que les périphériques le font. Si le périphérique termine son travail ou si une erreur survient, il en informe le processeur principal par une demande d'interruption..
Dans les systèmes où davantage de circuits logiques externes communiquent via plusieurs interconnexions U / I avec un seul microprocesseur, la scrutation U / I est utilisée. Le micro-ordinateur appelle périodiquement chaque circuit logique externe et examine s’il a demandé un service. Si le circuit logique externe ne nécessite pas de maintenance, le micro-ordinateur examine le circuit logique externe suivant, etc. Si l'un d'entre eux nécessite une maintenance, le micro-ordinateur passe à l'exécution du programme serveur du circuit logique externe correspondant. La fonction de transfert U / I est incluse dans le programme. En d’autres termes, l’interrogation est un processus d’appel client (ordinateurs ou terminaux) qui peut envoyer des données après avoir été appelé (s’ils en ont). Si le client a des données, il les envoie après le sondage et s'il n'y a pas de données, le client répond négativement et le serveur appelle le client suivant. Certains périphériques peuvent nécessiter un entretien de la part du contrôleur (par exemple, lorsque certains périphériques terminent la mesure ou lorsqu'une erreur se produit). La demande est envoyée au contrôleur en définissant la ligne SRQ sur low. Une fois que le contrôleur a reçu une demande de service, il appelle tous les périphériques du bus pour trouver le périphérique qui a envoyé cette demande..
Pendant l'exécution d'un programme, le microprocesseur peut recevoir un signal d'interruption via les lignes IRQ spéciales. L'interruption est le plus souvent effectuée en appelant le sous-programme système approprié pour le traitement des interruptions - il s'agit du traitement de routine d'interruption BIOS ou DOS. Après le traitement de l'interruption, le processeur continue à exécuter le programme interrompu. En outre, le programme d'application lui-même peut contenir une instruction appelant l'exécution d'une routine d'interruption BIOS ou DOS. Les opérations d'entrée-sortie sont le plus souvent réalisées de cette manière. Par exemple, si un programme souhaite imprimer un signe à l'écran, il peut le faire en appelant la routine d'interruption appropriée. Le BIOS contient un ensemble de routines élémentaires d’entrée-sortie qui s’exécutent relativement rapidement. Les routines DOS correspondantes sont plus lentes mais leurs fonctionnalités sont plus étendues (possibilité de remplacer les canaux d’entrée-sortie, possibilité de contrôler les erreurs, etc.). Par conséquent, une interruption matérielle est le signal reçu par le processeur en provenance d’un autre périphérique de l’ordinateur et une interruption logicielle est le processus d’exécution d’une routine BIOS ou DOS (sous-routine) appelée automatiquement pour traiter le signal d’interruption reçu ou appelée à exécuter. les instructions correspondantes.
Dans le premier cas, le processeur vérifie à intervalles réguliers si un périphérique nécessite une action. En cas d’interruption, le processeur permet au périphérique externe (clavier, carte son, etc.) d’attirer l’attention du processeur..
Les interruptions sont des mécanismes spécialement organisés pour la communication de périphériques. Les périphériques informent la CPU si une action est nécessaire. La relève est un protocole - la CPU demande régulièrement aux périphériques si une action est requise..
Lors de l'interrogation, le microcontrôleur traite le périphérique qui a besoin d'attention, puis passe au périphérique suivant pour la surveillance. En cas d'interruption, lorsqu'un signal d'interruption est reçu, la CPU s'interrompt avec l'activité en cours et entretient l'appareil. Les services ou les interruptions traités sont nommés ISR (Interrupt Service Routing) ou gestionnaire d’interruptions..
Dans le processus d'interrogation, la CPU est en attente et vérifie si un périphérique a besoin d'un service. Cela fait perdre du temps inutilement. En revanche, en cas d’interruption du processus, le processeur n’est dérangé que si cela est nécessaire.
Les appareils ne peuvent être interrogés qu’à l’intervalle régulier où ils sont vérifiés. Une interruption peut survenir à tout moment.
Certains des avantages de la scrutation sont le programme relativement simple, la fiabilité de la transmission qui s’effectue à la vitesse maximale, c’est-à-dire dès que le périphérique d’E / S est prêt, et le besoin de puces d’accès supplémentaires. L’interruption est bénéfique car elle sert plusieurs appareils, elle est plus souple et plus efficace.
Les inconvénients de l'interrogation sont le temps de veille de certains périphériques qui est plus court que le temps de réponse, puis une autre méthode de transmission doit être appliquée, ainsi que le fait que le processeur consomme un temps inutile pour vérifier les périphériques qui n'ont pas recherché le transfert de données. Les inconvénients des interruptions sont la nécessité d'un matériel / logiciel plus complexe et la perte de temps jusqu'à ce que la CPU détermine quelles unités demandent une interruption..