Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fcfs
Fcfs
Concepto de Proceso.
Una definicin sencilla:
Entidad pasiva
Programa
RECURSOS
CPU
Memoria
Ficheros
Dispositivos
Programa en ejecucin.
Entidad activa
Proceso
Pila
Datos
Cdigo
Otros recursos
Ficheros abto.
Disponible E/S, etc
PC
Concepto de Proceso.
Para entender mejor el concepto de proceso:
Los procesos tienen un carcter secuencial:
Un proceso en su ejecucin puede generar ms de un
proceso (llamada fork).
Dos procesos pueden asociarse al mismo programa.
Estado de un proceso.
El estado de un proceso:
Relacionado con su actividad del proceso en un cierto momento.
Al ejecutarse ir cambiando de estado.
Estado de un proceso.
Diagrama de transicin de estados:
1.- Pasa a esperar un suceso
(E/S) y se bloquea.
2.- Expulsin de proceso
de la CPU
3.- El planificador elige
otro proceso.
4.- El suceso (E/S) que
esperaba el proceso acaba.
Proceso
Finalizado
En ejecucin
Proceso
Nuevo
Bloqueado
Listo
Concepto de planificacin.
Si hay dos procesos listos para ejecucin ...
Cual se ejecutar primero?
El planificador (scheduler) del sistema operativo decide
cual.
El planificador utiliza Algoritmo de planificacin.
Un ejemplo de planificacin de procesos: P0 y P1 listos
Rafaga
CPU.
Rafaga
CPU.
Rafaga
CPU.
Rafaga
CPU.
Proceso P0
Inicio
Inactivo,
E/S
Inactivo,
E/S
Rafaga
CPU.
Rafaga
CPU.
Rafaga
CPU.
Rafaga
CPU.
Fin
Inactivo,
E/S
Proceso P1
Inicio
Inactivo,
E/S
Inactivo,
E/S
Fin
Inactivo,
E/S
Concepto de planificacin.
Una manera sencilla de planificacin, sin
multiprogramacin.
Rafaga
Rafaga
CPU.
CPU.
Proceso P
0
Inicio
Inactivo,
E/S
Fin
Rafaga
CPU.
Rafaga
CPU.
Proceso P
1
Inicio
En espera
Rafaga
CPU.
Rafaga
CPU.
Inactivo,
E/S
Fin
Rafaga
CPU.
Proceso P 0
Inicio
Inactivo
E/S
Inactivo
E/S
Inactivo
E/S
Fin
Rafaga
CPU.
Rafaga
CPU.
Rafaga
CPU.
Rafaga
CPU.
Proceso P 1
Inicio
Inactivo,
E/S
Inactivo,
E/S
Inactivo,
E/S
Fin
10
Concepto de planificacin.
Colas de planificacin:
El S.O. usa una serie de colas para planificar los recursos
(Memoria, E/S, CPU etc.).
Cola de trabajos:
Procesos en almacenamiento secundario esperando memoria
principal.
Cola de dispositivos:
Para cada dispositivo (disco, impresora, etc.) hay una cola de
procesos esperando utilizarlo.
11
Concepto de planificacin.
Se usan los PCB como elementos de las colas:
PCB 7
PCB 2
Registros
Registros
Fin
PCB 3
PCB 4
PCB 6
Registros
Registros
Registros
...
Fin
...
Inicio
...
Unidad 0
de disco
...
Inicio
...
Cola de
procesos listos
PCB 5
Inicio
Fin
Registros
...
Unidad 0
de terminal
12
Concepto de planificacin.
Un proceso cambia de cola a lo largo de su ejecucin.
Planificador:
Elemento del sistema operativo que selecciona procesos en esas
colas.
13
Concepto de planificacin.
Planificador de trabajos:
Necesidad:
Si hay muchos procesos ... algunos en almacenamiento
secundario.
Cometido:
Se encarga del intercambio entre memoria y
almacenamiento secundario. Controla el nmero de
procesos en memoria (grado de multiprogramacin).
Frecuencia:
Se ejecuta con menor frecuencia que el planificador CPU
(cuando termina un proceso, etc.) ... puede ser ms lento
Eficiencia:
Buena mezcla en memoria entre procesos limitados por la
CPU y por E/S
Sistemas Operativos (IS11) Tema 2
14
Concepto de planificacin.
Ejecucin de un proceso: Ciclo de rfagas CPU y E/S:
En la ejecucin de un proceso se alternan la ejecucin en CPU
y la espera de E/S.
Rfaga CPU: Tiempo de ejecucin en CPU entre dos E/S.
Rfaga E/S: Tiempo entre solicitud y terminacin de E/S.
15
Concepto de planificacin.
Histograma tpico de duracin de rfagas de CPU:
16
Concepto de planificacin.
Planificador de la CPU: (planificador a corto plazo)
Cometido: Selecciona un proceso listo y le asigna CPU, reparte el
tiempo de CPU entre procesos.
Frecuencia: Mayor que la del planificador de trabajos ... debe ser ms
rpido.
17
Concepto de planificacin.
Cambio de contexto (cambio de proceso):
Cambio del proceso en ejecucin.
Requiere:
Guardar el estado del proceso que se estaba ejecutando
(PCB).
Cargar el estado (PCB) guardado para el nuevo proceso que
se ejecutar.
Su duracin es un gasto de tiempo (tpica de 1-100 microsg)
y depende de:
La velocidad de la memoria.
El nmero de registros.
Existencia de instrucciones especiales (una sola instruccin
para cargar o almacenar todos los registros), Etc.
Sistemas Operativos (IS11) Tema 2
18
Algoritmos de planificacin.
Algoritmo de planificacin:
Decide el proceso de la cola de procesos listos al que se le
asigna CPU.
19
Algoritmos de planificacin.
Objetivos:
Maximizar eficiencia y rendimiento.
Minimizar tiempo de retorno, espera y respuesta.
20
21
TP
TP
( 0 24 27)
3
( 0 3 6)
3
17
22
Ejemplo:
TP
(0 3 9 16)
4
23
D t n (1 D ) Tn
Tn
24
25
TP
6,5
26
Prioridades generales.
Se asigna una prioridad a cada proceso:
El de menor prioridad se ejecuta en CPU (si hay dos de igual
prioridad FCFS).
SJF es un caso particular: p=1/T.
Se asigna nmeros a la prioridad.
Ejemplo:
Proceso
Duracin
Rfaga CPU
Prioridad
P1
10
P2
P3
P4
P5
P2
0 1
P1
P5
6
P3
16
P4
18 19
27
Prioridades generales.
Las prioridades pueden definirse:
Factores externos al sistema: Importancia del proceso, del
usuario, etc.
Factores internos al sistema: Requisitos de memoria, lmites
de tiempo, nmero de archivos abiertos, etc.
28
Prioridades generales.
29
Caractersticas:
Esquema de planificacin expulsiva.
Si hay n procesos en cola, tiempo espera mximo entre dos
ejecuciones (n-1)Q.
Tiempo promedio de espera bastante grande.
Diseado para sistemas de tiempo compartido (equidad).
Sistemas Operativos (IS11) Tema 2
30
( 0 4 7 (10 4))
3
5,66
31
32
33
34
El planificador:
Ejecuta primero los procesos cola 0, si vaca cola 1, si vaca cola 2.
Proceso nuevo se coloca en cola 0.
Si la duracin de rfaga de un proceso de la cola 0 es mayor que
Q=8, se pasa a cola 1.
Si la duracin de rfaga de un proceso de cola 1 es mayor que
Q=24, se pasa a cola 2.
Sistemas Operativos (IS11) Tema 2
35
36
37
Evaluacin de Algoritmos.
Cmo seleccionar un algoritmo en un sistema?
Decidir un criterio o criterios a utilizar.
Modelado determinista:
Se tome un carga de trabajo determinada.
Modelado de colas:
Se usa una distribucin de rfagas de CPU y E/S.
Se usa otra de tiempos de llegada de procesos.
Simulaciones.
Sistemas Operativos (IS11) Tema 2
38