1 / 12

Planificación

Planificación. Visión General. El planificador del SO se construye a partir de un mecanismo para la conmutación de contexto y una política que determina el orden en que se van a recibir su servicio los procesos preparados. Políticas generales. Algoritmos apropiativos

Download Presentation

Planificación

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Planificación

  2. Visión General El planificador del SO se construye a partir de un mecanismo para la conmutación de contexto y una política que determina el orden en que se van a recibir su servicio los procesos preparados.

  3. Políticas generales • Algoritmos apropiativos  Usan la CPU durante un intervalo de tiempo hasta que el planificador los interrumpe para asignar la CPU a otro proceso preparado de mayor prioridad • Algoritmos no apropiativos  Permiten que un proceso se ejecute hasta su finalización una vez que obtiene el uso del procesador

  4. Actividad • En equipos de dos personas investiga lo que es la planificación de hilos Apropiación o Cesión Voluntaria Nuevo hilo Lista de preparados Planificador CPU Hecho Trabajo Trabajo Preparado Trabajo Ejecutándose Gestor de Recursos Asignado Trabajo Petición Trabajo Bloqueado Recursos

  5. Características de la planificación El CPU puede compararse con un cajero en un banco, y los hilos pueden verse como los clientes que necesitan interactuar con el cajero para realizar sus negocios (transacciones Complejas) Los administradores de los bancos se interesan por la política de seguridad que les permita determinar cuánto puede crecer una cola de espera hasta que tengan que añadir otro cajero, si los cajeros deberían especializarse en tareas cómo realizar sólo los depósitos o las extracciones ( y no otros servicios)

  6. Actividad Discuta con sus compañeros las siguientes cuestiones: + ¿Cómo debe diseñarse el planificador para que asigne el CPU a procesos que compiten entre sí para lograr? + ¿Debería asignarse el CPU sobre la base de la prioridad externa? + ¿Debería intentar ser lo más justo posible? + ¿Debería intentar priorizar los hilos con un tiempo de ejecución más corto (o más largo) sobre el resto?

  7. Modelos para planificación Sea P = {pi | 0 <= i < n} Un conjunto de procesos modernos. Si una implementación, cada proceso, pi, se representa por un descriptor que especifica una lista de los hilos {pi,j}, que se ejecutan en el proceso, cada uno de los cuales tiene un campo de estado, S(pi,j). El estado podría ser una ejecución, preparado, o bloqueado, por lo que decimos que S(pi,j) e {ejecución, preparado, bloqueado)

  8. Métricas empleadas para comparar las estrategias de planificación • Tiempo de servicio t(pi,j): la cantidad de tiempo que precisa estar un hilo en el estado de ejecución antes de terminar. • Tiempo de espera W(pi,j): el tiempo que gasta el hilo esperando en el estado preparado antes de su primera transición al estado ejecución. • Tiempo de vuelta para el hilo pi,j , Tv(pi,j): El tiempo que media entre la primera aparición del estado preparado y el momento en que el hilo sale del estado ejecución por última vez.

  9. Estrategias no apropiativas Permiten que cualquier proceso/hilo se ejecute hasta su finalización. Primero en llegar primero en ser servido. Asigna prioridades a los hilos en el orden en que la solicitan al procesador

  10. Primero en llegar primero en ser servido. En el algoritmo FCFS, los procesos se planifican en el orden que llegan. En este caso, el planificador asignara el CPU a p0, después a p1,p2,p3 y finalmente p4. 0 350 475 950 1200 1275 p0 p1 p2 p3 p4 Determinación del tiempo de vuelta de cada hilo, en el diagrama de Gantt. Tv(p0) = t(p0) = 350 Tv(p1) = t(p1) + Tv(p0)) = 125 + 350 = 475 Tv(p2) = t(p2) + Tv(p1)) = 475 + 475 = 950 Tv(p3) = t(p3) + Tv(p2)) = 250 + 950 = 1200 Tv(p4) = t(p4) + Tv(p3)) = 75 + 1200 = 1275 Por lo cual el tiempo medio de vuelta es: Tv = ( 350 + 475 + 950 + 1200 + 1275) / 5 = 850

  11. Primero en llegar primero en ser servido. 0 350 475 950 1200 1275 p0 p1 p2 p3 p4 Mediante el diagrama de Gantt podemos determinar los tiempos de espera: W(p0) = 0 W(p1) = Tv(p0)) = 350 W(p2) = Tv(p1)) = 475 W(p3) = Tv(p2)) = 950 W(p4) = Tv(p3)) = 1200 Por lo cual el tiempo medio de vuelta es: Tv = ( 0 + 350 + 475 + 950 + 1200)/5 = 2975 / 5 = 595

  12. Actividad Suponga que se tienen que ejecutar los siguientes trabajos con un procesador, con los trabajos con tiempo de llegada de la lista ordenada que sigue a continuación: Suponga un sistema con planificación FCFS. Cree un diagrama de Gantt que muestre la ejecución de estos procesos. b. ¿Cuál es tiempo medio de vuelta para el proceso p4? c. ¿Cuál es el tiempo medio de espera para los procesos?

More Related