27 May
Conceptos Fundamentales del Procesador
Para comprender el funcionamiento del procesador, es esencial conocer sus componentes clave y cómo interactúan:
Componentes Clave del Procesador
Contador de Programa (PC)
Contiene la dirección de la próxima instrucción que se va a leer.
Registros de Instrucción (IR)
Contiene la última instrucción que se ha leído.
Categorías de Acciones del Procesador
Cuando el procesador interpreta una instrucción y realiza una acción, esta puede clasificarse en las siguientes cuatro categorías:
- Procesador-Memoria: Se transfieren datos del procesador a la memoria o viceversa.
- Procesador-E/S: Se transfieren datos desde o hacia un dispositivo periférico, realizándose la transferencia entre el procesador y los módulos de E/S.
- Tratamiento de Datos: El procesador realiza alguna operación aritmética o lógica sobre los datos.
- Control: La instrucción solicita que se altere la secuencia de ejecución.
Gestión de Interrupciones y Eficiencia del Sistema
Interrupciones: Concepto y Tipos
Interrupción
Una interrupción es un evento que interrumpe la ejecución normal del procesador. Su principal función es mejorar la eficiencia del procesamiento. Las interrupciones pueden ser de varios tipos:
- De programa
- De reloj
- De E/S (Entrada/Salida)
- Por fallo de hardware
Interrupción Inhabilitada
Significa que el procesador ignorará la señal de interrupción. Si durante este tiempo se produce una interrupción, esta generalmente quedará pendiente y será comprobada por el procesador después de que este habilite las interrupciones.
Rutina de Tratamiento de Interrupción (RTI)
Cuando un dispositivo de E/S está disponible (es decir, preparado para aceptar más datos del procesador), el módulo de E/S de dicho dispositivo envía una señal de «solicitud de interrupción» al procesador. En respuesta, el procesador suspende la ejecución del programa en curso y salta a un programa específico que da servicio a dicho dispositivo de E/S, conocido como Rutina de Tratamiento de Interrupción (RTI). Una vez atendido el dispositivo, el procesador vuelve a la ejecución original.
Multiprogramación para la Eficiencia
Aun con el uso de interrupciones, un procesador puede no estar aprovechándose de manera muy eficiente. Por ejemplo, si el tiempo necesario para completar una operación de E/S es mucho mayor que el tiempo de ejecución del código de usuario entre llamadas de E/S, el procesador estará desocupado durante una gran parte del tiempo. Una solución a este problema es permitir que varios programas de usuario estén activos al mismo tiempo.
Mecanismos de Entrada/Salida (E/S)
E/S Programada
En este mecanismo, el procesador encuentra una instrucción de E/S y genera un mandato al módulo de E/S apropiado. El procesador adopta un papel activo mientras se atiende la instrucción de E/S, comprobando periódicamente el estado de la ejecución del módulo de E/S hasta que la operación ha finalizado.
Problema: El procesador pasa mucho tiempo esperando la finalización del módulo de E/S, lo que degrada gravemente el rendimiento del sistema.
Solución: Mientras se atiende al módulo de E/S, el procesador debería poder continuar con trabajo útil.
E/S Dirigida por Interrupciones
Es un evento asíncrono que interrumpe el flujo normal de ejecución, producido por un elemento externo al procesador.
Problema: En transferencias considerables de memoria a dispositivo o viceversa, conlleva un uso excesivo del procesador.
Solución: Acceso Directo a Memoria (DMA). Con un solo mandato se genera todo lo necesario para realizar la transferencia de información de memoria al dispositivo o viceversa.
Acceso Directo a Memoria (DMA, Direct Memory Access)
Es realizada por un módulo separado conectado al bus del sistema o incluida en un módulo de E/S. Es especialmente útil cuando el procesador desea leer o escribir un bloque de datos.
Excepciones y Modos de Operación del Procesador
Definición de Excepción
Una excepción es un evento inesperado generado por alguna condición que ocurre durante la ejecución de una instrucción. Es un evento síncrono. Ejemplos incluyen desbordamiento aritmético, dirección inválida o instrucción privilegiada.
Funcionamiento en Modo Dual
Surge la pregunta: ¿Qué ocurre si un programa accede o modifica la memoria donde se alojan los vectores de interrupciones? La solución es que el procesador dispone de diferentes modos de ejecución de instrucciones para garantizar la seguridad y estabilidad del sistema:
- Instrucciones Privilegiadas (Modo Supervisor/Kernel): Son aquellas cuya ejecución puede interferir en la ejecución de cualquier programa o del propio Sistema Operativo (SO). Por ejemplo, escribir en el puerto de un dispositivo.
- Instrucciones No Privilegiadas (Modo Usuario): Son aquellas cuya ejecución no presenta ningún problema de seguridad para el resto de programas. Por ejemplo, incrementar un contador.
Gestión de Procedimientos: La Pila
La Pila
La pila es una estructura de datos fundamental que se utiliza para controlar las llamadas a procedimientos y sus retornos. La cima es el único punto de la pila al que se puede acceder directamente en un momento dado.
Llamadas a Procedimientos y Retornos
Una técnica habitual para gestionar las llamadas a procedimientos y sus retornos se basa en el uso de una pila. Cuando el procesador ejecuta una llamada, guarda la dirección de retorno en la pila. Cuando ejecuta un retorno, utiliza la dirección que se encuentra en la cima de la pila.
Deja un comentario