Taller Clase #2
Giovanny Varón
Febrero de 2020
Universidad Libre – Seccional Cúcuta
Norte de Santander
Sistemas Operativos
Taller
1. ¿Qué es una interrupción?
Una interrupción es un mecanismo que permite ejecutar un bloque de
instrucciones interrumpiendo la ejecución de un programa, y luego restablecer la
ejecución del mismo sin afectarlo directamente. De este modo un programa puede ser
interrumpido temporalmente para atender alguna necesidad urgente del computador y
luego continuar su ejecución como si nada hubiera pasado. [ CITATION Orl \l 2058 ]
2. ¿Cuáles son los tipos de interrupciones? Describa cada una.
Básicamente, existen seis clases de interrupciones:
Interrupciones SVC (SuperVisor Call, llamadas al supervisor). Son iniciadas por un
proceso en ejecución para solicitar una operación de E/S, obtener memoria, …
Interrupciones de E/S. Son iniciadas por el hardware de E/S. Indican a la CPU el
cambio de estado de un canal o dispositivo. Se producen cuando finaliza una operación
de E/S o cuando un dispositivo para a estado de listo.
Interrupciones externas. Son causadas por diversos sucesos, incluyendo la expiración
del cuantum de reloj, la pulsación de la tecla de interrupción del teclado,…
Interrupciones de reinicio. Ocurren cuando se pulsa el botón de reinicio de la consola
(Reset),…
Interrupciones de verificación del programa. Son causadas por varios tipos de errores
experimentados al ejecutar un proceso, como una operación de división por cero, formato
de datos erróneo, ejecución de una operación inválida, intento de acceder a una posición
de memoria fuera de los límites (violación de memoria),…
Interrupciones de verificación de la máquina. Son ocasionadas por el mal
funcionamiento de la máquina
3. ¿Qué sucede cuando ocurre una interrupción?
Cuando se genera una interrupción:
1. El sistema operativo toma el control, es decir, el hardware pasa el control al sistema
operativo.
2. El sistema operativo guarda el estado del proceso interrumpido, en muchos sistemas
esta información se guarda en el PCB del proceso interrumpido.
3. El sistema operativo analiza la interrupción y transfiere el control a la rutina apropiada
para atenderla. En algunos sistemas el hardware se encarga de esto automáticamente.
4. La rutina del manejador de interrupciones procesa la interrupción.
5. Se restablece el estado del proceso interrumpido o del siguiente proceso.
6. Se ejecuta el proceso interrumpido o el siguiente proceso. Una interrupción puede ser
generada específicamente por un proceso en ejecución en cuyo caso le suele denominar
trampa o trap y se dice que está sincronizada con la operación del proceso o bien puede
ser causada por algún evento que puede estar relacionado o no con el proceso en
ejecución en cuyo caso se dice que es asíncrona con la operación en proceso.
4. Defina SVC – Llamadas al Supervisor e interrupciones NMI y MI.
Interrupciones SVC (llamada al supervisor). Son iniciadas por un proceso en estado de
ejecución que ejecuta la instrucción SVC. Una SVC es una petición generada por el
usuario para un servicio particular del sistema, como la realización de entrada/salida, la
obtención de más almacenamiento o la comunicación con el operador del sistema. El
mecanismo SVC ayuda a mantener el sistema operativo a seguro de los usuarios. Un
usuario no puede entrar arbitrariamente al sistema operativo; en lugar de esto, el usuario
debe hacer una petición de servicio por medio de una SVC. Así, el sistema operativo se
da cuenta de todos los intentos realizados por los usuarios para cruzar sus fronteras, y
puede negar ciertas peticiones Si el usuario no tiene los privilegios apropiados.
Interrupciones por hardware no enmascarables (NMI): Aquellas que siempre
interrumpen al programa.
Si se activa la interrupción no enmascarable NMI (asignada al refresco de memoria,
errores de adaptadores y paridad) se ejecutarán obligatoriamente las rutinas asociadas.
Esto se debe a la importancia de los recursos a los que está asociado.
Para el resto de las IRQ, (enmascarables de 0 a 15) se puede mediante programación
adecuada, evitar la ejecución de las ruinas asociadas. (P. Ej., se puede evitar que el
teclado detenga la ejecución de un programa).
Interrupción enmascarable: significa que, bajo control del software, el procesador
puede aceptar o ignorar (enmascarar) la señal de interrupción. Para ello se envía una
señal a la patilla INTR , y el procesador la atiende o la ignora en función del contenido de
un bit (IF) en un registro (FLAGS) que puede estar habilitado o deshabilitado. En el
primer caso, cuando se recibe la señal, el procesador concluye la instrucción que
estuviese en proceso y a continuación responde con una combinación de señales en
algunas de sus patillas componiendo una sucesión de dos señales INTA ("Interrupt
Acknowledge").
5. Describa gráficamente la transferencia de control por medio de
interrupciones.
6. ¿Como es el ciclo de instrucciones con interrupciones?
7. Que es PSW Program Status Word
El registro PSW (Program Status Word) o palabra de estado del programa, contiene
la información del estado de la CPU. Contiene los indicadores o flags que usan las
instrucciones condicionales para tomar decisiones. Estos indicadores se cambian de
forma automática cuando alguna de las instrucciones que se muestran en la siguiente
tabla es ejecutada, también pueden ser modificados por el usuario. El PSW se encuentra
en la dirección directa 0D0H (zona de SFRs) y sus bit admiten el direccionamiento bit a
bit.[ CITATION Alc \l 2058 ]
8. Describa la Deshabilitacion/Habilitación de interrupciones.
Por ejemplo, para habilitar la interrupción del timer periódico habría que codificar las
siguientes instrucciones:
MOV A, 2
OUT 0
STI
El procesador siempre comienza con las interrupciones deshabilitadas. El estado de las
interrupciones se puede comprobar en el bit M (Interrupt Mask Bit) del Registro de
Estado.
9. Describa con pantallazos o screenshots el manejo de las interrupciones en el
S.O Windows. Defina IRQ.
IRQ: Las IRQ (Interrupciones de Hardware) son avisos que el hardware envía al micro-
procesador de una computadora a través de señales físicos a los circuitos de la misma
CPU. Las solicitudes de interrupción están basadas en un sistema de prioridades de modo
que el procesador pueda o no ignorar determinadas peticiones.
Lista de referencias
Bibliografía
Alciro. (s.f.). El PSW Program Status Word. Obtenido de www.alciro.org
Hidalgo, U. A. (s.f.). Sistemas Operativos - Apuntes Digitales. Obtenido de
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro26/portada.html
Orlando Leon. (s.f.). Interrupciones en los sistemas operativos. Obtenido de
https://es.calameo.com/books/003103784fd030ca4802d