Sistemas Operativos Tema 4 Planificacin de Procesos 1

  • Slides: 53
Download presentation
Sistemas Operativos Tema 4: Planificación de Procesos 1

Sistemas Operativos Tema 4: Planificación de Procesos 1

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de Evaluación 3. Planificación Apropiativa y No Apropiativa 4. Métodos no Apropiativos 5. Métodos Apropiativos 2

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de Evaluación 3. Planificación Apropiativa y No Apropiativa 4. Métodos no Apropiativos 5. Métodos Apropiativos 3

Tema 4: Planificación de procesos 1. Objetivos de la planificación v Planificación = repartir

Tema 4: Planificación de procesos 1. Objetivos de la planificación v Planificación = repartir el tiempo de CPU Ø “Lo que hay, es lo que hay” (favorecer un tipo de proceso implica perjudicar otro) v Objetivos: Ø Aprovechamiento de CPU Ø Disminución tiempos de espera por parte de procesos 4

Tema 4: Planificación de procesos 1. Objetivos de la planificación Comportamiento deseable v Imparcialidad

Tema 4: Planificación de procesos 1. Objetivos de la planificación Comportamiento deseable v Imparcialidad v Repetibilidad v Predecibilidad v Eficiencia v Productividad Ø Sistemas no interactivos: nº trabajos / unidad de tiempo Ø Sistemas interactivos: tiempo de respuesta v v v Economía Equilibrio Optimizar uso de recursos críticos Degradación progresiva ¡Tiempos aceptables! 5

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de Evaluación 3. Planificación Apropiativa y No Apropiativa 4. Métodos no Apropiativos 5. Métodos Apropiativos 6

2. Índices de Evaluación Tema 4: Planificación de procesos T t W He Hc

2. Índices de Evaluación Tema 4: Planificación de procesos T t W He Hc Ht t v Tiempo de espera: W=Hc-He v Tiempo de ejecución: t (¡Ojo con las operaciones E/S!) v Tiempo de terminación: T= Ht-He 7

2. Índices de Evaluación Tema 4: Planificación de procesos T t W He Hc

2. Índices de Evaluación Tema 4: Planificación de procesos T t W He Hc v Tiempo perdido: M= T – t Ht t v Tiempo de respuesta v Índice de penalización: P= T / t v Tiempo del sistema v Índice de respuesta: R= t / T v Tiempo de inactividad 8

Tema 4: Planificación de procesos 2. Índices de Evaluación (cont. ) v Evaluación: Ø

Tema 4: Planificación de procesos 2. Índices de Evaluación (cont. ) v Evaluación: Ø Análisis Ø Simulación Ø Experimentación 9

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de Evaluación 3. Planificación Apropiativa y No Apropiativa 4. Métodos no Apropiativos 5. Métodos Apropiativos 10

3. Planificación Apropiativa y No Apropiativa Tema 4: Planificación de procesos v Planificación no

3. Planificación Apropiativa y No Apropiativa Tema 4: Planificación de procesos v Planificación no apropiativa: Ø Una vez asignada CPU sólo se retira en caso de bloqueo Ø Posibilidad de devolución explícita v Planificación apropiativa: Ø El planificador puede retirar la CPU Planificación NO Apropiativa: v Ventajas: Ø Determinismo Ø Menor nº de conmutaciones → menor sobrecarga v Inconvenientes: Ø Proceso largo monopoliza la CPU Ø Baja fiabilidad 11

Tema 4: Planificación de procesos 3. Planificación Apropiativa y No Apropiativa Planificación Apropiativa: v

Tema 4: Planificación de procesos 3. Planificación Apropiativa y No Apropiativa Planificación Apropiativa: v Ventajas e inconvenientes: al revés que No Apropiativa v Necesaria en: Ø Sistemas multiusuario interactivos Ø En determinados tipos de sistemas en tiempo real 12

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de Evaluación 3. Planificación Apropiativa y No Apropiativa 4. Métodos no Apropiativos 5. Métodos Apropiativos 13

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada (FCFS) 2. Siguiente el proceso más corto (SJN) 3. Por mayor índice de penalización (HPRN) 4. Planificación conocimiento de futuro 14

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada (FCFS) 2. Siguiente el proceso más corto (SJN) 3. Por mayor índice de penalización (HPRN) 4. Planificación conocimiento de futuro 15

Tema 4: Planificación de procesos 4. 1 Planificación por orden de llegada v Ante

Tema 4: Planificación de procesos 4. 1 Planificación por orden de llegada v Ante varios procesos preparados, CPU se asigna al que lleva más tiempo esperando v Ventajas: Ø Simplicidad Ø Planificación necesita pocos recursos v Inconvenientes: Ø ¡Malos resultados! 16

Tema 4: Planificación de procesos 4. 1 Planificación por orden de llegada Ejemplo: He

Tema 4: Planificación de procesos 4. 1 Planificación por orden de llegada Ejemplo: He t P 1 0 3 P 2 1 100 P 3 2 10 P 4 3 1 Ø Penalización P 4: P= 111 / 1 = 111 Ø Penalización P 3: P= 101 / 10 = 10, 1 Ø Penalización P 2: P= 102 / 100 = 1, 02 ¡Perjudica a procesos cortos que llegan tras procesos largos! P 4 P 3 P 4 P 2 P 3 P 2 P 1 0 1 2 3 103 114 17

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada (FCFS) 2. Siguiente el proceso más corto (SJN) 3. Por mayor índice de penalización (HPRN) 4. Planificación conocimiento de futuro 18

Tema 4: Planificación de procesos 4. 2 Siguiente el proceso más corto v Ante

Tema 4: Planificación de procesos 4. 2 Siguiente el proceso más corto v Ante varios procesos preparados, CPU se asigna al proceso de menor duración P 4 P 3 P 4 P 2 P 3 P 2 P 1 0 1 2 3 4 14 114 Ø Penalización P 4: P= 1 / 1 = 1 Ø Penalización P 3: P= 12 / 10 = 1, 2 Ø Penalización P 2: P= 113 / 100 = 1, 13 19

Tema 4: Planificación de procesos 4. 2 Siguiente el proceso más corto v Ventajas:

Tema 4: Planificación de procesos 4. 2 Siguiente el proceso más corto v Ventajas: Ø Mejora a FCFS en que no perjudica a procesos cortos que lleguen después de procesos largos… v Inconvenientes: Ø … A menos que el proceso largo ya se haya activado! Ø ¿Cuál es la duración t de nuestros procesos? Ø ¡¡Aplazamiento indefinido procesos largos!! 20

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada (FCFS) 2. Siguiente el proceso más corto (SJN) 3. Por mayor índice de penalización (HPRN) 4. Planificación conocimiento de futuro 21

Tema 4: Planificación de procesos 4. 3 Planif. por mayor índice de penalización v

Tema 4: Planificación de procesos 4. 3 Planif. por mayor índice de penalización v Ante varios procesos preparados, CPU se asigna al que está sufriendo un mayor índice de penalización v P = T / t, pero si planificación no apropiativa, T=W+t v ¡¡ P = (W+t) / t = W / t + 1!! 22

Tema 4: Planificación de procesos 4. 3 Planif. por mayor índice de penalización He

Tema 4: Planificación de procesos 4. 3 Planif. por mayor índice de penalización He t P 1 0 2 P 2 1 2 P 3 1 5 P 4 3 2 P 3: W/t + 1=3/5 + 1 = 1, 6 P 4: W/t + 1=1/2 + 1 = 1, 5 ¡Gana P 3! P 2: W/t + 1=1/2 + 1 = 1, 5 P 3: W/t + 1=1/5 + 1 = 1, 2 ¡Gana P 2! P 4 P 2, P 3 P 2 P 1 0 1 2 3 4 9 11 23

Tema 4: Planificación de procesos 4. 3 Planif. por mayor índice de penalización v

Tema 4: Planificación de procesos 4. 3 Planif. por mayor índice de penalización v Ventajas: Ø Mejora a SJN en que no aplaza indefinidamente procesos largos v Inconvenientes: Ø Sigue perjudicando procesos cortos que llegan cuando ya ha comenzado proceso largo. Ø ¿Cuál es la duración t de nuestros procesos? Ø Necesidad de realización de cálculos 24

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada

Tema 4: Planificación de procesos 4. Métodos no apropiativos 1. Por orden de llegada (FCFS) 2. Siguiente el proceso más corto (SJN) 3. Por mayor índice de penalización (HPRN) 4. Planificación conocimiento de futuro 25

Tema 4: Planificación de procesos 4. 4 Planificación conocimiento de futuro v Idea a

Tema 4: Planificación de procesos 4. 4 Planificación conocimiento de futuro v Idea a aplicar en combinación con otros criterios v Si adivináramos que tras un proceso largo llegará en el futuro un proceso corto, obligando al largo a esperar la llegada y terminación del corto, podemos mejorar el índice medio de penalización!! He t P 1 0 100 P 2 1 1 P 2 P 1 ¡CPU OCIOSA! 0 1 2 102 26

Tema 4: Planificación de procesos 4. 4 Planificación conocimiento de futuro v Buena prueba

Tema 4: Planificación de procesos 4. 4 Planificación conocimiento de futuro v Buena prueba de que aprovechamiento de CPU y reducción tiempos de espera pueden ser criterios contrapuestos v ¿Es posible tener conocimiento de futuro? Hay sistemas en los que no es descabellado (sistemas en tiempo real) 27

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de

Tema 4: Planificación de procesos Índice: 1. Objetivos de la planificación. 2. Índices de Evaluación 3. Planificación Apropiativa y No Apropiativa 4. Métodos no Apropiativos 5. Métodos Apropiativos 28

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 29

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 30

Tema 4: Planificación de procesos 5. 1 Siguiente el más corto, con apropiación v

Tema 4: Planificación de procesos 5. 1 Siguiente el más corto, con apropiación v Planificación SJN, en la que se también se aplica el criterio cada vez que llega un nuevo proceso v Si proceso que llega es más corto que tiempo restante de proceso activo → APROPIACIÓN He t P 1 0 100 P 2 1 10 P 3 2 1 31

Tema 4: Planificación de procesos 5. 1 Siguiente el más corto, con apropiación He

Tema 4: Planificación de procesos 5. 1 Siguiente el más corto, con apropiación He t P 1 0 100 P 2 1 10 P 3 2 1 v Ventajas: Ø Ya no es problema que un proceso corto llegue una vez activado un proceso largo! v Inconvenientes: P 2 P 3 Ø No sólo puede aplazar indefinidamente el comienzo de procesos largos, sino que además también su terminación! P 3 P 2 P 1 0 P 1 1 2 3 12 111 32

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 33

Tema 4: Planificación de procesos 5. 2 Planificación por prioridades v A cada proceso

Tema 4: Planificación de procesos 5. 2 Planificación por prioridades v A cada proceso se le asigna una prioridad v Lista de procesos preparados ordenada por prioridad v 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 → apropiación • Si menor prioridad que proceso activo → se inserta en lugar correspondiente de lista de preparados Pr=6 P 1 P 2 P 3 Pr=2 Pr=4 Pr=5 Planificador P 4 34

5. 2 Planificación por prioridades Tema 4: Planificación de procesos v Peligro: Ø Posibilidad

5. 2 Planificación por prioridades Tema 4: Planificación de procesos v Peligro: Ø Posibilidad aplazamiento indefinido de procesos de menor prioridad v ¡Asignación de prioridades es crítica! v Criterios de asignación de prioridades estáticas: Ø Sistemas en tiempo real: • Sucesos más importantes: • Sucesos más rápidos: Ø Sistemas por lotes: • Procesos con más E/S: Ø Sistemas interactivos: … ¿? 35

Tema 4: Planificación de procesos 5. 2 Planificación por prioridades v Planificación por prioridades

Tema 4: Planificación de procesos 5. 2 Planificación por prioridades v Planificación por prioridades mixtas: Ø Prioridad total = prioridad estática + prioridad dinámica Evolución prioridad dinámica: v Prioridad por envejecimiento Ø Prioridad de los procesos preparados se incrementa periódicamente Ø Si prioridad total de algún proceso preparado supera la de proceso activo → APROPIACIÓN Ø Proceso apropiado pasa a preparado con prioridad dinámica mínima 36

Tema 4: Planificación de procesos 5. 2 Planificación por prioridades Evolución prioridad dinámica (cont.

Tema 4: Planificación de procesos 5. 2 Planificación por prioridades Evolución prioridad dinámica (cont. ) v Por tiempo continuado de ejecución Ø Se establece un tiempo máximo de ejecución continuada Ø A procesos que agotan 100% de dicho tiempo: prioridad dinámica mínima Ø Procesos que se bloquean antes: prioridad dinámica proporcional a tiempo sobrante. 37

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 38

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v Se establece

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v Se establece un tiempo máximo de ejecución (ranura, cuanto, cuantum, q) v Se asigna la CPU por turnos de duración máxima = q a los procesos preparados P 4 P 3 P 2 P 1 P 4 P 3 Planificador P 3 P 2 P 1 P 4 39

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v Consideraciones sobre

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v Consideraciones sobre el cuanto: v Tiempo máximo empleado en una rotación si hay N procesos: N*q Ø Tiempo de respuesta ≤ (N-1)*q 40

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v ¿Podría q

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v ¿Podría q ser tan pequeño como quisiéramos? P 1 P 2 P 3 P 4 P 1 P 2 t 41

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v ¿Podría q

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v ¿Podría q ser tan pequeño como quisiéramos? v Ideal: Un poco mayor que tiempo medio entre dos operaciones bloqueantes Ø Procesos que no se bloquean: casi no les afecta la apropiación. Ø Procesos de cálculo: son apropiados t 42

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v ¿Deberíamos compensar

Tema 4: Planificación de procesos 5. 3 Planificación por turno rotatorio v ¿Deberíamos compensar a los procesos que debido a bloqueo pierden parte de su cuanto? Acumulación de cuantos: v La parte no consumida del cuanto se añadirá al siguiente cuanto tras terminar bloqueo v Difícil implementación v ¡Monopolización CPU! Reinserción intermedia v El proceso se reinserta en lista de preparado en posición proporcional a tiempo no consumido 43

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 44

v El planificador tiene varias colas de procesos preparados v Cada cola se puede

v El planificador tiene varias colas de procesos preparados v Cada cola se puede planificar por turno rotatorio v Posibilidad de diversos criterios Colas organizadas por “prioridad”: P 1 - prioridad + Tema 4: Planificación de procesos 5. 4 Planificación por colas multinivel P 2 P 3 P 4 P 5 P 6 P 7 Planificador 45

Tema 4: Planificación de procesos 5. 4 Planificación por colas multinivel Colas multinivel con

Tema 4: Planificación de procesos 5. 4 Planificación por colas multinivel Colas multinivel con realimentación: Ø Método que se adapta a carácter dinámico de los procesos 4 x P 1 2 x 1 x P 2 P 3 P 4 P 5 P 6 P 7 q 2 q Planificador 4 q 46

Tema 4: Planificación de procesos 5. 4 Planificación por colas multinivel Colas multinivel con

Tema 4: Planificación de procesos 5. 4 Planificación por colas multinivel Colas multinivel con realimentación: Ø Método que se adapta a carácter dinámico de los procesos P 1 P 2 P 3 P 4 P 5 P 6 P 7 q 2 q Planificador 4 q 47

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 48

Tema 4: Planificación de procesos 5. 5 Planificación por reparto equitativo v El ¿problema?

Tema 4: Planificación de procesos 5. 5 Planificación por reparto equitativo v El ¿problema? 1/3 1/4 CPU P 1 1/3 1/4 CPU P 2 1/3 1/2 CPU P 3 P 4 49

Tema 4: Planificación de procesos 5. 5 Planificación por reparto equitativo v La solución:

Tema 4: Planificación de procesos 5. 5 Planificación por reparto equitativo v La solución: Ø Crear grupos de procesos (o hilos) que reciben igual proporción 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. G 1 G 2 P 1 P 2 P 4 P 3 G 3 P 5 P 6 50

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con

Tema 4: Planificación de procesos 5. Métodos apropiativos 1. Siguiente el más corto, con apropiación (PSJN) 2. Planificación por prioridades 3. Planificación por turno rotatorio (Round Robin) 4. Planificación por colas multinivel 5. Planificación por reparto equitativo 6. Planificación por peor servicio 51

Tema 4: Planificación de procesos 5. 6 Planificación por peor servicio v Definir alguna

Tema 4: Planificación de procesos 5. 6 Planificación por peor servicio v Definir alguna medida de cómo 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 Ø Relación entre tiempo teórico correspondiente y tiempo recibido Ø… v El planificador asigna CPU a aquel proceso que esté siendo peor atendido v HPRN: ejemplo (no apropiativo) de implementación 52

53

53