La única diferencia es cómo se activan. El hardware desencadena una interrupción de hardware (por lo general, algunos periféricos externos a la CPU, como un adaptador de red, un chip de sonido, etc.), mientras que una interrupción de software es causada por el propio software, al igual que una llamada de función.
En ambos casos de interrupciones HW y SW, el control se redirige a una rutina de servicio de interrupción cuyo trabajo es tomar las medidas necesarias y luego devolver el control al punto donde tuvo lugar la interrupción. A menudo, el objetivo en la rutina de interrupción es hacer el trabajo mínimo necesario para devolver el control al programa anterior, aplazando acciones más complejas que se manejarán más tarde durante el tiempo de inactividad de la CPU. Esto se conoce como una “llamada de procedimiento diferido”, o DPC, y evita que las interrupciones de hardware degraden el rendimiento general del sistema de forma impredecible al priorizar siempre esas interrupciones sobre otro trabajo.
En los primeros días de la PC, el BIOS proporcionó una variedad de control de sistema de bajo nivel a través de interrupciones de software. Por ejemplo, una serie de funciones proporcionó una salida de video simple en int 10h, y los discos se podían leer, escribir o formatear a nivel de sector usando int 13h. Del mismo modo, MS-DOS proporcionó servicios de sistema operativo de nivel superior, como apertura de archivos, creación, lectura y escritura en int 21H. En cierto modo, estas fueron las primeras API residentes en la memoria, antes del advenimiento de las API de sistemas operativos más complejas que usan DLL en Windows o bibliotecas dinámicas en Linux.
- ¿Existe un software de programación que pueda usar para mis salas de conferencias?
- ¿Existe una aplicación útil para recuperar fotos del teléfono?
- De todas las aplicaciones de Android, ¿cuáles pueden ser muy útiles?
- ¿Qué aplicación puede abrir un archivo vectorial PSP (Paintshop Pro) y exportarlo como EPS o AI, sin fusionar las capas y aplanarlo, y sin eliminar el fondo transparente?
- ¿Cuáles son ejemplos de o más perspectivas generales para la práctica contemplativa asistida por software?
También hay una clase de interrupciones de software (“excepciones”) que están bajo el control de la CPU pero que el programa en ejecución no llama explícitamente. Los ejemplos serían fallas de página causadas por el acceso a la memoria que se ha cambiado a almacenamiento externo, o violaciones de acceso causadas por tocar la memoria que el programa no tiene permitido. En tales casos, el control se redirige a una rutina del sistema operativo que maneja la situación, como bloquear el programa con gracia en caso de violación de acceso, o cargar una página necesaria desde el almacenamiento externo y volver al punto de una falla de la página como si nada sucediera .