Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introduccin a los
Sistemas Operativos
Contenidos
2.1 Componentes de un Sistema Operativo (SO)
multiprogramado.
2.1.1 Sistemas multiprogramados y de tiempo
compartido.
2.1.2 Concepto de proceso.
2.1.3 Modelo de cinco estados de los procesos.
2.2 Descripcin y control de procesos.
2.2.1 Bloque de control de proceso (PCB).
2.2.2 Control de procesos.
2.3 Hebras (hilos)
2.4 Gestin bsica de memoria.
2.4.1 Paginacin
2.4.2 Segmentacin
Objetivos
Conocer los elementos necesarios para
implementar la multiprogramacin en un sistema
operativo (SO).
Conocer el concepto de proceso y el modelo de
cinco estados de los procesos.
Conocer el uso que realiza el SO del apoyo
hardware e integrarlo en el modelo de cinco
estados.
Conocer el concepto de hebra (hilo), su modelo
de cinco estados y su utilidad.
Conocer la gestin bsica de memoria que realiza
el SO.
Bibliografa bsica
[Stal05]
[Carr07]
DEPARTAMENTO DE _______________________________________
3-Nov-2010
DEPARTAMENTO DE _______________________________________
Trabajo 2
Trabajo 3
Tipo de trabajo
Computacin pesada
Duracin
5 minutos
15 minutos
10 minutos
Memoria requerida
50 MB
100 MB
75 MB
Necesita disco?
NO
NO
SI
Necesita terminal?
NO
SI
NO
Necesita impresora?
NO
NO
SI
DEPARTAMENTO DE _______________________________________
Ejemplo de multiprogramacin
DEPARTAMENTO DE _______________________________________
Ejemplo de multiprogramacin
Monoprogramacin
Multiprogramacin
20%
40%
Uso de memoria
33%
67%
Uso de disco
33%
67%
Uso de impresora
33%
67%
30 minutos
15 minutos
6 trabajos/hora
12 trabajos/hora
18 minutos
10 minutos
Tiempo transcurrido
Productividad
Tiempo de respuesta medio
DEPARTAMENTO DE _______________________________________
Un programa en ejecucin.
Una instancia de un programa ejecutndose en un ordenador
La entidad que se puede asignar o ejecutar en un procesador.
Una unidad de actividad caracterizada por un solo flujo de ejecucin, un
estado actual y un conjunto de recursos del sistema asociados.
Un proceso est formado por:
Un programa ejecutable.
Datos que necesita el SO para ejecutar el programa.
DEPARTAMENTO DE _______________________________________
Identificador
Estado
DEPARTAMENTO DE _______________________________________
Prioridad
Contador de
programa
Punteros de
memoria
Datos de contexto
Informacin de
estado de E/S
Informacin de
auditora
DEPARTAMENTO DE _______________________________________
DEPARTAMENTO DE _______________________________________
DEPARTAMENTO DE _______________________________________
10
DEPARTAMENTO DE _______________________________________
11
Llamadas al Sistema
DEPARTAMENTO DE _______________________________________
12
Llamadas al Sistema
2
Modo
usuario
Modo
Kernel
Trampa
system_call:
...
sys_open()
...
ret_from_sys_call():
...
iret
Manejador de
llamadas al sistema
DEPARTAMENTO DE _______________________________________
Sistema Operativo
4
sys_open() {
...
...
}
Rutina de servicio
de la llamada
13
DEPARTAMENTO DE _______________________________________
14
Finalizado
Nuevo
Desasignacin de CPU
Admitido
Preparado
El proceso termin
Ejecutndose
Planificacin
Fin de E/S
o suceso
DEPARTAMENTO DE _______________________________________
Bloqueado
Espera por
E/S o suceso
15
16
DEPARTAMENTO DE _______________________________________
17
DEPARTAMENTO DE _______________________________________
18
DEPARTAMENTO DE _______________________________________
19
DEPARTAMENTO DE _______________________________________
20
DEPARTAMENTO DE _______________________________________
21
DEPARTAMENTO DE _______________________________________
22
DEPARTAMENTO DE _______________________________________
23
DEPARTAMENTO DE _______________________________________
24
DEPARTAMENTO DE _______________________________________
25
Concepto de Hebra
DEPARTAMENTO DE _______________________________________
26
El proceso termin
Admitido
Preparado
Ejecutndose
Planificacin
Fin de E/S
o suceso
Espera por
E/S o suceso
Bloqueado
DEPARTAMENTO DE _______________________________________
27
DEPARTAMENTO DE _______________________________________
28
DEPARTAMENTO DE _______________________________________
29
DEPARTAMENTO DE _______________________________________
30
Carga absoluta
Reubicacin
Programa Fuente
Programa Fuente
Compilador
(y Encuadernador)
Compilador
(y Encuadernador)
Programa
Ejecutable
N
direcciones absolutas
Cargador
Programa
Ejecutable
Memoria Principal
Memoria Principal
S.O.
S.O.
Y+M
DEPARTAMENTO DE _______________________________________
Cargador
O
Hardware
31
Reubicacin esttica
MOVE A, 1100
MOVE A, 100
M
DEPARTAMENTO DE _______________________________________
1000 + M
Memoria Principal
32
Reubicacin dinmica
CPU
MOVE A, 100
Direccin
Lgica
R.Base
b
b+M
Direccin
Fsica
Hardware
DEPARTAMENTO DE _______________________________________
Memoria Principal
33
DEPARTAMENTO DE _______________________________________
34
Cabecera
Fichero Ejecutable
Nmeromgico
Contador deprogramainicial
....................
Tabladesecciones
1000
Cdigo
Cdigo
4000
5000
Secciones
Mapadememoria
................
8000
5000
Tabladesmbolos
DEPARTAMENTO DE _______________________________________
Pila
35
148 k
SO
Proceso 1
148 k
320 k
SO
Proceso 1
Proceso 2
896 k
148 k
320 k
224 k
576 k
352 k
SO
Proceso 1
128 k
320 k
Proceso 2
224 k
Proceso 3
268 k
84 k
SO
Proceso 1
148 k
320 k
224 k
SO
Proceso 1
Proceso 4
148 k
SO
320 k
128 k
268 k
64 k
DEPARTAMENTO DE _______________________________________
Proceso 3
268 k
64 k
SO
148 k
Proceso 5
230 k
320 k
Proceso 4
96 k
Proceso 3
148 k
128 k
90 k
Proceso 4
96 k
Proceso 3
268 k
64 k
128 k
96 k
Proceso 3
268 k
64 k
36
Paginacin
Segmentacin
DEPARTAMENTO DE _______________________________________
37
2.4.1 Paginacin
DEPARTAMENTO DE _______________________________________
38
Las direcciones lgicas, que son las que genera la CPU se dividen en
nmero de pgina (p) y desplazamiento dentro de la pgina (d)
DEPARTAMENTO DE _______________________________________
39
2.4.1 Paginacin
DEPARTAMENTO DE _______________________________________
40
DEPARTAMENTO DE _______________________________________
41
Direccin virtual
N. pagina
DESPLAZAMIENTO
N. de marco
proteccin
RBTP
Acceso autorizado?
no
m
rw
TABLA DE PAGINAS
DEPARTAMENTO DE _______________________________________
si
excepcin
violacin de privilegios
m
DESPLAZAMIENTO
Direccin real
42
DEPARTAMENTO DE _______________________________________
43
DEPARTAMENTO DE _______________________________________
44
CPU
m
Acierto
TLB
d
Memoria
Fsica
TLB
m
Fallo
TLB
N pgina
N marco
DEPARTAMENTO DE _______________________________________
Tabla de pginas
45
S1
DEPARTAMENTO DE _______________________________________
S2
S1
S4
S3
S3
S4
S1
Espacio de
usuario
Memoria
fsica
46
Tabla de Segmentos
DEPARTAMENTO DE _______________________________________
47
DEPARTAMENTO DE _______________________________________
48
Direccin virtual
N. Segmento
d>t
si
RBTS
D. base
tamao
no
Excepcin
acceso indebido
proteccin.
Acceso autorizado?
no
S
rw
si
Excepcin
violacin de privilegios
TABLA DE SEGMENTOS
S + d
Direccin real
DEPARTAMENTO DE _______________________________________
49