Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tipo según su
contenido Registro de Dirección:
Contienen direcciones o parte de
una dirección.
Interrupciones:
TIPO DESCRIPCIÓN
De Programa Generadas por alguna condición resultado de
la ejecución de una instrucción.
De Reloj Generadas por el reloj interno del procesador.
De E/S Generadas por un controlador de E/S para
indicar ACK o NAK.
Por fallo de Hardware Generadas por un error en el Hardware.
NO
SI
Comprobación de
Interrupción del
Proceso.
Jerarquía de Memoria
Memoria
Interna - Costo del Bit
+ Capacidad
- Velocidad de Acceso.
Memoria - Frecuencia de Acceso
Externa por parte del procesador.
Almacenamiento
Secundario
CACHÉ
Memoria Principal
CACHE
CPU
Transferencia de Transferencia de
palabras bloques
Ejemplo:
3
Resumen de SO – 2006 ( by Noky & Raynor )
0
CACHÉ 0
MEMORIA PRINCIPAL
c-1
B>C
2n-1
Diseño de la CACHÉ:
SI SI
Leer Palabra (E/S ~ CPU) Leer Palabra (E/S ~ CPU)
NO NO
OK OK
Next Next
4
Resumen de SO – 2006 ( by Noky & Raynor )
Proceso
por Lotes Eficiencia: Hace que
SISTEMA los recursos de un
Evolució Objetivo
OPERATIVO Sistema Informático
n s
se utilicen mejor.
Proceso por lotes con
multiprogramación
Logros
Principales Capacidad de Evolución:
Tiempo Permite el desarrollo
Compartido efectivo, la verificación y la
introducción de nuevas
funciones sin interferir en
los servicios que brinda.
Estructura
del Sistema
Gestión de
Planificació Memoria
Los
n y gestión Seguridad y Procesos
de recursos protección de
Información
5
Resumen de SO – 2006 ( by Noky & Raynor )
Objetivos de un SO
Evolución de un SO
Proceso en Serie
o El programador interactuaba directamente con el Hardware, no
había SO.
o Problemas principales:
Planificación: El usuario reservaba un tiempo para
utilizar la máquina que no era el necesario.
Tiempo de preparación: El usuario realizaba un proceso
de preparación que al producirse un error debía volver a
realizar.
7
Resumen de SO – 2006 ( by Noky & Raynor )
Los procesos
Definición básica de Proceso: zUn programa en ejecución, con un estado actual asociado a un conjunto de recursos.
Gestión de Memoria
Responsabilidade
s del SO Asignación y Gestión automática: A los programas se les
debe asignar memoria dinámicamente según las vayan
necesitando.
Gestión de
Memoria
Soporte para la programación modular: Los
programadores deben ser capaces de definir módulos de
programa y de crear, destruir y alterar el tamaño de los
módulos dinámicamente.
Se solucionan
mediante
Protección y Control de Acceso: El SO debe permitir que
las secciones de memoria estén accesibles de diferentes
Virtual Memory: Servicio maneras para los diversos usuarios.
que permite a los programas
direccional la memoria
desde un punto de vista Almacenamiento a Largo Plazo: Muchos programas
lógico. requieren almacenar información después de apagar la
computadora.
FileSystem: Incorpora
un almacenamiento a Paginación: Divide los
largo plazo en el que se procesos en bloques de tamaño
almacena la información fijo (páginas) y proporciona
en archivos. una traducción dinámica entre
la dirección virtual y la real.
9
Resumen de SO – 2006 ( by Noky & Raynor )
Gestor de Peticiones de
Servicio: Maneja las Gestor de Interrupciones: Maneja
peticiones de los procesos las interrupciones de los procesos
y luego llama a Dispatcher. y de los dispositivos de E/S y
luego llama a Dispatcher.
10
Resumen de SO – 2006 ( by Noky & Raynor )
Seguridad y Protección
de la Información
Control del Flujo de Información: Regulación del
flujo de datos dentro del sistema y su distribución a
los usuarios.
11
Resumen de SO – 2006 ( by Noky & Raynor )
12
Resumen de SO – 2006 ( by Noky & Raynor )
Nuevo
Admitir
MODELO DE 7 ESTADOS
Admitir Suspender
Activar Expedir
Salir
Listo y Listo Ejecución Terminado
Suspendido
Suspender Timeout
Ocurre
Suceso
Activar Esperar Suceso
Bloqueado y Bloqueado
suspendido
Suspender
Nuevo -> Listo y Suspendido, Nuevo -> Listo: Cuando se crea un proceso, se lo
pasa a estado Listo. Si no hay suficiente memoria principal, se lo puede pasar a Listo y
suspendido directamente (generalmente esta es la que se utiliza, Just Time).
Bloqueado -> Bloqueado y Suspendido: Un proceso que está en memoria principal
se pasa a suspendido para dar espacio a otro que se pueda ejecutar y no esté
bloqueado.
Bloqueado y Suspendido -> Listo y Suspendido: Cuando se produce el suceso que
estaba esperando.
Listo y Suspendido -> Listo: Cuando no hay procesos listos en memoria principal, el
SO tiene que taer alguno para que se pueda ejecutar.
Listo -> Listo y Suspendido: Puede optar por esta opción, por prioridades o porque
supone que un proceso que está en estado Bloqueado se desbloqueará rápidamente.
Bloqueado y Suspendido -> Bloqueado: Igual condición anterior.
Listo -> Ejecución: El dispatcher lo escogió así.
Ejecución -> Listo: Timeout, System Call, etc.
Ejecución -> Listo y Suspendido: Por timeout y hay un proceso en suspendido que
posee mayor prioridad como para estar en Listo.
13
Resumen de SO – 2006 ( by Noky & Raynor )
Ubicación
de los SOLUCION: Rutina de gestión
Procesos. que los protege ya que ella
Deben mostrar la ubicación de solamente los lee o escribe.
Atributos de cada segmento o página de
los cada imagen de proceso, ya sea
Procesos. en memoria principal o
Información secundaria.
del Estado del
procesador
Identificador
(PID)
Información de
Control del
Proceso
14
Resumen de SO – 2006 ( by Noky & Raynor )
Identificador (PID)
o Identificador numérico del proceso.
o Identificador numérico del proceso padre.
o Identificador del usuario.
Información del estado del procesador
o Sirve para guardar la información de los registros del procesador cuando se
interrumpe al proceso.
o Registros del procesador (Visibles del Usuario, De Control y Estado y Puntero de
la Pila).
Información de Control del Proceso
o Planificación y Estado: Información necesaria para la planificación del SO.
o Elementos típicos.
Estado de Proceso: alguno del modelo de estados.
Prioridad
Información de planificación: depende del algoritmo de planificación.
Suceso: identidad de un suceso que se está esperando para reanudar la
ejecución.
o Estructuración de datos: Enlace con otros procesos en un tipo de estructura
(cola, anillo, etc).
o Comunicación entre Procesos: información de comunicación almacenada.
o Privilegios de los Procesos: Memoria, instrucciones, servicios y utilidades que
puede utilizar.
o Gestión de Memoria: Punteros que indican la memoria virtual asignada.
o Propiedad de los recursos y utilización: Indica los recursos controlados.
También puede incluir un historial.
Control de Procesos
Salvar el Contexto
del Procesador.
Actualizar el bloque de
control de Proceso que
Mover el bloque
de control a la
Seleccionar otro
proceso para su
Actualizar el bloque de
control del proceso
estaba en ejecución. cola apropiada. ejecución seleccionado
Ejecución del SO
o Características
- El SO funciona de la misma forma que un Software
corriente.
- El SO abandona el control y depende del procesador para
recuperarlo.
o Enfoques
Núcleo fuera de todo proceso: El concepto de proceso se aplica solo a los
programas de usuario. El código del SO se ejecuta como una entidad
separada en modo privilegiado.
P1 P2 P3 Pn-1 Pn
NÚCLEO
P1 P2 P3 Pn-1 Pn
SO SO SO SO SO
P1 P2 Pn SO1 SOn
16
Resumen de SO – 2006 ( by Noky & Raynor )
Proceso: Unidad de
propiedad de recursos. Acceso protegido a
los procesadores.
Archivo y
recursos de
E/S.
Proceso e
Hilos
Estado de
ejecución.
Contexto del
Procesador.
Almacenamiento
Ventajas estático de variables
Toma menos Pila de locales.
tiempo ejecución.
crearlos.
Trabajo interactivo
Simplifican la estructura y en segundo plano.
de un programa de
Toma menos diferentes funciones.
tiempo hacer
Ejemplos de
un Context Procesamiento
Uso
Switch. asincrono.
Pueden comunicarse entre si
sin invocar al kernel ya que
comparten memoria y
archivo. Aceleración de Estructuración modular de
la ejecución. los programas
17
Resumen de SO – 2006 ( by Noky & Raynor )
Tipos de Threads
User
Kernel
P P P P
18
Resumen de SO – 2006 ( by Noky & Raynor )
Otras Estructuras
1 Proceso ~ 1 Thread: Cada thread de ejecución es un único proceso con sus propios
recursos y espacio de direcciones. Lo implementa el viejo UNIX.
1 Proceso ~ N Threads: Un proceso define un espacio de direcciones y unos recursos
dinámicos propios. Pueden crearse varios threads que ejecutan en dicho proceso. Lo
implementa Win NT, Solaris, Linux, OS/2, OS/390, Mach, entre otros.
N Procesos ~ 1 Thread: Un Thread puede emigrar del entorno de un proceso a otro.
Esto permite que un thread se pueda mover facilmente entre sistemas distintos. Lo
implementa Clouds, Esmerald, entre otros.
M Procesos ~ N Threads: Combina los atributos de los casos 1:N y N:1. Lo implementa
TRIX.
Multiprocesamiento
Categorías
Clasificación según
la comunicación
entre procesadores
Master/Slave
Clasificación según la
asignación de procesos
a los procesadores.
SMP
19
Resumen de SO – 2006 ( by Noky & Raynor )
Master/Slave
El resto de procesadores
Característica
ejecutan programas de
s
usuario y utilidades del SO.
El Master
planifica.
Necesita menos
Master/Slave modificaciones sobre
Ventajas
un SO
monoprocesador
multiprogramado.
Un fallo en el
Desventajas Master puede
producir una caída
del sistema.
20
Resumen de SO – 2006 ( by Noky & Raynor )
Cada Procesador
Características se autoplanifica.
El usuario ve al
sistema como si fuera
un monoprocesador
multiporogramado.
SMP Las desventajas del
Master/Slave
Ventajas negadas.
Si no se aplica alguna
técnica, se pierde la
Desventajas coherencia de cachés.
El SO es más
complejo.
Ventajas de un MicroKernel
Fiabilidad: Se puede
probar de un modo más
riguroso.
Soporte para
Soporte a sistemas Sistemas Operativos
distribuidos: Un proceso puede Orientados a Objetos
enviar un mensaje sin saber en (OOOS)
que máquina reside el
destinatario.
22
Resumen de SO – 2006 ( by Noky & Raynor )
Rendimiento de MicroKernels
o La desventaja potencial es que consume tiempo la comunicación a través del microkernel respecto a un simple SystemCall.
o Las experiencias indican que más allá de la desventaja el rendimiento es igual o mayor a un sistema por capas.
24