Clase práctica - Scheduling

Documentos relacionados
Clase Práctica - Scheduling

Sistemas Operativos. Práctica 2: Scheduling

PRÁCTICO 3. Comprender la administración de procesos e hilos de los sistemas operativos. Comprender la tarea y la elección de un planificador.

PRÁCTICO 3. Comprender la administración de procesos e hilos de los sistemas operativos Comprender la tarea y la elección de un planificador.

Sistemas Operativos Scheduling de Procesos

Capítulo 5: Despacho de CPU

Conceptos de Planificación

ALGORITMOS DE PROGRAMACIÓN NO EXPULSIVOS

Niveles de Planificación

5.- Despacho de CPU. Utilización máxima de CPU con multiprogramación. Ciclo CPU I/O Ejecución de un proceso = ciclo de CPU (ejecución) y espera de I/O

6. Planificación. Los procesos tienden a tener ráfagas de ejecución (CPU-burst) y ráfagas de espera de operaciones de E/S (I/O burst).

Unidad 2: Gestión de Procesos

Preguntas de autoevaluación tema 3

Administración del Procesador

Fundamentos de los Sistemas Opera2vos. Tema 2. Procesos Planificación de CPU José Miguel Santos Alexis Quesada Francisco Santana

Objetivos de la Planificación. Planificación Monoprocesador. Tipos de Planificación. Tiempo de respuesta Productividad Eficiencia del procesador

Convivencia Gestión de Procesos

Sistemas Operativos Tema 6. Planificación de procesos José Miguel Santos Alexis Quesada Francisco Santana

Sistemas Operativos. Grado Ingeniería Informática. TGR Procesos.

Sistemas Operativos. Oscar Bedoya

PLANIFICACION DE LA CPU

Tema 2: Gestión de la CPU

ARQUITECTURA DE COMPUTADORES

Sistemas Operativos Primer recuperatorio 5 de diciembre de 2013

Sistemas Operativos. Trabajo Práctico N ō 3

Planificación de Procesos

Sistemas Operativos (Parte 2)

Sistemas Operativos. Curso 2014 Planificación

Sistemas Operativos. Curso 2015 Planificación

FUNDAMENTOS DE LOS SISTEMAS OPERATIVOS

- Bajo que condiciones el algoritmo de planifiación de procesos FIFO (FCFS) resultaría en el tiempo de respuesta promedio más pequeño?

SISTEMAS OPERATIVOS: PROCESOS. Planificación de procesos

Gestión de Procesos. Concepto. Concepto y criterios de planificación. Utilización del procesador:

Sistemas operativos, 2ª edición

Unidad 2: Gestión de Procesos

SISTEMAS OPERATIVOS: Lección 4: Planificación de Procesos

Scheduling. Ricardo Corin

Sistemas Operativos. 5 Itineración de CPU. Prof. Oscar Encina C.

Sistemas informáticos industriales. Sistemas Operativos

Concepto de Planificación Planificación: forma o criterio que se sigue a la hora de decidir que proceso debe entrar en ejecución.

Scheduling. Ricardo Corin

EJERCICIOS TEMAS 1 Y 2 - SO SOLUCIONES

Sistemas Operativos. Dr. Luis Gerardo de la Fraga. Departamento de Computación Cinvestav

El modelo de Procesos

Planificación de Procesos (Scheduling)

Sistemas Operativos. 5 Itineración de CPU. Prof. Javier Cañas R.

PLANIFICACIÓN DE PROCESOS

Tema 1: Introducción a los S.O. Ejercicios de Planificiación de Procesos

1- UNIVERSIDAD DE CIENCIAS EMPRESARIALES Y SOCIALES FACULTAD DE CIENCIAS EMPRESARIALES. Tecnicatura Universitaria en Programación de Sistemas

Sistemas Operativos Preguntas de Revisión

ISO Tema 7-B,

Sistemas Operativos. Pedro Cabalar TEMA III. PROCESOS. Depto. de Computación Universidade da Coruña

Sistemas operativos 2ª edición. Capítulo 4 Planificación del procesador (extracto de las transparencias del libro)

Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9)

Planificación de Procesos. Módulo 5. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco

Dr. Hernán Merlino Dr. Pablo Pytel

El scheduler O(1) de Linux

SISTEMAS OPERATIVOS PROBLEMAS RESUELTOS. Jorge Walter Orellana Araoz

Mercedes Fernández Redondo

Planificación. Gustavo Romero. 18 de enero de Arquitectura y Tecnología de Computadores. Introducción Poĺıticas Conclusiones

Sistemas Operativos. Procesos

Planificador de Linux (Scheduler)

Pontificia Universidad Católica del Ecuador

Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.

Seminario Diseño y construcción de microrrobots Planificador de monoprocesadores Marzo 2006 SEMINARIO DISEÑO Y CONSTRUCCIÓN DE MICRORROBOTS

Modelamiento de los procesos. Modelamiento de la cola de procesos. IIC2333 Sistemas Operativos y Redes 1/2018 Tarea 1. Descripción

Porque desarrolló el concepto de lista de tareas (pool de Job) que podía ser gestionada de acuerdo a políticas distintas a la FIFO.

IMPLANTACIÓN DE SISTEMAS OPERATIVOS 1º ASIR GESTIÓN DE PROCESOS

dit Planificación de tareas de tiempo real Juan Antonio de la Puente DIT/UPM UPM Copyright 2007, Juan Antonio de la Puente

Sistemas operativos 2ª edición. Capítulo 4 Planificación del procesador 4ª parte: Planificación de aplicaciones paralelas y distribuidas

Planificación de Monoprocesadores.

SOLUCIONES. DURACIÓN: Dispone de dos horas para realizar el examen. Lea las instrucciones para el test en la hoja correspondiente.

Planificación multiprocesador. Niveles de granularidad. Niveles de granularidad. Niveles de granularidad. Planificación multiprocesador - SSOO I

Planificación dinámica de tareas

Sistemas operativos 2ª edición. Capítulo 4 Planificación del procesador 1ª parte: planificación en monoprocesador

Sistemas Operativos II Febrero 2007 Nombre:

Pontificia Universidad Católica del Ecuador

Dispones de dos horas y media para completar el examen

Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.

Arquitectura de Computadores (obligatoria)

Departamento Ingeniería en Sistemas de Información

Pontificia Universidad Católica del Ecuador

Procesos. Planificación del Procesador.

Examen de Arquitectura de Computadores

PRÁCTICA 2 DE LABORATORIO: GESTIÓN DE RECURSOS DE MEMORIA Y PROCESADOR EN LINUX CENTOS

Unidad II. Lic. I. Vedia Lic.C. Mollinedo

Trabajo Final de Grado (TFG)

Sumario Prólogo Unidad didáctica 1. Introducción a los sistemas operativos Objetivos de la Unidad... 12

UNIVERSIDAD DE BELGRANO FAC. ING. Y TECNOLOGIA INFORMATICA SISTEMAS OPERATIVOS UNIDAD 3 PLANIFICACION DE PROCESOS

Facultad de Ingeniería Industrial y de Sistemas v2.0 MA781U PLANIFICACION DE PROCESOS

Aviso 2: Escriba con buena letra y evite los tachones. Aviso 3: Solución del examen y fecha de revisión en

PROGRAMA DE CURSO. Horas de Cátedra ,5 5,5. Resultados de Aprendizaje

Concurrencia y paralelismo

SIMM: TEORÍA DE LOS S.O. I.E.S. JUAN DE LA CIERVA CURSO 2007/2008

Tema 2: Programas y procesos

Entrada/Salida. Nano Semelman Maximiliano Geier Maximiliano Sacco. Sistemas Operativos, 2c DC - FCEyN - UBA

Procesos y Threads Procesos y Threads. Concurrencia Concurrencia Ventajas Ventajas. Rendimiento Rendimiento (paralelismo) (paralelismo)

Manipulación de procesos

Transcripción:

Florencia S. Iglesias Sistemas Operativos DC - FCEyN - UBA August 29, 2014

Repaso de conceptos de la teórica Proceso: Instancia de un programa que está siendo ejecutado.

Repaso de conceptos de la teórica Proceso: Instancia de un programa que está siendo ejecutado. Sistema operativo multitarea/multiprogramado: Sistema que puede contener muchos procesos compartiendo recursos, donde el más importante suele ser el CPU.

Repaso de conceptos de la teórica Proceso: Instancia de un programa que está siendo ejecutado. Sistema operativo multitarea/multiprogramado: Sistema que puede contener muchos procesos compartiendo recursos, donde el más importante suele ser el CPU. Scheduler Módulo del sistema operativo que se encarga de la remoción, selección y reemplazo del proceso en ejecución.

Repaso de conceptos de la teórica Proceso: Instancia de un programa que está siendo ejecutado. Sistema operativo multitarea/multiprogramado: Sistema que puede contener muchos procesos compartiendo recursos, donde el más importante suele ser el CPU. Scheduler Módulo del sistema operativo que se encarga de la remoción, selección y reemplazo del proceso en ejecución. Context-switch: Procedimiento mediante el cual el sistema cambia el proceso en ejecución.

Diagrama de estados A medida que un proceso se ejecuta, va cambiando de estado de acuerdo a su actividad. El diagrama de estados representa los distintos estados que atraviesan los procesos en un sistema multitarea y cómo transicionan entre los mismos.

Diagrama de estados

Diagrama de estados Y si permite desalojo?

Diagrama de estados Y si permite desalojo?

Poĺıticas de scheduling Cómo elegimos el siguiente proceso a ejecutar? FCFS (First Came, First Served) La CPU se asigna a los procesos en el orden en el que la solicitan.

Poĺıticas de scheduling Cómo elegimos el siguiente proceso a ejecutar? FCFS (First Came, First Served) La CPU se asigna a los procesos en el orden en el que la solicitan. Prioridades fijas Cada proceso tiene un valor de prioridad asignado y se ejecutan primero los de mayor prioridad.

Poĺıticas de scheduling Cómo elegimos el siguiente proceso a ejecutar? FCFS (First Came, First Served) La CPU se asigna a los procesos en el orden en el que la solicitan. Prioridades fijas Cada proceso tiene un valor de prioridad asignado y se ejecutan primero los de mayor prioridad. SJF (Shortest Job First) Primero se ejecutan los procesos de menor duración. Para esto debe conocerse la duración de antemano.

Poĺıticas de scheduling Cómo elegimos el siguiente proceso a ejecutar? SRTF (Shortest Remaining Time First) Primero se ejecutan los procesos a los que les resta menos tiempo de CPU. También debe conocerse la duración y llevarla cuenta del tiempo ejecutado.

Poĺıticas de scheduling Cómo elegimos el siguiente proceso a ejecutar? SRTF (Shortest Remaining Time First) Primero se ejecutan los procesos a los que les resta menos tiempo de CPU. También debe conocerse la duración y llevarla cuenta del tiempo ejecutado. Round Robin La idea es darle un quantum a cada proceso, e ir alternando entre ellos.

Poĺıticas de scheduling Cómo elegimos el siguiente proceso a ejecutar? SRTF (Shortest Remaining Time First) Primero se ejecutan los procesos a los que les resta menos tiempo de CPU. También debe conocerse la duración y llevarla cuenta del tiempo ejecutado. Round Robin La idea es darle un quantum a cada proceso, e ir alternando entre ellos. Múltiples colas Existen varias colas de procesos en estado Ready, con distintas prioridades. Los procesos se asignan a una cola, generalmente en función de alguna propiedad del proceso.

Ejercicio Dados los siguientes procesos, Proceso Tiempo de Tiempo de Tiempo de Prioridad llegada ejecución bloqueo P0 0 6 2-5 3 P1 1 3-2 P2 2 6-1 P3 3 4-4 Costo de cambio de contexto = 1 unidad de tiempo Costo de load de un proceso = 1 unidad de tiempo. Costo de load + costo de carga del primer proceso = 1 unidad de tiempo. Dibujar el diagrama de Gantt para calcular cuál poĺıtica de scheduling es mejor entre: FCFS Prioridades (Sin desalojo) Round Robin con quantum = 2 unidades de tiempo

Diagrama de GANTT Un diagrama de GANTT es una herramienta gráfica cuyo objetivo es mostrar el tiempo de dedicación previsto para diferentes tareas o actividades a lo largo de un tiempo total determinado.

Solución Diagramas de Gantt: FCFS:

Solución Diagramas de Gantt: Prioridades:

Solución Diagramas de Gantt: Round Robin:

Métricas Proveen una medida de los distintos aspectos del rendimiento del sistema. Fairness: Uniformidad de asignación del CPU.

Métricas Proveen una medida de los distintos aspectos del rendimiento del sistema. Fairness: Uniformidad de asignación del CPU. Tiempo de respuesta: Tiempo que el proceso tarda en empezar a responder.

Métricas Proveen una medida de los distintos aspectos del rendimiento del sistema. Fairness: Uniformidad de asignación del CPU. Tiempo de respuesta: Tiempo que el proceso tarda en empezar a responder. Throughput: Cantidad de procesos que terminan por unidad de tiempo.

Métricas Proveen una medida de los distintos aspectos del rendimiento del sistema. Fairness: Uniformidad de asignación del CPU. Tiempo de respuesta: Tiempo que el proceso tarda en empezar a responder. Throughput: Cantidad de procesos que terminan por unidad de tiempo. Turnaround: tiempo total que le toma a un proceso ejecutar completamente.

Métricas Proveen una medida de los distintos aspectos del rendimiento del sistema. Fairness: Uniformidad de asignación del CPU. Tiempo de respuesta: Tiempo que el proceso tarda en empezar a responder. Throughput: Cantidad de procesos que terminan por unidad de tiempo. Turnaround: tiempo total que le toma a un proceso ejecutar completamente. Waiting time: Tiempo que un proceso está en la cola de Listos a lo largo de su vida.

Ejercicio Dados los siguientes procesos, Proceso Tiempo de Tiempo de Tiempo de Prioridad llegada ejecución bloqueo P0 0 6 2-5 3 P1 1 3-2 P2 2 6-1 P3 3 4-4 Calcular el waiting time promedio de cada poĺıtica de scheduling.

Ejercicio Waiting time promedio con cada algoritmo: FCFS = 6.75 Prioridades = 7.5 Round Robin = 8 En qué situación elegiría Round-Robin en lugar de alguno de los otros aunque su waiting time promedio sea mayor?

Ejercicio Waiting time promedio con cada algoritmo: FCFS = 6.75 Prioridades = 7.5 Round Robin = 8 En qué situación elegiría Round-Robin en lugar de alguno de los otros aunque su waiting time promedio sea mayor? Analicemos inanición para las poĺıticas de scheduling anteriores.

Aclaraciones Algunas aclaraciones surgidas de las consultas realizadas en clase: Si tomamos la definición extricta de waiting time, SI se debe considerar: El tiempo de el programa está en estado Ready. NO se debe considerar: El tiempo que el sistema demora en admitir un programa. El costo de carga del procesador cuando no hay proceso ejecutándose. El costo de cambio de contexto. El costo de migración entre núcleos.

Aclaraciones El waiting time de P1 utilizando la poĺıtica FCFS es 5, 6 o 7? En el ejercicio dado, estamos considerando que el tiempo que tarda P1 en ser admitido es 1, por lo cual este tiempo no lo consideramos en el cálculo. Tampoco contamos el costo del tiempo de contexto, que es 1. Entonces, el waiting time de P1 es 5. Si el ejercicio asumiera que el costo de admisión de P1 es 0, entonces el waiting time de P1 sería 6. En los ejercicios de la práctica, en el TP y en el parcial pueden asumir, a menos que se indique lo contrario, que el tiempo de admisión es 0. Indiquen toda decisión que asuman al hacer los ejercicios!

Y si tenemos un sistema con 2 núcleos? Dados los siguientes procesos, Proceso Tiempo de Tiempo de Tiempo de Prioridad llegada ejecución bloqueo P0 0 6 2-5 3 P1 1 3-2 P2 2 6-1 P3 3 4-4 Costo de cambio de contexto = 1 unidad de tiempo Costo de load de un proceso = 1 unidad de tiempo. Costo de load + costo de carga del primer proceso = 1 unidad de tiempo. Costo de migración entre núcleos = 2 unidades de tiempo. Dibujar el diagrama de Gantt para la poĺıtica de scheduling: Round Robin con quantum = 2 unidades de tiempo, permitiendo la migración entre núcleos.

Solución Diagrama de Gantt:

Fin FIN