Registros del procesador

Anuncio
Contenido
Tema 1:
 
 
 
 
Introducción a los Sistemas
Informáticos
Elementos básicos
Registros del procesador
Ejecución de instrucciones
Interrupciones
Secciones Stallings: 1.1 – 1.4
A.Ortigosa
Sistema Operativo
  Procesador (CPU cuando sólo hay uno)
  Memoria principal
 
 
 
3
almacena datos y programas
= memoria real = memoria primaria
volátil
  Módulos E/S: transportan datos entre procesador y
 
 
 
dispositivos de memoria secundaria
equipos de comunicación
terminales
  Interconexión de sistemas (buses)
 
Tema 1 - Lección 1
Comunicación entre procesadores, memoria principal y módulos E/S
A.Ortigosa
Componentes (alto nivel)
Tema 1 - Lección 1
4
Registros del procesador
Memoria principal
CPU
Bus del
sistema
  Registros visibles al usuario
Instrucción
Instrucción
Instrucción
 
Datos
Datos
Datos
Datos
Unidad de
ejecución
 
 
PC
IR
MAR
MBR
I/O AR
I/O BR
=
=
=
=
=
=
Contador de programa
Registro de instrucciones
Registro de direcciones de memoria
Registro intermedio de memoria
Registro de direcciones de E/S
Registro intermedio de E/S
Figura 1.1. Componentes de un ordenador: visión de alto nivel
Tema 1 - Lección 1
Permiten al programador minimizar referencias a
memoria principal, optimizando el uso de estos registros
Ej: registro de datos
  Registros de control y de estado
Módulos de E/S
A.Ortigosa
2
Elementos básicos de S.I.
  Explota los recursos del Hardware de uno o
más procesadores para
  Ofrece un conjunto de servicios a los
usuarios del sistema
  Gestiona memoria secundaria y dispositivos
E/S
A.Ortigosa
Tema 1 - Lección 1
 
 
5
Usados por el procesador para controlar las operaciones
del procesador
Usados por las rutinas del SO para controlar la ejecución
de los programas
Ej: contador del programa
A.Ortigosa
Tema 1 - Lección 1
6
1
Registros visibles al usuario
Registros visibles al usuario
  Registros de direcciones
(de instrucciones o de datos). Ejemplos:
  Pueden ser referenciados mediante lenguaje
máquina
  Disponibles para todos los programas
(de aplicación y del sistema)
  Tipos de registros
 
 
 
Registro de índice
 
Puntero de segmento
 
 
Datos
Direcciones (de memoria principal)
 
 
 
De instrucciones
De datos
A.Ortigosa
7
Cuando la memoria se divide en segmentos, se referencia
mediante referencia al segmento particular + desplazamiento
dentro del segmento
Puntero de pila
 
Tema 1 - Lección 1
Implica sumar un índice a un valor base para obtener la dirección
efectiva
Apunta a la cima (tope) de la pila
A.Ortigosa
Registros de control y de estado
Fase de búsqueda
Contiene la dirección de la instrucción a ser leída
  Registro de instrucción (IR)
 
Contiene la última instrucción leída
INICIO
  Palabra de estado del programa (PSW)
 
Códigos de condición (flags)
Ejecutar
instrucción
FIN
  Fase de búsqueda: procesador busca instrucción
de memoria
  Contador de programa (PC) mantiene dirección
de la siguiente instrucción a leer
=> se incrementa después de cada lectura
  Activados por el Hw como resultado de operaciones
  Programa puede leerlos, pero no modificarlos
  Ejs: resultado positivo, resultado negativo, cero (zero), desbordamiento
(overflow)
 
 
Bit para habilitar/deshabilitar interrupciones
Bit indicando modo supervisor/usuario
A.Ortigosa
Tema 1 - Lección 1
9
Registro de instrucción (IR)
Memoria
Paso 1
Se transfieren datos entre ambos (en cualquier dirección)
Memoria
Procesador-E/S
 
Tratamiento de datos
 
Control
 
Operaciones aritméticas o lógicas sobre los datos
Registros de CPU
Paso 2
Registros de CPU Memoria
Registros de CPU
Memoria
Paso 4
Registros de CPU Memoria
Registros de CPU
Altera la secuencia de la ejecución (saltos)
Tema 1 - Lección 1
10
Ciclo 2 (lectura + ejecución)
Paso 3
Ciclo 3 (lectura + ejecución)
Paso 5
A.Ortigosa
Registros de CPU Memoria
Se transfieren datos desde o hacia un dispositivo periférico (a
través del módulo E/S)
 
 
Tema 1 - Lección 1
Ciclo 1 (lectura + ejecución)
Procesador-memoria
 
A.Ortigosa
Ejemplo de ejecución de programa
  En él se coloca la instrucción leída
  Tipos de instrucciones
 
Buscar
instrucción
siguiente
Fase de ejecución
Contiene información de estado
 
 
8
Ciclo básico de instrucción
  Contador del programa (PC)
 
Tema 1 - Lección 1
11
A.Ortigosa
Paso 6
Tema 1 - Lección 1
12
2
Ejemplo de ejecución de programa
  Procesadores modernos: instrucciones con
más de una dirección
=> ejecución puede involucrar a varias
referencias a memoria
A.Ortigosa
Tema 1 - Lección 1
Interrupciones
  Interrupción de la secuencia normal de
ejecución
  Suspensión de un proceso causada por un
evento externo al mismo de forma que el
proceso podrá ser retomado
  Mejora la eficiencia del procesamiento
  Permite al procesador ejecutar otras
instrucciones durante E/S
13
A.Ortigosa
Clases de interrupciones
 
 
 
  El control se transfiere a este programa
  Determina la naturaleza de la interrupción y
realiza las acciones necesarias (detener
proceso, …)
  Generalmente es una rutina parte del SO
Desbordamiento aritmético
División por cero
Intento de ejecutar instrucción ilegal
Referencia a zona de memoria fuera del espacio de
trabajo del usuario
  De reloj: para funciones periódicas
  De E/S: para indicar normalidad/error
  Fallo de Hw: cortes de energía, errores de
paridad de memoria, etc.
A.Ortigosa
Programa de
usuario
Tema 1 - Lección 1
Programa
de E/S
Programa de
usuario
15
Programa Programa de
de E/S
usuario
14
Manejador de interrupciones
  De programa
 
Tema 1 - Lección 1
A.Ortigosa
Tema 1 - Lección 1
16
Programa
de E/S
Ciclo de interrupción
Orden
de E/S
ESCRIBIR
ESCRIBIR
Orden
de E/S
ESCRIBIR
Orden
de E/S
Ciclo de búsqueda
Ciclo de ejecución
Ciclo de interrupción
FIN
Rutina de
tratamiento
de interrupc.
Rutina de
tratamiento
de interrupc.
ESCRIBIR
ESCRIBIR
ESCRIBIR
FIN
ESCRIBIR
ESCRIBIR
(a)  Sin interrupciones
Interrupciones
deshabilitadas
INICIO
FIN
Buscar
instrucción
siguiente
Ejecutar
instrucción
FIN
ESCRIBIR
(b) Con interrupciones y corta
espera E/S
Comprobar
interrupción;
Inicia manejador
Interrup. de interrupción
habilitadas
(c) Con interrupciones y larga
espera de E/S
Figura 1.7. Ciclo de instrucción con interrupciones
Figura 1.5. Flujo de control del programa con y sin interrupciones
A.Ortigosa
Tema 1 - Lección 1
17
A.Ortigosa
Tema 1 - Lección 1
18
3
Ciclo de interrupciones
Interrupciones múltiples
Programa del usuario
  Procesador comprueba si hay interrupciones
  Si no, lee la siguiente instrucción del
programa
  Si hay interrupción pendiente, suspende
ejecución del programa y ejecuta el
manejador de interrupciones
Rutina X de tratamiento de int.
  2 posibilidades:
 
 
Deshabilitar
interrupciones
Definir prioridades
Rutina Y de tr.int.
(a) Tratamiento de interrupciones secuencial
Programa del usuario
Rutina X de tratamiento de int.
Rutina Y de tr.int.
(b) Tratamiento de interrupciones anidado
A.Ortigosa
Tema 1 - Lección 1
19
A.Ortigosa
Interrupciones múltiples. Orden
secuencial
Interrupciones múltiples.
Prioridades
  Se deshabilitan interrupciones para que el
procesador complete la tarea
  Interrupciones quedan pendientes hasta que el
procesador habilita interrupciones
  Cuando el manejador de interrupciones termina,
el procesador comprueba si hay interrupciones
adicionales antes de retomar la tarea inicial
  Limitación: prioridades o necesidades críticas de
tiempo
A.Ortigosa
Tema 1 - Lección 1
21
  Interrupción de mayor prioridad hace esperar
a las de menor prioridad
  Provoca la parada del manejador de
interrupciones de menor prioridad
  Ejemplo: entrada por línea de
comunicaciones, necesita ser procesada
rápido para hacer espacio para las siguientes
A.Ortigosa
Multiprogramación
Tema 1 - Lección 1
Tema 1 - Lección 1
22
Para la próxima clase
  Procesador tiene más de un programa a ejecutar
  La secuencia de ejecución de programas
depende de su prioridad relativa y de si están
esperando E/S
  Después del procesamiento de una interrupción,
el control puede no volver al programa que se
ejecutaba cuando se recibió la interrupción, sino
a otro pendiente de mayor prioridad
A.Ortigosa
Figura
1.12.
de control con múltiples interrupciones
Tema
1 -Transferencia
Lección 1
20
23
  Secciones 2.1 y 2.2 del Stallings
A.Ortigosa
Tema 1 - Lección 1
24
4
Descargar