Niveles de Planificación

Documentos relacionados
ALGORITMOS DE PROGRAMACIÓN NO EXPULSIVOS

Capítulo 5: Despacho de CPU

Conceptos de Planificación

Clase Práctica - Scheduling

Clase práctica - Scheduling

Sistemas Operativos Scheduling de Procesos

Tema 2: Gestión de la CPU

Planificación de Procesos

Unidad 2: Gestión de Procesos

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

Sistemas Operativos. Práctica 2: Scheduling

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).

Sistemas Operativos. Trabajo Práctico N ō 3

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.

Planificación de Monoprocesadores.

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

Preguntas de autoevaluación tema 3

FUNDAMENTOS DE LOS SISTEMAS OPERATIVOS

Administración del Procesador

Sistemas operativos, 2ª edición

SISTEMAS OPERATIVOS: PROCESOS. Planificación de procesos

Sistemas Operativos (Parte 2)

Dr. Hernán Merlino Dr. Pablo Pytel

ARQUITECTURA DE COMPUTADORES

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

Sistemas informáticos industriales. Sistemas Operativos

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

Sistemas Operativos. Curso 2014 Planificación

Convivencia Gestión de Procesos

Sistemas Operativos. Curso 2015 Planificación

PLANIFICACION DE LA CPU

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

Sistemas Operativos Preguntas de Revisión

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

Arquitectura de Computadores (obligatoria)

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

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

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

Sistemas Operativos. Oscar Bedoya

El modelo de Procesos

GESTION DE LA MEMORIA

Gestión de Memoria. Gestión de Memoria. Requisitos de Gestión de Memoria

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

Planificación de Paquetes

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

Mercedes Fernández Redondo

Pontificia Universidad Católica del Ecuador

FUNDAMENTOS DE PROGRAMACIÓN ENTERA

CONCEPTOS DE SISTEMAS OPERATIVOS

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

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

Planificación de Procesos (Scheduling)

ENTRADA-SALIDA. 2. Dispositivos de Carácter: Envía o recibe un flujo de caracteres No es direccionable, no tiene operación de búsqueda

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

Administración de la Memoria

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

ADMINISTRACION DE LA MEMORIA. En memoria 1 solo proceso Desventajas:

Scheduling. Ricardo Corin

Atributos de calidad La Eficiencia

TEORIA DE COLAS. Investigación Operativa II

Tema 03: TAD Cola. M. en C. Edgardo Adrián Franco Martínez edgardoadrianfrancom

aspectos fundamentales

1.- INTRODUCCIÓN TEORIA DE COLAS

Examen de Arquitectura de Computadores

INDICE 1. Introducción 2. Entrada / Salida: Principios y Programación 3. Procesos

Sistemas Operativos. Procesos

Un importante problema para sistemas de la nueva generación

Basado en S.O. de William Stallings / 5ed. y S.O. de Jesús Carretero (y otros). Universidad Simón Bolívar

Concurrencia de Procesos

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

Para llevar a cabo una simulación, se requiere implementar las siguientes etapas:

PLANIFICACIÓN DE PROCESOS

Facultad de Ingeniería Industrial y de Sistemas v2.0 MA781U GESTION DE MEMORIA

Sistemas Operativos Gestión de memoria

EJERCICIOS TEMAS 1 Y 2 - SO SOLUCIONES

Fundamentos de los Sistemas Operativos

Transcripción:

Niveles de Planificación La asignación de procesadores a los procesos es un problema complejo manejado por el sistema operativo El problema de cuando asignar la CPU y a que procesos se conoce como planificación de la CPU Hay tres niveles importante de planificación: Planificación de alto nivel Planificación de nivel intermedio Planificación de bajo nivel son muchas las políticas de planificación que se han empleado en los sistemas operativos y los mecanismos de planificación con los que se han implantado. 1

Objetivos de la Planificación Una disciplina de planificación debe responder a varios objetivos tales como: Ser justa Elevar al máximo la producción o rendimiento Aumentar al máximo el número de usuarios interactivos que reciben respuesta en tiempos aceptables Ser predecible Reducir al mínimo el gasto extra Equilibrar el uso de los recursos Lograr un equilibrio entre la respuesta y el aprovechamiento de los recursos Evitar el aplazamiento indefinido Imponer prioridades Dar preferencia a los procesos que ocupan recursos decisivos Degradarse paulatinamente con las cargas pesadas Muchos de los objetivos citados están en conflicto uno con otros, es por ello que la planificación es un problema complejo 2

Criterios de Planificación Los algoritmos de planificación tienen diferentes propiedades y pueden favorecer una clase de procesos sobre otros. Para la comparación de los diferentes algoritmos de planificación se consideran las siguientes características: Utilización de la CPU Rendimiento (Throughput) Tiempo de ejecución (Turnaround Time) Tiempo de espera Tiempo de respuesta En la mayoría de los casos se busca maximizar los valores promedio de: utilización de la CPU rendimiento y minimizar los valores promedio del tiempo de: ejecución espera respuesta Sin embargo, hay circunstancias en que los valores a maximizar o minimizar varían. 3

Planificación Apropiativa y no Apropiativa Cuando un proceso ha recibido la CPU, las circunstancias bajo las cuales la dejará depende de si la política de planificación es: apropiativa no apropiativa Características de la planificación apropiativa: útil para sistemas donde algunos procesos requieren atención rápida tienen el costo del cambio de contexto Característica de la planificación no apropiativa: los trabajos largos retrasan a los cortos tratamiento más justo para todos los procesos los trabajos nuevos de alta prioridad no pueden desplazar a los trabajos en espera 4

Prioridades El esquema de prioridades de los procesos puede tener diversas formas Las prioridades pueden ser: asignadas en forma automática por el sistema o externamente ganadas o compradas estáticas o dinámicas asignadas en forma racional o de manera arbitraria 5

Algoritmos de planificación First-Come, First-Served (FIFO) Los procesos se despachan en el orden de llegada a la cola de procesos listos Es una disciplina de planificación no apropiativa No es útil para la planificación de usuarios interactivos Ocasiona un tiempo de espera promedio que es a menudo bastante alto En un esquema estático, los trabajos largos hacen esperar a los cortos, y los trabajos sin importancia hacen esperar a los importantes. En un esquema dinámico puede suceder que un proceso grande del tipo CPU-bound haga esperar a muchos procesos del tipo I/O-bound. 6

Algoritmos de Planificación Shortest Job First (Primero el trabajo más corto) Asocia con cada proceso la longitud de la última ráfaga de CPU La CPU es asignada al proceso que tiene la próxima ráfaga de CPU más corta SJF da el mínimo tiempo de espera promedio para un conjunto de procesos La dificultad en el algoritmo SJF es conocer la longitud de la próxima ráfaga de CPU de un proceso SJF es usado frecuentemente en la planificación a largo plazo No puede ser implementado como algoritmo de planificación de corto plazo. Un enfoque es tratar de aproximar la planificación SJF calculando una aproximación de la longitud de la próxima ráfaga de CPU SJF puede ser apropiativo o no apropiativo La planificación SJF apropiativa suele llamarse tiempo restante más corto primero 7

Algoritmos de planificación Por Prioridad A cada proceso se le asocia una prioridad y la CPU es asignada al proceso de mayor prioridad SJF es un caso especial del algoritmo de planificación por prioridad Las prioridades pueden ser definidas internamente o externamente La planificación por prioridad puede ser apropiativa o no apropiativa Tienen el problema de que pueden causar el bloqueo indefinido o inanición de algunos procesos Una solución al problema anterior es aplicar la técnica de envejecimiento 8

Algoritmos de planificación Round-Robin Diseñado especialmente para sistemas de tiempo compartido La CPU se asigna a los procesos de la ready queue por una pequeña unidad de tiempo llamada quantum Cuando un proceso recibe la CPU pueden suceder dos cosas: el proceso tiene una ráfaga de CPU menor que el quantum el proceso tiene una ráfaga de CPU mayor que el quantum El tiempo de espera promedio es frecuentemente bastante largo La perfomance del algoritmo depende principalmente del tamaño del quantum y del efecto del cambio de contexto El tiempo de ejecución también depende del tamaño del quantum Como regla general se sostiene que el 80% de las ráfagas de CPU deben tener una duración menor al valor del quantum 9

Algoritmos de planificación Múltiples niveles de colas Particiona la ready queue en varias colas separadas Los procesos son permanentemente asignados a alguna cola en base a alguna propiedad de los mismos. Cada cola tiene su propio algoritmo de planificación También debe existir planificación entre las colas, esta es comúnmente apropiativa basada en prioridades fijas. Existe también la posibilidad de asignar una fracción de tiempo a cada cola 10

Algoritmos de planificación Múltiples niveles de colas con retroalimentación Es el algoritmo de planificación más general y el más complejo A diferencia de la planificación con múltiples niveles de colas, donde los procesos permanecen siempre en la cola asignada, aquí se permite a los procesos moverse entre las colas La idea es separar los procesos en función de la duración de sus ráfagas de CPU Se utiliza la técnica de envejecimiento para evitar la inanición de procesos Este algoritmo de planificación se define por los siguientes parámetros: Número de colas Algoritmo de planificación para cada cola Método utilizado para mover un proceso a una cola de mayor prioridad Método utilizado para determinar cuando mover un proceso a una cola de menor prioridad Método utilizado para determinar a que cola se asignará un proceso cuando ingresa al sistema 11

Evaluación de algoritmos La selección de un algoritmo de planificación para un particular sistema puede ser una tarea difícil El primer problema es definir el criterio a ser usado en la selección de un algoritmo El criterio es definido frecuentemente en términos de: Utilización de la CPU Tiempo de respuesta ó Utilización Para seleccionar un algoritmo debe primero definirse la importancia relativa de estas mediciones El criterio elegido puede incluir varias mediciones como: Maximizar la utilización de la CPU bajo la restricción de que el máximo tiempo de respuesta es 1 segundo Una vez definido el criterio de selección, podemos evaluar los algoritmos bajo consideración Hay diferentes métodos de evaluación Modelado determinístico Modelado con colas Simulaciones Implantación 12