La calendarización y administración de procesos

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

Conceptos de Planificación

Niveles de Planificación

El modelo de Procesos

Algoritmos de planificación:

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

Unidad 2: Gestión de Procesos

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

Planificación de Monoprocesadores.

Planificación de Procesos

Tema 19 Gestión de procesos

Sistemas Operativos Scheduling de Procesos

Tema 2: Gestión de la CPU

Preguntas de autoevaluación tema 3

ALGORITMOS DE PROGRAMACIÓN NO EXPULSIVOS

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.

Capítulo 5: Despacho de CPU

Clase Práctica - Scheduling

Sistemas operativos, 2ª edición

Sistemas Operativos. Práctica 2: Scheduling

Convivencia Gestión de Procesos

Teoría de Colas. Investigación Operativa II. Javier Alarcón Rafael Cáceres Jenny Martínez Pamela Quijada Grupo N 9

Sistemas Operativos. (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

FUNDAMENTOS DE INFORMÁTICA. Principios Básicos de Sistemas Operativos. Definición de Sistema Operativo

Sistemas Operativos Tema 5. Procesos José Miguel Santos Alexis Quesada Francisco Santana

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

Sistemas Operativos. Clase 2: Administración de procesos.

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

Definición de Sistema Operativo

4.1 Dispositivos y manejadores de dispositivos: device drivers

Sistemas Operativos Preguntas de Revisión

Clase práctica - Scheduling

Administración del Procesador

Unidad 2: Gestión de Procesos

Manual del Usuario de Microsoft Access Consultas - Página 1. Tema IV: Consultas. IV.1. Creación de Consultas

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

No hay un acuerdo universal sobre una definición de proceso, pero sí algunas definiciones aceptadas:

Sistemas Operativos. Sistemas Operativos II ITS EMT CETP 2014 Prof. L. Carámbula

El scheduler O(1) de Linux

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

- 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. Sistemas Informáticos I.E.S. Virgen de la Paloma

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

Sistemas Operativos. Oscar Bedoya

ISO Tema 7-B,

Definiciones Diseño de Experimentos: Diseño del Experimento: Replicación o Repetición:

FUNDAMENTOS DE LOS SISTEMAS OPERATIVOS

FUNDACION NIC-NIIF

Capítulo 5 Planificación. Secciones Stallings: 9.1, 9.2 (hasta pág. 421), 9.3. Planificación. Propósito Tipos de planificación:

Contenido. Página 2 de 8

PLANIFICACION DE LA CPU

Tarea 2. Descripción y Control de Procesos

Estructuras de control

2º Técnico Superior en Gráfica Publicitaria

Procesos. Procesos. Sistemas Operativos Procesos KMC 2017

SISTEMAS OPERATIVOS: PROCESOS. Planificación de procesos

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

Hilos Secciones Stallings:

Sistemas Operativos. S.O. Estructura Básica. S.O. Como Administrador de Recursos. Multiprogramación. Multiprogramación y Procesos

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

Planificador de Linux (Scheduler)

DEPARTAMENTO DE CIENCIAS BASICAS AREA DE MATEMATICAS INVESTIGACION DE OPERACIONES

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

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

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas

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

TEMA 6 LA EMPRESA: PRODUCCIÓN, COSTES Y BENEFICIOS

CAPÍTULO 1 PLANIFICACIÓN DEPORTIVA SECCIÓN CONTENIDO 1.1. Introducción. La temporada: tres fases Conclusiones 1.4. Sugerencias didácticas 1.

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

INSTRUCCIONES PARA EL USO DEL SOFTWARE (IS)

Práctica 4.- Característica del diodo Zener

Economía del Bienestar: Un análisis normativo

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

ARQUITECTURA DE COMPUTADORES

Análisis de problemas

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

Acelerar el apagado de Windows 7

Sistemas Operativos II Febrero 2007 Nombre:

Sistemas Operativos Distribuidos

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

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

INSTITUTO TECNOLOGICO DE LAS AMERICAS CARRERA DE TECNOLOGO EN REDES DE LA INFORMACION SISTEMAS OPERATIVOS I

CAPITULO III: METODOLOGIA. En el presente capítulo se describirá el conjunto de pasos a seguir para lograr el

Sistemas informáticos industriales. Sistemas Operativos

Manipulación de procesos

1 ( 3,5 puntos) Responda, justificando sus respuestas, a las siguientes cuestiones:

TEMA 2. En esta unidad didáctica se da un repaso teórico general y se realizan una serie de actividades sencillas de aplicación.

MANUAL PARA MANEJO DEL PROGRAMA DFD

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

Sistemas Operativos. Curso 2014 Planificación

Sistemas Operativos. Curso 2015 Planificación

FUNDAMENTOS DE SISTEMAS OPERATIVOS

Procesando y Analizando Datos Dinámicos

EL PUNTO DE EQUILIBRIO

Participantes: Avila Aida Betancourt Sioly Briceño Susana Rojas Alejandro

Transcripción:

La calendarización y administración de procesos Administrador del procesador Lámina 1

Ciclos de ráfagas de CPU y E/S cargar almacenar sumar almacenar leer archivo esperar E/S almacenar incremento indexar escribir archivo esperar E/S cargar almacenar sumar almacenar leer archivo esperar E/S ráfaga de CPU ráfaga de E/S ráfaga de CPU ráfaga de E/S ráfaga de CPU ráfaga de E/S Lámina 2

I/O bound vs CPU bound Un programa limitado por E/S (I/O bound) suele tener muchas ráfagas de CPU muy cortas Un programa limitado por CPU (CPU bound) suele tener unas cuantas ráfagas de CPU muy largas Lámina 3

Planificador del CPU Siempre que CPU este ocioso, el S.O. debe escoger uno de los procesos que están en la cola de procesos listos para a ejecutarlo El proceso de selección corre por cuenta del planificador a corto plazo o planificador de CPU Planificador escoge uno de los procesos que están en la memoria y listos para ejecutarse y se le asigna el CPU Lámina 4

Situaciones cambio proceso Cuando un proceso pasa del estado en ejecución al estado bloqueado Cuando un proceso pasa del estado en ejecución al estado listo Cuando un proceso pasa del estado bloqueado al estado listo Cuando un proceso termina Lámina 5

El despachador Es el modulo que cede el control del CPU al proceso seleccionado por el planificador a corto plazo pa Esta función implica Cambiar de contexto Cambiar a un modo de usuario Slt Saltar al punto apropiado id del dlprograma del dlusuario para reiniciar dicho programa Lámina 6

El calendarizador De otros estados Proceso listo borrando el proceso en ejecución Descriptores de procesos encargado formar a los procesos Cola de procesos listos Despachador cambiador de contexto CPU Lámina 7

Criterios de calendarización Uso de la CPU mantener el CPU tan ocupado como se pueda uso CPU varia entre 0 y 100% en un sistema real, debe variar entre 40% (poca carga) y 90% (muy cargado) Rendimiento si icpu esta ocupada ejecutando procesos, se esta ejecutando trabajos Lámina 8

rendimiento: número de procesos que se completan por unidad de tiempo por ejemplo: un proceso por hora o 10 procesos por segundo Tiempo de regreso (servicio) tiempo que se tarda en ejecutar un proceso intervalo entre el momento de presentación de un proceso al planificador y el momento en que se terminó Lámina 9

es la suma de los periodos durante los cuales el proceso espera entrar en memoria espera en cola de procesos listos, se ejecuta en el CPU y realiza E/S Tiempo de espera no se toma en cuenta tiempo proceso pasa ejecutándose o realizando E/S tan solo abarca el tiempo que un proceso pasa esperando en al cola de procesos listos Lámina 10

suma periodos que pasa en la cola de procesos listos Tiempo de respuesta tiempo que transcurre entre que se presenta una solicitud yse producen los primeros resultados no incluye el tiempo que se toma en exhibir la respuesta generalmente esta limitado por la velocidad del dispositivo de salida Lámina 11

El comando time de Linux Ejecuta programa especificado con sus argumentos Cuando termina, escribe mensaje a stderr proporcionando estadísticas de timpo de ejecución: Tiempo transcurrido entre invocación y termino del programa Tiempo CPU del usuario Tiempo CPU sistema Lámina 12

Ejemplo uso time $ more hola.c int main( ) { printf( Hola mundo \n ); } $ time gcc hola.c real user sys $ 0m0.228s 0m0.120s 0m0.040s Lámina 13

Calendarizador óptimo Condición: no entran nuevos procesos en la lista de procesos listos, mientras que los que se encuentran en ella son atendidos Algoritmo óptimo calcula el número de tiempoquantum (número de veces que el CPU será asignado a cada proceso) y entonces enumera todas las posibles opciones para calendarizar el CPU Et Estrategia t óptima óti puede seleccionarse, basada en criterio de optimización, considerando cada opción (ordering) Lámina 14

Factores a considerar Procesos nuevos llegan mientras que se esta atendiendo a otros procesos, el calendarizador debe realizar cálculos cada vez que un proceso nuevo llega El tiempo de ejecución de un proceso se debe conocer antes de que el proceso se ejecute En algunas ocasiones el calendarizador usa más tiempo realizando cálculos dentro del algoritmo, que atendiendo d procesos Lámina 15

Niveles de administración Administración de alto nivel Administración de nivel intermedio Administración i ió de bajo nivel Lámina 16

Administración de alto nivel Planificación del trabajo Cuales trabajos(jobs) pueden competir por los recursos A veces llamada administración de admisión, ya que decide cuales trabajos deben de admitirse Lámina 17

Administración nivel intermedio Que procesos pueden competir por el CPU Suspención temporal y reanudación de procesos It Intermediario i entre la admisión iió de trabajos bj y la asignación del CPU a procesos Lámina 18

Administración de bajo nivel A cual proceso listo se le asignará el CPU Se realiza mediante el despachador (dispatcher) Despachador siempre en memoria principal i Lámina 19

Esquema niveles administración Usuario Jobs esperando para entrar Entrada de trabajos Jobs en espera para iniciarse Inicio de trabajos Procesos suspendidos esperando por activación Admon alto nivel Admon. Activación Suspención nivel intermedio Procesos activos Bloqueo o Despacho Admon expiración de tiempo bajo nivel Procesos en ejecución Terminación Trabajo completado Lámina 20

Objetivos Ser justa Elevar al máximo la producción o rendimiento Aumentar al máximo oel número odeusua usuarios interactivos Ser predecible Reducir al mínimo el gasto extra Equilibrar el aprovechamiento de recursos Lograr equilibrio entre la respuesta y el aprovechamiento Lámina 21

Más objetivos Evitar esperas infinitas Imponer prioridades Dar preferencia e e a procesos que ocupan recursos decisivos Dar mejor trato a procesos que muestren un comportamiento deseable. Degradarse paulatinamente de cargas pesadas Lámina 22

Admon. apropiada vs no apropiada No apropiada (non preemptive) Una vez que el CPU se le asignó al proceso, ya no se le puede arrebatar Util sistemas procesos alta prioridad requieren atención inmediata, (sistemas tiempo real) Los trabajos largos atrasan a los cortos, pero el tratamiento es más justo Apropiada (preemptive) Al proceso se le puede arrebatar el CPU Util sistemas tiempo compartido: garantizar tiempos de respuesta aceptables Costo: cambio de contexto implica gasto extra Lámina 23

Prioridades Pueden ser asignadas automáticamente por el sistema, o se pueden asignar externamente Ganarse o comprarse Estáticas o dinámicas Asignación en forma racional o de manera arbitraria Lámina 24

Prioridades estáticas y dinámicas Prioridades estáticas Prioridades estáticas no cambian Son fáciles de llevar a la práctica No responden a cambios en el ambiente Prioridades dinámicas Responden a los cambios Prioridad inicial tiene una duración corta, después de lo cual se ajusta a un valor más apropiado Esquemas más complejos Gasto extra justificado: aumento en la sensibilidad s del sistema Lámina 25

Prioridades compradas Debe proporcionar un servicio competente y razonable a una gran comunidad de usuarios. Debe manejar las situaciones en las cuales un miembro de la comunidad dnecesite un trato especial Trabajo urgente esta dispuesto a pagar extra: comprar prioridad (nivel más alto de servicio) Pago extra obligatorio puede ser necesario arrebatar recursos a otros usuarios que también pagan Lámina 26

Algoritmos de calendarización De plazo fijo Primeras Entradas Primeras Salidas o servicio por orden de llegada Por turno o Round Robin o por turno circular Trabajo más corto (SJF) Tiempo restante más corto (SRT) Tasa de respuesta más alta (HRN) De porción justa (FFS) Lámina 27

Algoritmos de calendarización Por prioridad Con colas de múltiples niveles Con colas de múltiples l niveles con realimentación Garantizada Lotería En tiempo real Lámina 28

Comparando los algoritmos Uso de diagrama de Gant para ver el desarrollo de los procesos a través del tiempo. Información proporcionada Tiempo de llegada del procesos a la cola de procesos listos Tiempo de duración del proceso Información calculada Tiempo de termino de cada proceso Tiempo promedio de termino Lámina 29

Administración plazo fijo Se programan ciertos trabajos para terminarse en un tiempo específico Gran valor si se entregan a tiempo Carecen de valor si se entregan después del plazo Lámina 30

Problemas admon. plazo fijo Administración compleja. Usuario debe informar por adelantado sus necesidades. Ejecución sin degradar el servicio a los otros Muchas tareas a plazo fijo: planificación muy compleja. Posibilidad de producir gasto extra Lámina 31

Primeras entradas primeras salidas Conocido como PEPS Disciplina más simple de planificación Procesos atendidos de acuerdo con su tiempo de llegada a la cola de procesos listos Cada vez que un proceso tiene la CPU, se ejecuta hasta terminar Trabajos largos hacen esperar a los pequeños Más predecible que otros esquemas Rara vez usado Lámina 32

Escenario Cinco procesos: A, B, C, D y E Tiempos llegada A: 0 B: 1 C: 3 D: 5 E: 7 Duración A: 3 B: 6 C: 4 D: 5 E: 2 Mismo escenario para el resto de los algoritmos Lámina 33

Ejemplo FIFO Llegada Proceso A 1 2 3 Llegada Proceso B 1 2 3 4 5 6 Llegada Proceso C 1 2 3 4 Llegada Proceso D 1 2 3 4 5 Llegada Proceso E 1 2 Proceso A 1 2 3 Proceso B 1 2 3 4 5 6 Proceso C 1 2 3 4 Proceso D 1 2 3 4 5 Proceso E 1 2 Tiempos Regreso A: 3 B: 8 C: 10 D: 13 E: 13 Promedio: 9.4 Lámina 34

Administración por turno Conocida como round-robinrobin Los procesos atendidos en forma PEPS, se les asigna cantidad limitada de tiempo de CPU, (cuantum ) Si proceso no termina en su tiempo se le quita el CPU se le asigna al siguiente proceso en espera Proceso desposeído se coloca al final de la lista Lámina 35

Por turno... Efectiva en tiempo compartido con necesidad de tiempo de respuesta razonables Variante: turno egoísta: dos colas al principio el proceso espera en una cola de espera cuando su prioridad alcanza un cierto nivel se le pasa a la cola de procesos activos. Lámina 36

Ejemplo Round Robin Quantum: 2 Llegada Proceso A 1 2 3 Llegada Proceso B 1 2 3 4 5 6 Llegada Proceso C 1 2 3 4 Llegada Proceso D 1 2 3 4 5 Llegada Proceso E 1 2 Proceso A 1 2 3 Proceso B 1 2 3 4 5 6 Proceso C 1 2 3 4 Proceso D 1 2 3 4 5 Proceso E 1 2 Tiempos Regreso A: 5 B: 16 C: 12 D: 15 E: 6 Promedio: 10.8 Lámina 37

Trabajo más corto (SJF: Shortest Job First) Disciplina no apropiada Se ejecuta primero el proceso en espera que tiene el menor tiempo estimado de ejecución hasta terminar Rd Reduce el ltiempo de espera promedio de PEPS Favorece procesos cortos a expensas de los largos Lámina 38

SJF... Selecciona procesos asegurándose que el siguiente proceso se completará y saldrá del sistema ste lo antes posible Conocimiento tiempo de ejecución de un proceso: se basa en los tiempos de ejecución estimados por el usuario ( PELIGRO!!!!!) No resulta útil en sistemas de tiempo compartido Lámina 39

Ejemplo SJT Llegada Proceso A 1 2 3 Llegada Proceso B 1 2 3 4 5 6 Llegada Proceso C 1 2 3 4 Llegada Proceso D 1 2 3 4 5 Llegada Proceso E 1 2 Proceso A 1 2 3 Proceso B 1 2 3 4 Proceso C 1 2 Proceso D 1 2 3 4 5 Proceso E 1 2 3 4 5 6 Tiempos Regreso A: 3 B: 4 C: 2 D: 9 E: 19 Promedio: 7.4 Lámina 40

Segundo ejemplo SJF Cuatro tareas: A: tiempo ejecución 8 minutos B: tiempo ejecución 4 minutos C: tiempo ejecución 4 minutos D: tiempo ejecución 4 minutos En FIFO: D C B A Lámina 41 Tiempos regreso, ejecución en ese orden: A: 8 mins, B: 12 mins, C: 16 mins, D: 20 mins Promedio: 14 mins

Continuación ejemplo Cambiando el orden,,(más corto primero): A D C B Tiempos regreso: B: 4 mins, C: 8 mins, D: 12 mins, A: 20 mins Promedio: 11 mins Lámina 42

Admon por el tiempo restante más corto En inglés SRT: Shortest Remaining Time Shdli Scheduling La contraparte apropiada (preemptive) del anterior Util en tiempo compartido Como en SJF existe el peligro de starvation El proceso con el menor tiempo estimado de ejecución para terminar es el primero en ejecutarse, (incluyendo procesos nuevos) Lámina 43

Lámina 44 Características SRT Un proceso en ejecución puede ser desposeído por uno nuevo con menor tiempo de ejecución estimado. También requiere estimaciones Implica un mayor gasto extra: pendiente del trabajo en ejecución Manejar apropiaciones ocasionales Procesos pequeños se ejecutan casi de inmediato Procesos grandes cuentan con un tiempo promedio de espera más grande, y tiempos de espera más variados que en SJF

Ejemplo SRT Lámina 45

Admon. Tasa respuesta más alta HRN: Highest Response ratio Next Propuesto por Brinch Hansen (Br71) Corrige algunas deficiencias i i del SJF: retraso excesivo de trabajos largos favoritismo excesivo de trabajos cortos Prioridad trabajo en función de: tiempo de servicio tiempo de espera del trabajo Lámina 46

Cálculo de la prioridad en HRN Calculada a partir de: prioridad = (tiempo espera) + (tiempo servicio) ( tiempo servicio) Observación: (tiempo espera) + (tiempo servicio) i es el tiempo de respuesta del sistema para el trabajo, si éste se inicia de inmediato Lámina 47

Ejemplo HRN Fuente imagen: Stallings Operating Systems (2004, 5ª edición) Lámina 48

Calendarización por prioridad Se asigna al proceso que tiene la prioridad más alta Generalmente se habla en términos de prioridad alta y baja. Generalmente se utiliza en general un esquema expropiador ya que si un proceso con mayor prioridad que el que esta ejecutando llega a la lista de procesos listos, será asignado al procesador Algunos sistemas emplean número bajos para prioridades baja y en otros indica una prioridad alta Lámina 49

Calendarización con colas de múltiples niveles Se clasifican a los procesos en diferentes grupos, de acuerdo a sus cualidades. Suele hacerse una división entre los que se ejecutan en primer plano (interactivos) y los que lo hacen en segundo plano (por lotes) En colas de múltiples niveles divide la cola de procesos listos en varias colas distintas t Lámina 50

Calendarización con colas de múltiples niveles Los procesos se asignan permanentemente a una cola, en base a alguna propiedad del proceso Cada cola tiene su propio algoritmo planificación Se debe contar con una estrategia de planificación entre las diferentes colas no se ejecuta un proceso de una cola si no están vacías las colas de menor prioridad dividir el tiempo entre colas, cada cola obtiene cierta porción del tiempo de CPU Lámina 51

Ejemplo colas múltiples niveles Lámina 52

Colas múltiples con realimentación En el algoritmos de colas múltiples, los procesos no se mueven de una cola a otra. Se deben categorizar los procesos según el uso de CPU que tengan La cola de mayor prioridad será la de los procesos con gran actividad de E/S (I/O bound) y la de menor procesos con alto uso de CPU (CPU bound) De esta forma, se garantiza que los procesos de poco uso de procesador tengan mayor prioridad, y los que consumen mucho procesador tendrán baja prioridad. Lámina 53

Colas múltiples con realimentación La realimentación permite a un proceso pasar de una cola a la otra separar procesos con diferentes características en cuanto uso de CPU según el consumo o de CPU que hagan, los procesos serán promovidos a una cola de mayor prioridad o rebajados a una de menor prioridad. si un proceso gasta demasiado tiempo de CPU se le pasará a una cola con menor prioridad Lámina 54

Planificador colas múltiples con realimentación Un planificador de cola múltiples con realimentación El número de colas. El algoritmo de planificación para cada cola. El método utilizado para promover a un proceso a una cola de mayor prioridad. id d El método utilizado para bajar a un proceso a una cola de menor prioridad. El método utilizado para determinar a que cola será asignado un proceso cuando este pronto. Lámina 55

Ejemplo colas múltiples con retroalimentación Lámina 56

Calendarización garantizada Realizar una promesa al usuario acerca del desempeño y después dejarle el resto a él Un ejemplo es: si existen n usuarios conectados mientras uno esta trabajando, a este se le otorgará el 1/n de la potencia del CPU en sistema de un solo usuario, si hay n procesos, cada uno tendrá 1/n de los ciclos del CPU Lámina 57

Para hacer lo anterior, el sistema debe llevar un historial de cuanto CPU cada proceso ha tenido desde su creación Se calcula rango uso: rango 0.5 un proceso solo ha tenido la mitad de lo que le corresponde rango 2.0 un proceso ha tenido el doble de lo que ha tenido se escoge al proceso con el menor rango Lámina 58

Planificación lotería Algo garantizada es una buena idea, pero difícil de implementar Proporcionar a un proceso boletos para varios recursos, como tiempo CPU Cuando se tiene que elegir un proceso se toma un boleto al azar, y el proceso que tenga dicho boleto es el escogido Procesos más importantes se le pueden dar boletos extras Lámina 59

Propiedades importantes: a cada proceso nuevo se le asigna un número boletos, el cual se incrementará, por cada nueva lotería tendrá más oportunidad de ganar conforme tenga más boletos procesos cooperantes pueden intercambiar boletos entre ellos puede usarse para casos especiales servidor vídeo, en el cual varios procesos están pasando streams videos a sus clientes pero con velocidades diferentes Lámina 60

Tiempo real Dos tipos de sistemas con respecto al tiempo de respuesta Duros Suaves Sistemas tiempo real duros se debe completar una tarea crítica dentro de un lapso determinado procesos se presentan junto con el tiempo de CPU que necesita planificador admitirá el proceso, garantizando que terminará a tiempo o bien rechazará la solicitud por ser imposible Lámina 61

Sistemas tiempo real blando requiere que los procesos críticos tengan mayor prioridad que otros menos afortunados la adición de este tipo de sistemas a un sistema de tiempo compartido puede dar lugar a una asignación no equitativa sistema puede apoyar multimedia, gráficos interactivos i de alta velocidad dy otros Lámina 62

Planificación por reparto equitativo Interés no en como se comporta un proceso en particular, sino en cómo se comparta el conjunto de procesos de un usuario que constituyen una aplicación. Tomar decisiones decso esdepa planificación cacó en función có deestosestos grupos de procesos. Concepto se puede ampliar a grupos de usuarios, incluso si el usuario esta representado por un solo proceso Por ejemplo en tiempo compartido considerar a todos los usuarios de producción, desarrollo y calidad d Degradación tiempo de respuesta afecta principalmente a los miembros de un departamento en lugar de afectar a los usuarios de otros departamentos. Lámina 63

Reparto equitativo? Cada usuarios dispone de una parte del procesador Esquema funciona de una forma más o menor lineal. Si usuario A tiene un peso dos veces mayor que el del usuario B, entonces, a la larga, el usuario A debe poder hacer el doble de trabajo que B Objetivo de este esquema: repartir menos recursos a los usuarios que han consumido más de lo que les corresponde y más recursos a los que han consumido menos de lo que le corresponde. Ejemplo de este tipo de algoritmo, FSS de Unix FSS: Fair-Share Scheduling Lámina 64

El reparto equitativo Lámina 65

Esquema admon. proceso estándar Recurso del sistema 100% Planificador de procesos estándar U1 U2 U3 U4 Un p p p p p p p p p p p p p p p p... p p p p p Lámina 66

Esquema admon justa Recurso del sistema 100% Planificador de porción justa 50% 25% 25% Planificador Planificador Planificador de procesos de procesos de procesos U1 U2 U3 U4 Un p p p p p p p p p p p p p p p p p p p p p Lámina 67 G1 G2 G3