1. CURSO DE SISTEMAS OPERACIONALES
HILOS, SMP y MICRONUCLEOS [ 2 ]
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
2. GESTION DE HILOS Y SMP EN WINDOWS
Las estructuras de los procesos y servicios en Windows se
manejan de forma sencilla, el núcleo permite a cada
subsistema del SO emular una estructura y funcionalidad de
un proceso en particular. Algunas características importantes
son :
• Los procesos en Windows se implementan como objetos
• Un proceso ejecutable puede contener uno o varios hilos.
• El objeto Proceso y el Objeto hilo, tienen funcionalidades de
sincronización precontruidas.
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
3. GESTION DE HILOS Y SMP EN WINDOWS
Ficha de
Acceso
Descriptores de direcciones virtuales
Objeto de
Proceso
Tabla de
Objetos Disponibles
manejadores
Manejador 1 • Cada proceso se asocia a una ficha de acceso.
Hilo x
• Cuando un usuario se conecta Windows, se crea una ficha de
Manejador 2 acceso. Cada proceso que ejecuta el usuario tiene una copia
Archivo y
de esta ficha de acceso.
Manejador 3
Sección z • Al proceso se asocian una serie de direcciones virtuales que
el proceso tiene asignadas actualmente. (No las puede
modificar).
• El proceso posee una tabla de manejadores para poder
modificar sus propios atributos. Adicionalmente incluye una
tabla de objetos conocidos por el proceso, existe un
manejador para cada hilo y para cada objeto al que el proceso
tiene acceso (archivo y segmento de memoria)
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
4. GESTION DE HILOS Y SMP EN WINDOWS
Objetos Proceso Objetos Hilo
Entidad que corresponde a un trabajo de Unidad de trabajo que se puede activar,
usuario o aplicación con recursos de se ejecuta secuencialmente y es
memoria y asignados. interrumpible, así el procesador puede
cambiar a otro hilo.
UN PROCESO WINDOWS ESTA
CONSTITUIDO POR AL MENOS UN HILO
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
5. GESTION DE HILOS Y SMP EN WINDOWS
PROCESO Tipos de Objeto HILO
ID Proceso ID Hilo
Descriptor de Seguridad Contrexto de Hilo
Prioridad Base Prioridad Dinamica
Afinidad del procesador por defecto Prioridad base
Limite de cuota Atributos del Afinidad del procesador de hilo
Tiempo de ejecución
.
Cuerpo del Tiempo de ejecución de hilo
Estado de alerta
. Objeto .
. .
. Estado de salida del hilo
Crear hilo()
Abrir hilo()
Solicitar información del hilo()
Crear proceso()
Establecer Información del hilo ()
Abrir proceso ()
Hilo Actual ()
Solicitar información del proceso()
Establecer Información del Proceso() Servicios Terminar Hilo()
Obtener contexto ()
Proceso Actual ()
Reanudar contexto ()
Terminar Proceso()
Suspender()
Alertar Hilo ()
.
.
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
6. GESTION DE HILOS Y SMP EN WINDOWS
ESTADO DE UN HILO EN WINDOWS
EJECUTABLE
Escogido para ejecutar
Sustituto
Cambiar
Expulsado
Listo Ejecutado
Recurso disponible
Desbloquear /
Reanudar recurso Finalizar
Bloquear /
disponible
Suspender
Transición Esperando Finalizado
Desbloquear /reanudar
NO EJECUTABLE recurso no disponible
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
7. GESTION DE HILOS Y SMP EN SOLARIS
Solaris implementa un soporte de hilos multinivel, que proporciona flexibilidad para maximizar
el uso de los recursos del procesador. Maneja cuatro (4) conceptos relacionados con los hilos:
1. Procesos : Es un proceso normal UNIX, incluyendo direcciones de usuario, la pila y
bloque de control de proceso.
2. ULT : Utilizando bibliotecas de hilos, usados de interfaz en las aplicaciones paralelas.
3. Procesos Ligeros (PWL) :asociación entre ULT y KLT. Se planifican de manera
independiente por el núcleo.
4. KLT : Pueden planificar y ejecutar cualquier proceso del sistema.
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
8. GESTION DE HILOS Y SMP EN SOLARIS
Proceso 1 Proceso 2 Proceso 3 Proceso 4 Proceso 5
USUARIO Biblioteca de hilos
L L L L L L L L L
NUCLEO
P P P P P
HARDWARE
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana –de Núcleo Bucaramanga
Hilos de Usuario Hilos Seccional L LWP P Procesador
II Semestre Académico 2010
9. GESTION DE HILOS Y SMP EN SOLARIS
• PROCESO 1 : Unix tradicional ( no requiere concurrencia)
• PROCESO 2 : ULT Pura ( Todos los ULT son soportados por un único
KLT , útiles en concurrencia pero no paralelismo)
• PROCESO 3 : Múltiples hilos multiplexados en un menor numero de
LWP ( Especificar grado de paralelismo a nivel de KLT)
• PROCESO 4 : ULT vinculados a los LWP (paralelismo a nivel de
núcleo visible al usuario)
• PROCESO 5 : Múltiples ULT con múltiples LWP.
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
10. GESTION DE HILOS Y SMP EN SOLARIS
UNIX TRADICIONAL SOLARIS TRADICIONAL
Id proceso Id proceso
LWP1
Id usuario Id usuario
ID LWDP
Tabla de activación Tabla de activación Prioridad
de señales de señales
Mascara de Señales
Registros
PILA
Mapa de memoria Mapa de memoria
ID LWDP
Prioridad Prioridad
Mascara de Señales Mascara de Señales
Registros
Registros
PILA
PILA
Descriptores de Descriptores de
Archivos Estado del Procesador Archivos
LWP2
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
11. GESTION DE HILOS Y SMP EN SOLARIS
parar
continuar despertar
ejecutable
activar parar
parado durmiendo
expulsar
parar dormir PROCESOS LIGEROS (LWP)
Activo
expulsado parar
HILOS DE NIVEL DE USUARIO
activar
ejecutando
despertar
Bloqueado llamada
sistema
ejecutable parado
Despertar parar
Bloqueado
continuar
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010
12. GESTION DE HILOS Y SMP EN LINUX
1. Elaborar gráficamente el Modelo de Procesos e Hilos de
Linux
2. Definir cada uno de sus estados.
3. Mencione tres (3) ventajas de los ULT sobre los KLT.
4. Mencione dos (2) desventajas de los ULT en comparación
con los KLT.
5. Que es un MICRONÚCLEO?
6. Explique brevemente los conceptos de la Arquitectura de
Sistemas Operativos por capas y la Arquitectura del
Micronúcleo.
Elkin Alfredo Albarracin Navas, Esp.
Universidad Pontificia Bolivariana – Seccional Bucaramanga
II Semestre Académico 2010