Arquitectura Flashcards
(10 cards)
Que es el estado del procesador
Conjunto completo de información que define la situación actual de la CPU en un momento determinado.
*Incluye todos los valores que afectan la ejecución de instrucciones y permite al SO realizar cambios de contexto entre procesos,
*flags + los registros.
Quien se encarga de las interrupciones
Son gestionadas por el PIC (prorgam interrupt controller): Componente hardware que
gestiona las interrupciones de dispositivos periféricos antes de que lleguen a la CPU.
Su función es priorizar interrupciones, tomarlas y cargarlas a la CPU.
Trabaja en conjunto con el interrupt handler (que está en memoria principal), un vector con los bits de prioridad.
Flujo de una interrupcion
- Dispositivo envía señal al PIC
- PIC decide si enviarla a la CPU (basado en máscaras/prioridades)
- Si la interrupción es aceptada:
- PIC envía señal INTR a CP
- CPU termina instrucción actual
- Consulta al PIC qué interrupción ocurrió (leer registro)
- CPU salta al handler correspondiente. Antes de ejecutar el handler, la CPU guarda el estado actual del proceso que se estaba ejecutando (contexto).
Enmascarable vs no enmascarable
Enmascarable: El procesador puede ignorarlas momentaneamente. Son fallos del sistema
No enmascarable: NO se puede seahbilitar. De prioridad inmediata. Asociadas a errores HW severos.
Interrupciones
De HW. Causadas por un hardware externo al CPU.
Ocurre al finalizar el ciclo de instrucción.
Son asincrónicas, no se sabe cuando aparecen.
Usan IRQs (interrupt request).
Es el mecanismo
físico que solicita una interrupción. Es una línea
física que conectan dispositivos al PIC, cada dispositivo tiene asignada una IRQ.
“Entran al CPU desde el I/O”
Excepciones
De CPU. Ocurren dentro del ciclo de instrucción, surgen
como consecuencia de la ejecución de una instrucción.
Son sincrónicas, se sabe cuando aparecen.
“Salen del CPU”
No son IRQs, son errores/eventos sincronicos
(ocurren durante la ejecución de una instrucción)
Ejemplos de interrupciones
INTERRUPT Enmascarable: Presionar una tecla en el
teclado, cuando el disco duro termina de leer datos.
No enmascarable: Error de memoria RAM (fallo
de paridad en los datos), fallos de alimentación (“power fail” antes de un apagado)
EXCEPTIONS Enmascarable: Page Fault (acceso a memoria
no mapeada, se puede cargar la pagina desde disco y reintentar)
No enmascarable: Divide error (div por 0), double fault (cuando el CPU falla al manejar otra excepción).
Cual es el ciclo de instruccion
FETCH: El CPU usa el registro IP para obtener la instruccion desde la memoria
DECODE
FETCH OPERADS
EXECUTE
Cuando ocurre la interrupcion en el ciclo de instruccion?
Luego del EXECUTE, esta en Write back y si estan las interrupciones habilitadas ocurre
Interrupciones, cambio de contexto y cambio de modo
Cuando ocurre una interrupcion, el sistema debe guardar el cambio de contexto del proceso actual y pasar a modo kernel para atenderla.