- 1. Tema del da: Implementacin de Procesos y Planificacin
2. Objetivos
- En esta clase trataremos de:
-
- Repasar el concepto de proceso e hilo.
-
- Analizar las cuestiones de implementacin de procesos e
hilos.
-
- Conocer las problemticas de la planificacin del uso del
procesador as como las diversas estrategias propuestas para
solucionarlas.
-
- Evaluar las ventajas y desventajas de cada estrategia de
implementacin.
3. Repaso
4. Repaso
Modelo de Cinco Estados Nuevo Listo Ejecutando Bloqueado
Terminado 5. Repaso
Modelo con Estados Suspendidos Nuevo Listo Ejecutando Bloqueado
Terminado Listo y Suspendido Bloqueado y Suspendido 6.
Implementacin
- Bloque de control de procesos (PCB).
-
- Descriptores de Archivos Abiertos.
-
- Informacin de Contabilidad.
-
- Punteros a otras estructuras de datos del S.O.
7. Planificacin de la CPU
(a) Proceso CPU intensivo. (b) Proceso E/S intensivo. 8.
Planificacin de la CPU
- Throughput : # de procesos ejecutados por unidad de tiempo (de
principio a fin).
- Tiempo de retorno : tiempo que tarda en completar su ejecucin
un proceso.
- Tiempo de espera : tiempo total que pasa un proceso en la cola
de listos.
- Tiempo de respuesta : tiempo transcurrido desde que se hace una
solicitud hasta recibir la respuesta.
9. Planificacin de la CPU
- Reparto equitativo de la CPU.
- Eficiencia (maximizar uso de la CPU).
- Minimizar tiempo de respuesta (interactivo).
- Minimizar tiempo de retorno (batch).
- Maximizarthroughput(batch).
- Cumplir con tiempos lmites (tiempo real).
10. Planificacin de la CPU
Nuevo Listo Ejecutando Bloqueado Terminado Listo y Suspendido
Bloqueado y Suspendido Planificacin aLargo Plazo Planificacin a
Mediano Plazo Planificacin aCorto Plazo 11. Planificacin de la
CPU
Proceso Tiempo CPU P1 24 P23 P3 3
- Orden de llegada: P1, P2, P3
- Tiempo de espera: P1 = 0; P2 = 24; P3 = 27
- Tiempo Medio de Espera:(0 + 24 + 27)/3 = 17
P 1 P 2 P 3 24 27 30 0 12. Planificacin de la CPU
- FCFS (First Come First Served)
- Orden de llegada: P2, P3, P1
- Tiempo de espera: P1 = 6; P2 = 0; P3 = 3
- Tiempo Medio de Espera:(6 + 0 + 3)/3 = 3
- Bastante Mejor que en el caso anterior...
P 1 P 3 P 2 6 3 30 0 13. Planificacin de la CPU
- SJF/SJN (Shortest Job First/Next):
- Asocia a cada proceso la longitud del mismo (en uso de la
CPU).
- Selecciona el que tenga menor longitud.
-
- Con expulsin (Shortest Remaining Time First).
- Es ptimo (minimiza el tiempo de espera)
- La dificultad est en calcular la longitud....
14. Planificacin de la CPU
Proceso ArriboCPU P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 Tiempo de
espera medio = (0+6+3+7)/4 = 4 P 1 P 3 P 2 7 3 16 0 P 4 8 12 15.
Planificacin de la CPU
Proceso ArriboCPU P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 Tiempo de
espera medio = (9+1+0+2)/4 = 3 P 1 P 3 P 2 4 2 11 0 P 4 5 7 P 2 P 1
16 16. Planificacin de la CPU
- SJF/SJN (Shortest Job First/Next):
- Es muy complejo calcular la longitud por adelantado....
- Puede provocar inanicin ante gran cantidad de procesos
cortos.
- Sin expulsin no es adecuado para ambientes de tiempo
compartido.
- Con expulsin penaliza a los procesos largos, con lo cual puede
empeorar la inanicin.
17. Planificacin de la CPU
- Planificacin por prioridades:
- A cada proceso se asocia una prioridad N.
- El planificador asigna la CPU al menor N.
-
- Con expulsin (preemptive).
- Solucin: envejecimiento (aging).
18. Planificacin de la CPU
- Cola Circular (Round Robin):
- A cada proceso se le cede la CPU durante un periodo de
tiempoq(quantum de tiempo).
- Si haynprocesos, entonces la espera mxima esw= ( n -1)* q
-
- qpequeo: siqes demasiado pequeo respecto del tiempo de cambio
de contexto, el overhead puede ser demasiado alto...
19. Planificacin de la CPU
Proceso Tiempo CPU P1 53 P2 17 P3 68 P4 24
- Normalmente tiempo de retorno mayor que SJF, pero menor tiempo
de respuesta.
P 1 P 2 P 3 P 4 P 1 P 3 P 4 P 1 P 3 P 3 0 20 37 57 77 97 117 121
134 154 162 20. Bibliografa
- Esta clasedebeser ampliada viendo:
-
- Carretero (S.O. Visin Aplicada) (1ra. ed.):
-
- Nutt (Sistemas Operativos):
-
-
- Captulo 6: Impl. Procesos, Hilos y Recursos.
21. Gracias ! Ing. Gabriel E. Arellano [email_address]
http://www.gabriel-arellano.com.ar/so/ (2008) Gabriel E. Arellano
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by the Free Software
Foundation; with no Invariant Sections, no Front-Cover Texts, and
no Back-Cover Texts. The GNU Free Documentation License as
applicable to this document can be found
at:http://www.gnu.org/copyleft/fdl.html