En ciertos momentos, el procesador principal deja de funcionar y comprueba si algún controlador tiene un mensaje, si lo tiene, procesa el mensaje y reanuda la operación. Esto se llama sondeo. Además, está claro que el procesador principal hace su trabajo y los dispositivos están haciendo su trabajo. Si el dispositivo finaliza su trabajo o se produce un error, el dispositivo informa al procesador principal con una solicitud de interrupción.
En los sistemas donde más circuitos lógicos externos se comunican a través de múltiples interconexiones U / I con un solo microprocesador, se utiliza el sondeo U / I. El microordenador llama periódicamente a cada circuito lógico externo y examina si ha solicitado servicio. Si el circuito lógico externo no requiere servicio, el microordenador examina el siguiente circuito lógico externo, etc. Si uno de ellos requiere servicio, el microordenador pasa a ejecutar el programa de servicio de los respectivos circuitos lógicos externos. La función de transferencia U / I está incluida en el programa. En otras palabras, el sondeo es un proceso de llamadas de clientes (computadoras o terminales) que puede enviar datos después de ser llamado (si tienen alguno). Si el cliente tiene datos, los envía después de la encuesta, y si no hay datos, el cliente responde negativamente y el servidor llama al siguiente cliente. Algunos dispositivos pueden requerir mantenimiento desde el controlador (por ejemplo, cuando algún dispositivo termina la medición o cuando ocurre un error). La solicitud se envía al controlador ajustando la línea SRQ a bajo. Después de que el controlador recibe una solicitud de servicio, llama a todos los dispositivos en el bus para encontrar el dispositivo que envió esa solicitud.
Durante la ejecución de un programa, el microprocesador puede recibir una señal de interrupción a través de las líneas especiales de IRQ. La interrupción se realiza con mayor frecuencia llamando a la subrutina del sistema adecuada para el procesamiento de interrupciones, lo que se denomina procesamiento de rutina de interrupción de BIOS o DOS. Después del procesamiento de la interrupción, el procesador continúa ejecutando el programa interrumpido. Además, el propio programa de aplicación puede contener una instrucción que requiere la ejecución de una rutina de interrupción de BIOS o DOS. Las operaciones de entrada-salida se realizan más comúnmente de esta manera. Por ejemplo, si un programa quiere imprimir un letrero en la pantalla, puede hacerlo llamando a la rutina de interrupción apropiada. El BIOS contiene un conjunto de rutinas de entrada-salida elementales que se ejecutan de manera relativamente rápida, y las rutinas de DOS correspondientes son más lentas pero sus capacidades son mayores (la posibilidad de anular los canales de entrada-salida, la posibilidad de controlar errores y demás). Por lo tanto, la interrupción de hardware es la señal recibida por el procesador desde otro dispositivo en la computadora, y la interrupción de software es el proceso de ejecución de una rutina de BIOS o DOS (subrutina) que se llama automáticamente para procesar la señal de interrupción recibida o que debe ejecutarse las instrucciones correspondientes.
En el primer caso, el procesador comprueba a intervalos regulares si un dispositivo necesita una acción. En caso de una interrupción, hay un mecanismo mediante el cual el procesador permite que el dispositivo externo (por ejemplo, un teclado, una tarjeta de sonido, etc.) atraiga la atención del procesador..
Las interrupciones son mecanismos especialmente organizados para la comunicación de dispositivos periféricos. Los dispositivos notifican a la CPU si se necesita una acción. El protocolo de sondeo es el protocolo: la CPU pregunta a los dispositivos regularmente si se requiere una acción.
Al sondear, el microcontrolador da servicio al dispositivo que necesita atención, y luego pasa al siguiente dispositivo para monitorearlo. En caso de interrupción, cuando se recibe una señal de interrupción, la CPU se detiene con la actividad actual y da servicio al dispositivo. Los servicios o la interrupción procesada se denominan rutina de servicio de interrupción (ISR) o controlador de interrupción.
En el proceso de sondeo, la CPU está en espera y verifica si algún dispositivo necesita un servicio. Esto desperdicia tiempo innecesariamente. En caso de un proceso de interrupción, por otro lado, la CPU se altera solo si es necesario.
Los dispositivos se pueden sondear solo en el intervalo regular cuando se verifican. La interrupción puede ocurrir en un momento dado.
Algunas de las ventajas del sondeo son el programa relativamente simple, la confiabilidad de la transmisión que tiene lugar a la velocidad máxima, es decir, tan pronto como el dispositivo de E / S está listo y la necesidad de chips de acceso adicionales. La interrupción es beneficiosa porque puede servir para múltiples dispositivos, es más flexible y eficiente.
Las desventajas del sondeo son el tiempo de espera de algunos dispositivos que es más corto que el tiempo de respuesta y luego se debe aplicar otro método de transmisión, así como que la CPU consume tiempo innecesario para verificar los dispositivos que no han buscado la transferencia de datos. Las desventajas de las interrupciones son el requisito de hardware / software más complejo y la pérdida de tiempo hasta que la CPU establece qué unidades solicitan la interrupción.