Está en la página 1de 52

Sistemas Operativos

Tema 4: Planificacin de Procesos

ndice:
Tema 4: Planificacin de procesos

1. Objetivos de la planificacin.
2. ndices de Evaluacin 3. Planificacin Apropiativa y No Apropiativa

4. Mtodos no Apropiativos
5. Mtodos Apropiativos
2

ndice:
Tema 4: Planificacin de procesos

1. Objetivos de la planificacin.
2. ndices de Evaluacin 3. Planificacin Apropiativa y No Apropiativa

4. Mtodos no Apropiativos
5. Mtodos Apropiativos
3

1. Objetivos de la planificacin
Tema 4: Planificacin de procesos

Planificacin = repartir el tiempo de CPU


Lo que hay, es lo que hay (favorecer un tipo de proceso implica perjudicar otro)

Objetivos:
Aprovechamiento de CPU Disminucin tiempos de espera por parte de procesos

1. Objetivos de la planificacin
Tema 4: Planificacin de procesos

Comportamiento deseable Imparcialidad Repetibilidad Predecibilidad Eficiencia Productividad


Sistemas no interactivos: n trabajos / unidad de tiempo Sistemas interactivos: tiempo de respuesta

Economa Equilibrio Optimizar uso de recursos crticos Degradacin progresiva Tiempos aceptables!

ndice:
Tema 4: Planificacin de procesos

1. Objetivos de la planificacin.
2. ndices de Evaluacin 3. Planificacin Apropiativa y No Apropiativa

4. Mtodos no Apropiativos
5. Mtodos Apropiativos

2. ndices de Evaluacin
T
Tema 4: Planificacin de procesos t W

He

Hc

Ht

Tiempo de espera: W=Hc-He

Tiempo de ejecucin: t (Ojo con las operaciones E/S!)


Tiempo de terminacin: T= Ht-He

2. ndices de Evaluacin
T
Tema 4: Planificacin de procesos t W

He

Hc

Ht

Tiempo perdido: M= T t
ndice de respuesta: R= t / T

Tiempo de respuesta
Tiempo de inactividad

ndice de penalizacin: P= T / t Tiempo del sistema

2. ndices de Evaluacin (cont.)


Tema 4: Planificacin de procesos

Evaluacin:
Anlisis Simulacin Experimentacin

ndice:
Tema 4: Planificacin de procesos

1. Objetivos de la planificacin.
2. ndices de Evaluacin 3. Planificacin Apropiativa y No Apropiativa

4. Mtodos no Apropiativos
5. Mtodos Apropiativos

3. Planificacin Apropiativa y No Apropiativa


Planificacin no apropiativa:
Tema 4: Planificacin de procesos

Una vez asignada CPU slo se retira en caso de bloqueo Posibilidad de devolucin explcita

Planificacin apropiativa:
El planificador puede retirar la CPU

Planificacin NO Apropiativa: Ventajas:


Determinismo Menor n de conmutaciones menor sobrecarga

Inconvenientes:
Proceso largo monopoliza la CPU Baja fiabilidad

3. Planificacin Apropiativa y No Apropiativa


Tema 4: Planificacin de procesos

Planificacin Apropiativa: Ventajas e inconvenientes: al revs que No Apropiativa Necesaria en:


Sistemas multiusuario interactivos En determinados tipos de sistemas en tiempo real

ndice:
Tema 4: Planificacin de procesos

1. Objetivos de la planificacin.
2. ndices de Evaluacin 3. Planificacin Apropiativa y No Apropiativa

4. Mtodos no Apropiativos
5. Mtodos Apropiativos

4. Mtodos no apropiativos
Tema 4: Planificacin de procesos

1.
2. 3. 4.

Por orden de llegada (FCFS)


Siguiente el proceso ms corto (SJN) Por mayor ndice de penalizacin (HPRN) Planificacin con conocimiento de futuro

4. Mtodos no apropiativos
Tema 4: Planificacin de procesos

1.
2. 3. 4.

Por orden de llegada (FCFS)


Siguiente el proceso ms corto (SJN) Por mayor ndice de penalizacin (HPRN) Planificacin con conocimiento de futuro

4.1 Planificacin por orden de llegada


Tema 4: Planificacin de procesos

Ante varios procesos preparados, CPU se asigna al que lleva ms tiempo esperando Ventajas:
Simplicidad Planificacin necesita pocos recursos

Inconvenientes:
Malos resultados!

4.1 Planificacin por orden de llegada


Tema 4: Planificacin de procesos

Ejemplo:
P1 P2 P3 P4 P4 P3 P2

He 0 1 2 3

t 3 100 10 1

Penalizacin P4: P= 111 / 1 = 111 Penalizacin P3: P= 101 / 10 = 10,1 Penalizacin P2: P= 102 / 100 = 1,02

Perjudica a procesos cortos que llegan tras procesos largos!


P4 P3 P2

P1 0 1 2 3 103 113 114

4. Mtodos no apropiativos
Tema 4: Planificacin de procesos

1.
2. 3. 4.

Por orden de llegada (FCFS)


Siguiente el proceso ms corto (SJN) Por mayor ndice de penalizacin (HPRN) Planificacin con conocimiento de futuro

4.2 Siguiente el proceso ms corto


Tema 4: Planificacin de procesos

Ante varios procesos preparados, CPU se asigna al proceso de menor duracin


P4 P3 P4 P3 P2 P1 0 1 2 3 4 14 114

P2

Penalizacin P4: P= 1 / 1 = 1 Penalizacin P3: P= 12 / 10 = 1,2 Penalizacin P2: P= 113 / 100 = 1,13

4.2 Siguiente el proceso ms corto


Tema 4: Planificacin de procesos

Ventajas:
Mejora a FCFS en que no perjudica a procesos cortos que lleguen despus de procesos largos

Inconvenientes:
A menos que el proceso largo ya se haya activado! Cul es la duracin t de nuestros procesos? Aplazamiento indefinido procesos largos!!

4. Mtodos no apropiativos
Tema 4: Planificacin de procesos

1.
2. 3. 4.

Por orden de llegada (FCFS)


Siguiente el proceso ms corto (SJN) Por mayor ndice de penalizacin (HPRN) Planificacin con conocimiento de futuro

4.3 Planif. por mayor ndice de penalizacin


Tema 4: Planificacin de procesos

Ante varios procesos preparados, CPU se asigna al que est sufriendo un mayor ndice de penalizacin

P = T / t, pero si planificacin no apropiativa, T=W+t P = (W+t) / t = W / t + 1!!

4.3 Planif. por mayor ndice de penalizacin


Tema 4: Planificacin de procesos He P1 P2 P3 P4 0 1 1 3 t 2 2 5 2 P2: W/t + 1=1/2 + 1 = 1,5 P3: W/t + 1=1/5 + 1 = 1,2 Gana P2! P4 P3: W/t + 1=3/5 + 1 = 1,6 P4: W/t + 1=1/2 + 1 = 1,5 Gana P3!

P4
P2,P3

P3 P2

P1

11

4.3 Planif. por mayor ndice de penalizacin


Tema 4: Planificacin de procesos

Ventajas:
Mejora a SJN en que no aplaza indefinidamente procesos largos

Inconvenientes:
Sigue perjudicando procesos cortos que llegan cuando ya ha comenzado proceso largo. Cul es la duracin t de nuestros procesos? Necesidad de realizacin de clculos

4. Mtodos no apropiativos
Tema 4: Planificacin de procesos

1.
2. 3. 4.

Por orden de llegada (FCFS)


Siguiente el proceso ms corto (SJN) Por mayor ndice de penalizacin (HPRN) Planificacin con conocimiento de futuro

4.4 Planificacin con conocimiento de futuro


Tema 4: Planificacin de procesos

Idea a aplicar en combinacin con otros criterios Si adivinramos que tras un proceso largo llegar en el futuro un proceso corto, obligando al largo a esperar la llegada y terminacin del corto, podemos mejorar el ndice medio de penalizacin!!
He P1 P2 0 1 t 100 1 P2

P1
CPU OCIOSA! 0 1 2 102

4.4 Planificacin con conocimiento de futuro


Tema 4: Planificacin de procesos

Buena prueba de que aprovechamiento de CPU y reduccin tiempos de espera pueden ser criterios contrapuestos Es posible tener conocimiento de futuro? Hay sistemas en los que no es descabellado (sistemas en tiempo real)

ndice:
Tema 4: Planificacin de procesos

1. Objetivos de la planificacin.
2. ndices de Evaluacin 3. Planificacin Apropiativa y No Apropiativa

4. Mtodos no Apropiativos
5. Mtodos Apropiativos

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5.1 Siguiente el ms corto, con apropiacin


Tema 4: Planificacin de procesos

Planificacin SJN, en la que se tambin se aplica el criterio cada vez que llega un nuevo proceso Si proceso que llega es ms corto que tiempo restante de proceso activo APROPIACIN
He
P1 P2 P3 0 1 2

t
100 10 1

5.1 Siguiente el ms corto, con apropiacin


Tema 4: Planificacin de procesos He P1 P2 P3 0 1 2 t 100 10 1

Ventajas:
Ya no es problema que un proceso corto llegue una vez activado un proceso largo!

P2 P3

Inconvenientes:
No slo puede aplazar indefinidamente el comienzo de procesos largos, sino que adems tambin su terminacin!
P1

P3 P2 P1 0 1

P3

P2

12

111

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5.2 Planificacin por prioridades


Tema 4: Planificacin de procesos

A cada proceso se le asigna una prioridad Lista de procesos preparados ordenada por prioridad El proceso activo ser siempre el de mayor prioridad
Si proceso activo se bloquea se activa el primero de lista Cuando un proceso pasa de bloqueado a preparado:
Si mayor prioridad que proceso activo apropiacin Si menor prioridad que proceso activo se inserta en lugar correspondiente de lista de preparados Pr=6
P1 Pr=2 P2 Pr=4 P3 Pr=5 Planificador P4

5.2 Planificacin por prioridades


Peligro:
Tema 4: Planificacin de procesos

Posibilidad aplazamiento indefinido de procesos de menor prioridad

Asignacin de prioridades es crtica! Criterios de asignacin de prioridades estticas:


Sistemas en tiempo real:
Sucesos ms importantes: Sucesos ms rpidos:

Sistemas por lotes:


Procesos con ms E/S:

Sistemas interactivos: ?

5.2 Planificacin por prioridades


Tema 4: Planificacin de procesos

Planificacin por prioridades mixtas:


Prioridad total = prioridad esttica + prioridad dinmica

Evolucin prioridad dinmica: Prioridad por envejecimiento


Prioridad de los procesos preparados se incrementa peridicamente Si prioridad total de algn proceso preparado supera la de proceso activo APROPIACIN Proceso apropiado pasa a preparado con prioridad dinmica mnima

5.2 Planificacin por prioridades


Tema 4: Planificacin de procesos

Evolucin prioridad dinmica (cont.) Por tiempo continuado de ejecucin


Se establece un tiempo mximo de ejecucin continuada A procesos que agotan 100% de dicho tiempo: prioridad dinmica mnima Procesos que se bloquean antes: prioridad dinmica proporcional a tiempo sobrante.

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5.3 Planificacin por turno rotatorio


Tema 4: Planificacin de procesos

Se establece un tiempo mximo de ejecucin (ranura, cuanto, cuantum, q) Se asigna la CPU por turnos de duracin mxima = q a los procesos preparados

P2 P3 P4 P1

P3 P4 P1 P2

P4 P1 P2 P3

Planificador P1 P2 P3 P4

5.3 Planificacin por turno rotatorio


Tema 4: Planificacin de procesos

Consideraciones sobre el cuanto:

Tiempo mximo empleado en una rotacin si hay N procesos: N*q


Tiempo de respuesta (N-1)*q

5.3 Planificacin por turno rotatorio


Tema 4: Planificacin de procesos

Podra q ser tan pequeo como quisiramos?

P1

P2

P3

P4

P1

P2 t

5.3 Planificacin por turno rotatorio


Tema 4: Planificacin de procesos

Podra q ser tan pequeo como quisiramos? Ideal: Un poco mayor que tiempo medio entre dos operaciones bloqueantes
Procesos que no se bloquean: casi no les afecta la apropiacin. Procesos de clculo: son apropiados

5.3 Planificacin por turno rotatorio


Tema 4: Planificacin de procesos

Deberamos compensar a los procesos que debido a bloqueo pierden parte de su cuanto? Acumulacin de cuantos: La parte no consumida del cuanto se aadir al siguiente cuanto tras terminar bloqueo Difcil implementacin Monopolizacin CPU! Reinsercin intermedia El proceso se reinserta en lista de preparado en posicin proporcional a tiempo no consumido

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5.4 Planificacin por colas multinivel


Tema 4: Planificacin de procesos

El planificador tiene varias colas de procesos preparados Cada cola se puede planificar por turno rotatorio Posibilidad de diversos criterios

Colas organizadas por prioridad:


P1 - prioridad + P2 P3

P4

P5

Planificador

P6

P7

5.4 Planificacin por colas multinivel


Tema 4: Planificacin de procesos

Colas multinivel con realimentacin:


Mtodo que se adapta a carcter dinmico de los procesos
4x
P1 P2 P3 q

2x

P4

P5

2q

Planificador

1x

P6

P7

4q

5.4 Planificacin por colas multinivel


Tema 4: Planificacin de procesos

Colas multinivel con realimentacin:


Mtodo que se adapta a carcter dinmico de los procesos

P1

P2

P3

P4

P5

2q

Planificador

P6

P7

4q

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5.5 Planificacin por reparto equitativo


Tema 4: Planificacin de procesos

El problema?
1/3 CPU 1/4 CPU 1/3 CPU 1/4 CPU 1/3 CPU 1/2 CPU

P1

P2

P3

P4

5.5 Planificacin por reparto equitativo


Tema 4: Planificacin de procesos

La solucin:
Crear grupos de procesos (o hilos) que reciben igual proporcin de tiempo de CPU Cada grupo = grupo de reparto equitativo Si un proceso/hilo crea otro proceso/hilo, el proceso/hilo creado pertenecer al mismo grupo de reparto equitativo.
G1
P4 P1 P2

G2
P3

G3
P6

P5

5. Mtodos apropiativos
Tema 4: Planificacin de procesos

1. 2. 3. 4.

Siguiente el ms corto, con apropiacin (PSJN) Planificacin por prioridades Planificacin por turno rotatorio (Round Robin) Planificacin por colas multinivel

5.
6.

Planificacin por reparto equitativo


Planificacin por peor servicio

5.6 Planificacin por peor servicio


Tema 4: Planificacin de procesos

Definir alguna medida de cmo de beneficiado o perjudicado est resultando un proceso en el reparto. Ejemplos:
Tiempo que lleva en la lista de procesos preparados Tiempo total de CPU recibido en pasado reciente Relacin entre tiempo terico correspondiente y tiempo recibido

El planificador asigna CPU a aquel proceso que est siendo peor atendido HPRN: ejemplo (no apropiativo) de implementacin

También podría gustarte