19
Planificación de Procesos

Planificación de Procesos-NéstorTraña

Embed Size (px)

Citation preview

Page 1: Planificación de Procesos-NéstorTraña

Planificación

de Procesos

Page 2: Planificación de Procesos-NéstorTraña

Algoritmos De Planificación

• Round Robín.

• Primero el Trabajo Mas Corto.

• Planificación Por Prioridad.

Page 3: Planificación de Procesos-NéstorTraña

Round Robín• A cada proceso se le asigna un intervalo de tiempo llamado quantum

• Un proceso se ejecuta durante ese quantum de tiempo.

• Cuando un proceso recibe la CPU pueden suceder dos cosas.

– El proceso tiene una ráfaga de CPU menor que el quantum: entonces el proceso termina

antes del quantum y se planifica un nuevo proceso.

– El proceso tiene una ráfaga de CPU mayor que el quantum: entonces acaba el quantum, se

le expulsa de la CPU dando paso a otro proceso y el proceso se colocara al final de la cola

de procesos listos.

• Como regla general se sostiene que el 80% de las ráfagas de CPU deben tener una duración

menor al valor del quantum.

• Se implementa con una cola FIFO de procesos.

Page 4: Planificación de Procesos-NéstorTraña

Round Robín

Page 5: Planificación de Procesos-NéstorTraña

Round RobínEJEMPLO: Cinco trabajos en lotes A, B, C, D, E llegan a un centro de computo casi al mismo tiempo.

Estos tienen tiempos de ejecución de 10, 6, 2, 4, 8 minutos. Determine el tiempo de

ejecución total de cada proceso y en que orden terminan. Ignore el gasto aplicado en el

cambio de cada proceso. El sistema es multiprogramado y el quantum es de 2 minutos

A=10

B=6

C=2

D=4

E=8

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

Tiempo y Orden de Ejecución

C=6, D=16, B=22, E=28, A=30

Page 6: Planificación de Procesos-NéstorTraña

Round RobínEJEMPLO: Cinco trabajos en lotes P1, P2, P3, P4, P5 llegan a un centro de computo casi al mismo

tiempo. Estos tienen tiempos de ejecución en milisegundos de 120, 60, 220, 180, 50.

Calcule: a) El tiempo total consumido, b) Tiempo Total administrativo consumido, c)

Cuanto espero P3 para su segundo turno, d) Cuanto espero P4 para su segundo turno.

Tome en cuenta que el quantum de tiempo es de 100ms y el tiempo de admón. es de

5ms

P1=120

P2=60

P3=220

P4=180

P5=50

100

60

100

100

50

20

100

80

20

Tiempo y Orden de Ejecución

a) 670ms, b) 40ms, c) 460ms, d) 565ms

Page 7: Planificación de Procesos-NéstorTraña

Primero El Trabajo Más Corto• El proceso en espera con el menor tiempo estimado de ejecución es el siguiente en ejecutarse.

• Los tiempos promedio de espera son menores que con “FIFO”.

• Los tiempos de espera son menos predecibles que en “FIFO”.

• Favorece a los procesos cortos en lugar de los largos.

• Tiende a reducir el número de procesos en espera y el número de procesos que esperan detrás

de procesos largos.

• Requiere un conocimiento preciso del tiempo de ejecución de un proceso, lo que generalmente

se desconoce.

Page 8: Planificación de Procesos-NéstorTraña

Primero El Trabajo Más CortoEjemplo: Calcule el tiempo promedio de respuesta, considerando:

a) Que todos los procesos llegan al mismo tiempo

b) Sin aplicar el algoritmo

c) Que algunos procesos llegan al mismo tiempo y otros no.

P1, P3, P4 08:05:00

P2, P5 08:10:00

Proceso Tamaño

P1 20

P2 80

P3 15

P4 100

P5 20

P3 P1 P5 P2 P4

15 20 20 80 100

a) P3=15, P1=35, P5=55, P2=135, P4=235: Promedio= 475/5=95

b) P1=20, P2=100, P3=115, P4=215, P5=235: Promedio=685/5=137

c) P3=15, P1=35, P4=135, P5=155, P2=235: Promedio=575/5=115

Page 9: Planificación de Procesos-NéstorTraña

Planificación de Procesos

(continuación…)

Page 10: Planificación de Procesos-NéstorTraña

Planificación Por Prioridad

5

6

43

1

2

Page 11: Planificación de Procesos-NéstorTraña

Planificación Por PrioridadEjemplo: Resuelva el siguiente ejercicio

Prioridad 3 P1, P5, P7

Prioridad 2 P2, P3

Prioridad 1 P4, P6

Quantum = 80ms

Formula= Quantum / tiempo consumido del proceso en el turno anterior

Proceso 1T 2T 3T

P1

P2

P3

P4

P5

P6

P7

40

40

40

50

20

60

10

20

40

20

---

40

---

40

10

---

80

---

---

---

---

Page 12: Planificación de Procesos-NéstorTraña

Planificación Por PrioridadP1 Prioridad 3 P5, P7

Prioridad 2 P2, P3

Prioridad 1 P4, P6

Prioridad = 80 / 40 = 2

P5 Prioridad 3 P7

Prioridad 2 P2, P3, P1

Prioridad 1 P4, P6

Prioridad = 80 / 20 = 4 Nueva Prioridad

*P5 Prioridad 3 P7

Prioridad 2 P2, P3, P1

Prioridad 1 P4, P6

Prioridad = 80 / 40 = 2

P7 Prioridad 2 P2, P3, P1

Prioridad 1 P4, P6

Prioridad = 80 / 10 = 8 Nueva Prioridad

Page 13: Planificación de Procesos-NéstorTraña

Planificación Por Prioridad*P7 Prioridad 2 P2, P3, P1

Prioridad 1 P4, P6

Prioridad = 80 / 40 = 2

P2 Prioridad 2 P3, P1

Prioridad 1 P4, P6

Prioridad = 80 / 40 = 2

P3 Prioridad 2 P1, P2

Prioridad 1 P4, P6

Prioridad = 80 / 40 = 2

P1 Prioridad 2 P2, P3

Prioridad 1 P4, P6

Prioridad = 80 / 20 = 4

*P1 Prioridad 2 P2, P3

Prioridad 1 P4, P6

Prioridad = 80 / 10 = 8

Page 14: Planificación de Procesos-NéstorTraña

Planificación Por Prioridad*P2 Prioridad 2 P3

Prioridad 1 P4, P6

Prioridad = 80 / 40 = 2

P3 Prioridad 1 P4, P6

Prioridad = 80 / 20 = 4

*P3 Prioridad 1 P4, P6

Prioridad = 80 / 80 = 1

*P4 Prioridad 1 P6

Prioridad = 80 / 50 = 1.6

*P6 Prioridad = 80 / 60 = 1.3

Page 15: Planificación de Procesos-NéstorTraña

Planificación GarantizadaCaracterísticas

1. Se debe de conocer el % del CPU asignado a cada proceso

2. Se debe contabilizar el tiempo consumido

3. Se debe controlar el porcentaje del CPU requerido

4. Se debe asignar un porcentaje del CPU equitativo a todos los procesos

Page 16: Planificación de Procesos-NéstorTraña

Planificación GarantizadaCaracterísticas

1. Se establecen compromisos de desempeño con el proceso del usuario, por ejemplo, si existen “n”

procesos en el sistema, el proceso del usuario recibirá cerca del “1/n” de la potencia del CPU.

2. El sistema debe tener un registro del tiempo del CPU que cada proceso ha tenido desde su

entrada al sistema y del tiempo transcurrido desde esa entrada.

3. Con los datos anteriores y el registro de procesos en curso de ejecución, el sistema calcula y

determina qué procesos están más alejados por defecto de la relación “1/n” prometida y prioriza

los procesos que han recibido menos CPU de la prometida

Page 17: Planificación de Procesos-NéstorTraña

Planificación En Dos NivelesCaracterísticas

1. Se carga en la memoria principal cierto subconjunto de los procesos ejecutables.

2. El planificador se restringe entonces a ese subconjunto durante cierto tiempo.

3. Se eliminan de la memoria los procesos que hayan permanecido en ella lo suficiente y manda a

cargar a memoria los procesos que hayan estado en disco demasiado tiempo.

Page 18: Planificación de Procesos-NéstorTraña

Planificación En Dos NivelesPlanificador de alto nivel

Se encarga de llevar procesos de disco a memoria y viceversa

Planificador de bajo nivel

Se encarga de pasar de un proceso a otro en memoria principal

Varios criterios

Tiempo en memoria

Tiempo de procesador

Prioridad

Tamaño.

Page 19: Planificación de Procesos-NéstorTraña