Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Gestion Procesos
Gestion Procesos
Tema 3 – Procesos
http://www.ditec.um.es/so
Código
Datos
Código Código de la
Pila ensamblador llamada al
sistema
Datos depositados Guardar contexto
por el hardware
del proceso actual
Procesoj
Restaurar contexto
Código del nuevo proceso Código del
planificador
Datos
Pila
Datos retirados
por el hardware
User
space
Thread Thread
Kernel
space Kernel Kernel
(a) (b)
Process
Kernel
User
space
Kernel
space Kernel Kernel
Ventajas
El núcleo mantiene la tabla de hilos, que es un subconjunto de la de procesos
Las llamadas bloqueantes no necesitan funciones especiales
Los fallos de página no suponen un problema
Al bloquearse un hilo, el núcleo puede conmutar a otro hilo de otro proceso
Inconvenientes
Las llamadas bloqueantes son llamadas al sistema, e.d. más costosas
La creación y destrucción de procesos es más costoso ⇒ Reutilización de hilos
Motivación
Si el Sistema Operativo protege y aisla los procesos,
¿cómo se sincronizan un conjunto de procesos?
El S.O. también provee mecanismos de
comunicación y sincronización entre procesos (IPC,
Inter-Process Communication)
Vista exterior
4.1 Planificadores
4.2 Planificación "primero en llegar, primero en ser
servido"
4.3 Planificación "primero el trabajo más corto"
4.4 Planificación round robin
4.5 Planificación por prioridad
4.6 Planificación de colas de múltiples niveles con
realimentación
4.7 Planificación a corto, medio y largo plazo
Proceso Duración
P1 24
P2 3
P3 3
P1 P2 P3
0 24 27 30
Tiempo medio: 24+27+30
3 ≡ 27
Es NO APROPIATIVA. Efecto convoy.
Sistemas Operativos – p. 39/63
4.3 SJF (Primero el trabajo más corto)
Para procesos por lotes (o de duración conocida):
P2 P3 P1
0 3 6 30
A B C D E
Tiempo de ejecución 2 4 1 1 1
Tiempo de llegada 0 0 3 3 3
Cache
Bus
(a) (b) (c)
weight += 20 - p->nice;
goto out;
out:
return weight;
}
for_each_task(p)
p->counter = (p->counter >> 1) +
NICE_TO_TICKS(p->nice);
goto repeat_schedule;
}
Job
Thread
Address
space
Process
User
stack
System
priorities 24
16
User
priorities 8
1
Zero page thread 0
Idle thread
Sistemas Operativos – p 64
Procesos en OSO – Acceso a memoria de vídeo
Cambia
carácter
Espera
un rato
Sistemas Operativos – p 65
Procesos en OSO – Actividad desde la sai del Timer (i)
h z
. 2
18 18.2 veces por segundo
se incrementa el código
ascii de la posición 0x100
de la memoria de vídeo
Sistemas Operativos – p 66
Procesos en OSO – Actividad desde la sai del Timer (ii)
h z
. 2
18 18.2 veces por segundo
toma el control la sai del
timer mediante el meca-
nismo de interrupción.
NORMALMENTE
NO PINTA
Sistemas Operativos – p 67
Procesos en OSO – Implementación de procesos (i)
Entrada al kernel:
- llamada al sistema
instrucción int 22h (vector 22) apilan flags
- activación eléctrica de cable y dirección de retorno
cable de timer (vector 8)
cable de teclado (vector 9)
Sistemas Operativos – p 69