Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistema operativo
Explota los recursos del hardware de
uno o ms procesadores.
Ofrece un conjunto de servicios a los
usuarios del sistema.
Gestiona la memoria secundaria y los
dispositivos de entrada/salida (E/S).
Elementos bsicos
Procesador.
Memoria principal:
Tambin se la conoce como memoria real o memoria
principal.
Voltil.
Mdulos de E/S:
Dispositivos de memoria secundaria.
Equipos de comunicacin.
Terminales.
Interconexin de sistemas:
Permiten la comunicacin entre procesadores,
memoria principal y los mdulos de E/S.
Memoria principal
Bus del
sistema
Instruccin
Instruccin
Instruccin
Datos
Unidad de
ejecucin
Datos
Datos
Datos
Mdulo de E/S
PC
IR
MAR
MBR
I/O AR
I/O BR
= Contador de programa
= Registro de instruccin
= Registro de direcciones de memoria
= Registro intermedio de memoria
= Registro de direcciones de E/S
= Registro intermedio de E/S
Puntero de segmento:
Cuando la memoria se divide en segmentos, una
referencia a la memoria consta de una referencia a
un segmento particular y un desplazamiento dentro
del segmento.
Puntero de pila:
Seala la parte superior de la pila.
Registros de control y de
estado
Contador de programa (PC, Program Counter):
Contiene la direccin de la instruccin a ser leda.
Registros de control y de
estado
Codigos de condicin o flags:
Conjunto de bits activados por el hardware del
procesador como resultado de determinadas
operaciones.
Se puede acceder a travs de un programa
pero no pueden ser alterados..
Ejemplos:
Resultado positivo.
Resultado negativo.
Cero.
Desbordamiento.
Ciclo de instruccin
Ciclo de lectura
Leer la
INICIO
instruccin
siguiente
Ciclo de ejecucin
Ejecutar la
instruccin
FIN
Lectura y ejecucin de
instrucciones
El procesador lee una instruccin de la
memoria.
El contador de programa (PC) lleva la
cuenta de cul es la prxima instruccin
a leer.
El procesador incrementar el PC
despus de leer cada instruccin.
Registro de instruccin
La instruccin leda se carga en el registro de
instrucciones.
Tipos de instrucciones:
Procesador-memoria:
Se transfieren datos entre el procesador y la memoria.
Procesador-E/S:
Se transfieren datos desde o hacia un dispositivo
perifrico.
Tratamiento de datos:
Operacin aritmtica o lgica sobre los datos.
Control:
Altera la secuencia de ejecucin.
Ejemplo de ejecucin de un
programa
Memoria
Paso 1
Memoria
Registros de CPU
Memoria
Registros de CPU
Registros de CPU
Paso 2
Memoria
Registros de CPU
Paso 3
Memoria
Paso 5
Paso 4
Registros de CPU
Memoria
Registros de CPU
Paso 6
Interrupciones
Se trata de una interrupcin de la ejecucin
normal del procesador.
Mejora la eficiencia del procesamiento.
Permite al procesador ejecutar otras
instrucciones mientras una operacin de E/S
est en proceso.
Es una interrupcin de un proceso debida a un
factor externo al proceso y que se lleva a cabo
de tal modo que el procesador pueda
reanudarse.
Clases de interrupciones
De programa:
Desbordamiento aritmtico.
Divisin por cero.
Intento de ejecutar una instruccin ilegal.
Referencia a una zona de memoria fuera del
espacio permitido al usuario.
De reloj.
De E/S.
Por fallo del hardware.
Tratamiento de la interrupcin
Un programa que determina la
naturaleza de la interrupcin y realiza
cuantas acciones sean necesarias.
Se produce una transferencia de control.
Generalmente forma parte del sistema
operativo.
Ciclo de interrupcin
Ciclo de lectura
INICIO
Leer la
instrucci
n
siguiente
Ciclo de ejecucin
Ciclo de interrupcin
Interrupcione
s
inhabilitadas
Ejecutar la
instrucci
Interrupn
ciones
habilitadas
FIN
Comprobacin
de interrupcin;
interrupcin
del proceso
Ciclo de interrupcin
El procesador comprueba si ha ocurrido
alguna interrupcin.
Si no hay interrupciones pendientes, el
procesador trae la prxima instruccin del
programa en curso.
Si hay una interrupcin pendiente, el
procesador suspende la ejecucin del
programa en curso y ejecuta la rutina de
tratamiento de la interrupcin.
Programa
de usuario
Programa
de E/S
Orden
de E/S
ESCRIBIR
Programa
de usuario
Programa
de E/S
ESCRIBIR
Orden
de E/S
Programa
de usuario
Programa
de E/S
Orden
de E/S
ESCRIBIR
FIN
Rutina de
tratamiento
de interrupciones
ESCRIBIR
ESCRIBIR
Rutina de
tratamiento
de interrupciones
ESCRIBIR
FIN
ESCRIBIR
ESCRIBIR
(a) Sin interrupciones
FIN
ESCRIBIR
(c) Con interrupciones y
larga espera de E/S
Interrupciones mltiples
Inhabilitar las
interrupciones
mientras se est
procesando una:
El procesador
ignora cualquier
nueva seal de
interrupcin.
Programa de usuario
Rutina X de tratamiento
de interrupciones
RutinaY de
tratamiento de
interrupciones
Rutina X de tratamiento
de interrupciones
RutinaY de
tratamiento de
interrupciones
Orden secuencial de
interrupciones mtiples
Las interrupciones se inhabilitan para que
el procesador pueda completar las
operaciones.
Las interrupciones permanecen pendientes
hasta que el procesador las habilite.
Despus de terminar la rutina de
tratamiento de la interrupcin, el
procesador comprueba si se ha producido
alguna interrupcin adicional.
Multiprogramacin
El procesador ha de ejecutar varios
programas.
El orden en que los programas se ejecutan
depende de su prioridad relativa y de si estn
esperando una E/S.
Una vez que se haya completado el
tratamiento de la interrupcin, puede que no
se devuelva el control inmediatamente al
programa de usuario que estaba ejecutndose
en el momento de la interrupcin.
Jerarqua de la memoria
Me
m
int oria
ern
Me
m
ext oria
er n
a
Al
ma
c
sec enam
un
da iento
rio
s
tro
gis
Re ache
c oria
m
M e ci pal
n
r
pi
co
ti
n
ag
o m ROM
c
s
Di CD- -RW
W
CD + R M
D
A
DV D-R
DV
ca
ti
n
g
a
ta m O
n
i
M M
C
R
WO
Cache de disco
Es una parte de la memoria principal que se
puede utilizar como buffer para guardar
temporalmente los datos transferidos con el
disco.
Las escrituras al disco se agrupan.
Se pueden volver a escribir algunos datos
destinados a la salida. Los datos se recuperan
rpidamente por software desde la cache del
disco en lugar de hacerse lentamente desde el
disco.
Memoria cache
Es invisible para el sistema operativo.
Aumenta la velocidad de la memoria.
La velocidad del procesador es mayor
que la de la memoria.
Memoria cache
Transferencia de bloques
Transferencia de palabras
CPU
Cache
Memoria principal
Memoria cache
Contiene una parte de la memoria
principal.
El procesador primero comprueba la
memoria cache.
Si una palabra no se encuentra en la
memoria cache, se introduce en la cache
un bloque de memoria principal que
contiene la informacin necesaria.
Nmero
de entrada Etiquet
a
Bloque
Direccin
de memoria
Longitud de bloque
(K palabras)
(a) Cache
Bloque
Longitud
de palabra
Diseo de la cache
Tamao de la cache:
Las caches pequeas pueden tener un impacto
significativo sobre el rendimiento.
Diseo de la cache
Funcin de traduccin:
Determina la posicin de la cache que
ocupar el bloque.
Algoritmo de reemplazo:
Elige el bloque que hay que reemplazar.
Algoritmo del menos recientemente usado
(LRU).
Diseo de la cache
Poltica de escritura:
Dicta cundo tiene lugar la operacin de
escribir en memoria.
Puede producirse cada vez que el bloque se
actualice.
La escritura se produce slo cuando se
reemplaza el bloque:
Reduce las operaciones de escritura en memoria.
Deja la memoria principal en un estado obsoleto.
E/S programada
El mdulo E/S lleva a cabo la
accin requerida en lugar del
procesador.
Activa los bits apropiados en el
registro de estado de E/S.
No se producen interrupciones.
El procesador comprueba el
estado hasta que se ha
completado la operacin.
Emitir la orden
LEER al
mdulo de E/S
CPU E/S
Leer estado
del mdulo
de E/S
E/S CPU
No listo
Comprobar
estado
Condicin
de error
Listo
Leer palabra
del mdulo
de E/S
Escribir
palabra
en memoria
No
E/S CPU
CPU memoria
Hecho?
S
Instruccin siguiente
CPU E/S
Emitir la orden
LEER al
mdulo de E/S
Hacer
otra cosa
Leer estado
del mdulo
de E/S
Interrupcin
E/S CPU
Comprobar
estado
Condicin
de error
Listo
No
Leer palabra
del mdulo
de E/S
E/S CPU
Escribir
palabra
en memoria
CPU memoria
Hecho?
S
Instruccin siguiente
Emitir la orden
CPU DMA
LEER BLOQUE
Hacer
otra cosa
al mdulo E/S
Leer estado
del mdulo
de DMA
Interrupcin
DMA CPU
Instruccin siguiente
(c) Acceso directo a memoria