Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema2 2
Tema2 2
Extensin 1
Extensin 3
Extensin 2
Registro archivos grandes
Registro dir. pequeos
128
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
2. Sistema Operativo Windows
2.1 Introduccin al S.O. Windows NT y
Windows 2000
2.2 Subsistema de Archivos
2.3 Subsistema de Procesos
2.4 Gestin de Memoria
Dpto. Lenguajes y Sistemas Informticos. Universidad de Granada
129
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
2.3 Subsistema de procesos
Proceso:
Posee un espacio de direcciones propio y aislado,
una serie de recursos y una o ms hebras
No existe relacin padre/hijo
Hebra:
Unidad de ejecucin y de planificacin
Asociada a una serie de instrucciones, registros,
dos pilas (usuario y ncleo) y una cola de entrada
de mensajes
Job (Windows 2000):
Grupo de procesos relacionados que pueden ser
gestionados y manejados como una unidad
130
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Representacin de un proceso
Proceso
Seal de
acceso
Tabla de objetos
Descriptor1
Descriptor2
Descriptor3
Descripcin del espacio de direcciones virtuales
Hebra x
Archivo y
Seccin z
131
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Objetos Proceso y
Hebra
Proceso
ID del proceso
Descriptor de seguridad
Prioridad de base
Afinidad por omisin con el
procesador
Lmites de cuota
Tiempo de ejecucin
Contadores de E/S
Contadores de operacin de la MV
Puertos de excepciones y
depuracin
Estado de terminacin
Crear proceso
Abrir proceso
Consultar informacin del proceso
Cambiar informacin del proceso
Proceso actual
Terminar proceso
Tipo de objeto
Atributos
del cuerpo
del objeto
Servicios
(a) Objeto proceso
Tipo de objeto
Atributos
del cuerpo
del objeto
Servicios
Hebra
ID de la hebra
Contexto de la hebra
Prioridad dinmica
Prioridad de base
Afinidad de la hebra con el
procesador
Tiempo de ejecucin del hilo
Estado de alerta
Contador de suspensin
Seal de imitacin
Puerto de terminacin
Estado de terminacin de la hebra
Crear hebra
Abrir hebra
Consultar informacin de la hebra
Cambiar informacin de la hebra
Hebra actual
Terminar hebra
Coger contexto
Poner contexto
Suspender
Reanudar
Alertar hebra
Consultar alerta de la hebra
Registrar puerto de terminacin
(b) Objeto hebra
132
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Creacin de procesos
Una aplicacin cliente crea un proceso utilizando el
API adecuado para su entorno
La invocacin de creacin de un proceso se manda al
servidor adecuado, el cul llama al Gestor de
procesos para crear un Proceso Nativo (y devuelve
un descriptor de objeto)
Los diferentes entornos de SO devuelven diferentes
resultados cuando se crea un proceso:
Sistemas que soportan o no multihebra
Sistemas que mantienen informacin Padre-Hijo
133
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Estados de una hebra
Ejecutable o listo
Standby: la hebra ha sido seleccionada para
su ejecucin en un procesador particular
Ejecucin
Bloqueado o espera
Transicin: la hebra est preparada para
ejecutarse pero los recursos que necesita no
estn disponibles
Terminado
134
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Diagrama de estados de una hebra
Standby
Ejecucin Preparado
Transicin Bloqueado Terminado
apropiado
cambio de contexto
elegido por
el planificador
recursos
disponibles
desbloqueo
reanudacin
desbloqueo
recursos no disponibles
terminacin
bloqueo
suspensin
135
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Planificacin de hebras
Colas mltiples con realimentacin apropiativo
32 niveles de prioridad divididos en dos grupos:
Prioridades de tiempo real [16..31] privilegios
administrador. Fijas.
Prioridades dinmicas [1..15] aplicaciones
tpicas. Variables.
La prioridad 0 est asignada a la hebra nula
Cada cola gestionada por Round Robin
Al despertar una hebra de un bloqueo se aumenta su
prioridad y se disminuye si agota el quantum completo
136
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Prioridad de un proceso y sus hebras
Un proceso pertenece a una clase de
prioridad:
Desocupado (4)
Normal (7 o 9)
Alta (13)
Tiempo Real (24)
Una hebra hereda el valor de prioridad de la
clase a la que pertenece el proceso pero
despus este valor puede variar si tiene
prioridad dinmica
137
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Relaciones entre prioridades
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
prioridad base
mayor
por encima de lo normal
normal
por debajo de lo normal
menor
Prioridad de
procesos
Prioridad de base
de hebra
Prioridad dinmica de
hebras
138
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
2. Sistema Operativo Windows
2.1 Introduccin al S.O. Windows NT y
Windows 2000
2.2 Subsistema de Archivos
2.3 Subsistema de Procesos
2.4 Gestin de Memoria
Dpto. Lenguajes y Sistemas Informticos. Universidad de Granada
139
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
2.4 Gestin de Memoria
Memoria Virtual
Paginacin por demanda con cluster: se trae
a memoria principal la pgina referenciada y un
pequeo grupo de pginas, cluster, situadas
alrededor de sta (principio de localidad)
El gestor de memoria ajusta el conjunto de
trabajo: una vez por segundo, cuando se solicita
una pgina o cuando la memoria libre cae por
debajo de un lmite
140
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Gestin de Memoria (y II)
Espacio de memoria
virtual de un proceso
0xFFFFFFFF
0
Espacio de
direcciones de
usuario: 2 GBytes
Espacio de
direcciones del
SO: 2 GBytes
64 KBytes para la asignacin
de punteros NULL
64 KBytes para la asignacin
incorrecta de punteros
141
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Gestin de Memoria (y III)
Cada proceso tiene:
nmero mximo de marcos de pgina asignados
lista de referencias a los marcos de pgina menos accedidos
ltimamente
tabla de pginas de dos niveles (el sistema usa una TLB)
El sistema tiene una tabla de marcos de pgina que
llama base de datos de marcos de pginas
Cuando ocurre una falta de pgina:
Se consulta el nmero mximo de marcos
si no ha llegado al lmite, se asigna un nuevo marco
si ha llegado, se utiliza uno de los marcos que tiene asignados
(algoritmo de sustitucin local LRU, variante algoritmo del reloj)
142
Sistemas Operativos II Tema 2: 2. Sistema Operativo Windows
Gestin de Memoria (y IV)
Tablas
de
pginas
Marcos
de pgina
Selector de
tabla de pginas
Byte dentro
de la pgina
Entrada de la
tabla de pginas
Directorio
de
pginas