Unidad 2: Gestión de Procesos



Documentos relacionados
Sistemas operativos avanzados. 1.3 Algoritmos de planificación del procesador

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

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

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

Procesos. Planificación del Procesador.

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

Sistemas Operativos. Curso 2014 Planificación

Sistemas Operativos. Curso 2015 Planificación

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

CÓMO TRABAJA TU SISTEMA OPERATIVO?

2) Tenemos un sistema informático con una sola CPU que está gestionada mediante una cola multinivel con realimentación.

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

Capitulo V Administración de memoria

Unidad II: Administración de Procesos y del procesador

ANÁLISIS Y GESTIÓN DEL DESARROLLO DE SOFTWARE TEMA 5: LA PLANIFICACIÓN DEL PRODUCTO

Sistemas Operativos. Oscar Bedoya

Tema 2. Procesos. 1. Concepto de proceso

Unidad 2: Gestión de Procesos

Líneas de espera. Introducción.

Examen de Arquitectura de Computadores

Sistemas operativos. Tema 9: Gestión n de E/S

1 (2 5 puntos) Responda con brevedad y precisión a las siguientes preguntas:

El soporte del sistema operativo. Hace que un computador sea más fácil de usar. Permite que los recursos del computador se aprovechen mejor.

Ambas componentes del sistema tienen costos asociados que deben de considerarse.

Organización de Computadoras. Turno Recursantes Clase 8

6. Gestión de proyectos

Fundamentos de los Sistemas Operativos (GII) Examen Final 15 de Junio de SEGUNDA PARTE - SOLUCIONES

Unidad V: Líneas de Espera

Capítulo 4 Gestión de memoria

Resolución de Problemas

Capítulo IV. INTERBLOQUEO E INANICIÓN

CAPÍTULO III MARCO TEÓRICO. Cada día cambian las condiciones de los mercados debido a diferentes factores como: el

Hardware y Estructuras de Control. Memoria Virtual. Ejecución de un Programa. Ejecución de un Programa

POR QUÉ EL VALOR PRESENTE NETO CONDUCE A MEJORES DECISIONES DE INVERSIÓN QUE OTROS CRITERIOS? ( Brealey & Myers )

3 Planificación de procesos y procesadores

Práctico de Procesos, Hilos y Deadlock

Ejercicios de Teoría de Colas

INFORMÁTICA. Matemáticas aplicadas a la Informática

DISEÑO Y APLICACIÓN DEL MANEJO EN BANDAS O FLUJOGRAMA EN GRANJAS PORCINA

TEMA 3: EL NÚCLEO DE UN SISTEMA OPERATIVO

Sistemas Operativos. Curso 2016 Procesos

Teoría de Líneas de Espera

CAPITULO V PLANIFICACIÓN Y GESTIÓN DEL PROYECTO

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS


Sistemas de Operación II

Planificación y control de proyectos. 1. Gestión del tiempo 2. Planificación y programación 3. Método PERT LA GESTIÓN DEL TIEMPO

Las razones financieras ayudan a determinar las relaciones existentes entre diferentes rubros de los estados financieros

Scheduling. Ricardo Corin

Requerimientos principales de un sistema operativo

Administración de proyectos. Organizar, planificar y programar los proyectos de software

Pronósticos. Pronósticos y gráficos Diapositiva 1

Unidad 2: Gestión de Procesos

Hilos, comunicación y competencia entre procesos. Dr. Alonso Ramírez Manzanares 2-Sep-2010

El Futuro de la Computación en la Industria de Generación Eléctrica

TEMA 6. LA GESTIÓN DE COMPRAS PARTE 1

ITACA - Entrada al sistema ITACA: Describe como entrar al sistema y los problemas típicos asociados al acceso a un sistema informático

ESQUEMAS DE SISTEMAS VOIP CON ALTA DISPONIBILIDAD Y ALTO RENDIMIENTO

LA MEDIDA Y SUS ERRORES

Los Fundamentos de la Gestión de Proyectos

1. Definir un plan estratégico de Marketing, acorde con los objetivos empresariales.

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Tema 8 Procesos. * Definición informal: un proceso es un programa en ejecución

Tarea 4.2 Memoria Virtual

Tema XI: Obtención del Capital Necesario para emprender el Negocio

La Tecnología líder en Simulación

TALLER 2. MEJORA CONTINUA

GERENCIA DE INTEGRACIÓN

Sistema de proceso por lotes: esquema operativo

Criterios para seleccionar tecnología de Modelos de Toma de Decisiones

Diferencias entre nivel 2 y nivel 3 y una estrategia de implantación

Servicio de hospedaje de servidores

Introducción. Definición de los presupuestos

Computación I Representación Interna Curso 2011

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

Administración de Empresas. 11 Métodos dinámicos de evaluación de inversiones 11.1

CAPITULO II CARACTERISTICAS DE LOS INSTRUMENTOS DE MEDICION

Procesos. Procesos. Concurrencia de procesos. Qué es un proceso? Estados de un proceso. Modelo de 2 estados. (C) 2008 Mario Medina 1

FIJACIÓN DE LOS PRECIOS DE LOS COMBUSTIBLES DERIVADOS DEL PETROLEO SITUACION A NOVIEMBRE DE 2008

PROCESO ADMINISTRACIÓN DE RECURSOS TECNOLÓGICOS SUBPROCESO ADMINISTRACIÓN DE CONTINGENCIAS

PLAN DE MÉTRICAS EN OCHO PASOS

TEMA 9 Cicloconvertidores

TEMA 5. MUESTREO PARA LA ACEPTACIÓN.

Medidas de Intensidad

Diagramas del UML. A continuación se describirán los diagramas más comunes del UML y los conceptos que representan: Diagrama de Clases

Documento técnico Conocer el costo total de propiedad de un sistema de impresión y aplicación de etiquetas

Planificación de procesos: Algoritmos de planificación

Teoría de Colas o Fenómenos de Espera

CONTROL DE FLUJO. Control de flujo: mecanismo extremo a extremo para regular el tráfico entre el origen y el destino

ERP GESTION LOGÍSTICA

1.- JUSTIFICACIÓN 2.- OBJETO DEL CONTRATO

UNIDAD Nº IV ANALISIS FINANCIERO. Administración de Empresas. Prof. Robert Leal

Monitorización de Equipos y Redes [NAGIOS ] VIRTUALITY

CONTENIDOS MÍNIMOS EXIGIBLES

Gestión de Riesgos - Introducción

AUTOMATIZACIÓN INDUSTRIAL

Transcripción:

Unidad 2: Gestión de Procesos Tema 5: Planificación de procesos. 5.1 Criterios y tipos de planificación. 5.2 Algoritmos de planificación. 5.3 Métodos multicolas y multiprocesadores. 5.4 Evaluación de políticas de planificación. Informática (Segovia) 1

5.1 Criterios y tipos de planificación. Introducción: Objetivo de la multiprogramación: Tener un proceso en ejecución en todo momento para un mayor aprovechamiento de la CPU. En un sistema monoprocesador nunca habrá más de un proceso en ejecución. Si hay más procesos, tendrán que esperar a que la CPU quede libre para reasignarse. Para un mayor aprovechamiento, se mantienen varios procesos en memoria a la vez. Cuando un proceso necesita esperar, el SO le quita la CPU y se la da a otro proceso. Casi todos los recursos del computador se planifican antes de usarse; la planificación es fundamental en el diseño de un SO. Informática (Segovia) 2

5.1 Criterios y tipos de planificación. Ciclo de ráfagas de CPU y E/S: La ejecución de un proceso consiste en un ciclo de ejecución alternando de manera sucesiva: Ráfagas de CPU (que inician el proceso), durante las cuales el proceso ejecuta instrucciones. Ráfagas de E/S, durante las cuales el proceso utiliza o espera por la E/S. Se ha medido la duración de las ráfagas de CPU y resulta que varían considerablemente de un proceso a otro y de un procesador a otro, sin embargo tienden a tener una curva de frecuencia bien tipificada. Informática (Segovia) 3

5.1 Criterios y tipos de planificación. Ciclo de ráfagas de CPU y E/S: Histograma de tiempos de ráfaga de CPU: Se observa: Gran nº de ráfagas de CPU cortas y pocas ráfagas de CPU largas. Ráfagas de CPU cortas: programas limitados por E/S. Ráfagas de CPU largas: programas limitados por CPU. Informática (Segovia) 4

5.1 Criterios y tipos de planificación. Planificación expropiativa: Las decisiones de planificación de CPU se toman según las cuatro situaciones siguientes: 1. Cuando un proceso pasa del estado en ejecución a en espera. 2. Cuando un proceso pasa del estado en ejecución a listo. 3. Cuando un proceso pasa del estado en espera al estado listo. 4. Cuando un proceso termina. Los casos 1 y 4 corresponden a una planificación no expropiativa (a la fuerza hay que escoger un nuevo proceso). Los casos 2 y 3 corresponden a una planificación expropiativa. Informática (Segovia) 5

5.1 Criterios y tipos de planificación. Criterios de planificación: Utilización de CPU: % de tiempo que la CPU está ocupada. Rendimiento: nº de procesos, trabajos, que se completan por unidad de tiempo. Tiempo de retorno: tiempo transcurrido entre la llegada de un proceso y su finalización. Tiempo de espera: tiempo que un proceso permanece en la cola de preparados. Tiempo de respuesta: tiempo que un proceso bloqueado tarda en entrar en la CPU desde que ocurre el suceso que lo bloquea. Informática (Segovia) 6

5.1 Criterios y tipos de planificación. Criterios de planificación: Posibles objetivos de la planificación: Minimizar el tiempo medio de espera o de retorno. Maximizar la utilización de CPU. Mantener el tiempo de respuesta por debajo de un valor máximo. En sistemas interactivos, como los sistemas de tiempo compartido, se consideran también la estadística (las medias) de esas magnitudes. No existe ninguna política de planificación óptima. La bondad de un método depende de: Tipo de procesos. Criterio. Informática (Segovia) 7

5.2 Algoritmos de planificación. FCFS (First Come, First Served). SJF (Shortest Job First) o SPN (Shortest Process Next). SRTF (Shortest Remaining Time First). Planificación por prioridad. Planificación por turno circular, RR (Round Robin). Realimentación. HRRN (Highest Response Ratio Next). Informática (Segovia) 8

5.2 Algoritmos de planificación. FCFS (First Come, First Served), ejemplo: Planificación de servicio por orden de llegada. Calcular el tiempo de espera, tiempo de retorno y tiempo medio de espera si aplicamos el algoritmo FCFS suponiendo que los procesos siguientes llegan en el mismo instante y en el orden: P1, P2, P3. Y si el orden de llegada es: P2, P3, P1?. Informática (Segovia) 9

5.2 Algoritmos de planificación. FCFS, ejemplo: Informática (Segovia) 10

5.2 Algoritmos de planificación. FCFS: Planificación de servicio por orden de llegada. Es el algoritmo más sencillo, el primer proceso que solicita la CPU es el primero en recibirla. Fácil de implementar con una política FIFO para la cola de preparados. Tiempo de espera promedio bastante largo. Informática (Segovia) 11

5.2 Algoritmos de planificación. SJF (Shortest Job First), ejemplo: Primero el trabajo más corto. Calcular el tiempo medio de espera que resulta de aplicar: Un algoritmo SJF no expulsivo. Un algoritmo SJF expulsivo (SRTF, Shortest Remaining Time First). Informática (Segovia) 12

5.2 Algoritmos de planificación. SJF, ejemplo: Informática (Segovia) 13

5.2 Algoritmos de planificación. SJF: Entra en la CPU el proceso con la ráfaga de CPU más corta. Minimiza el tiempo de espera medio. Riesgo de inanición de los procesos de larga duración. No es implementable. Se pueden estimar las duraciones de los procesos, según su historia reciente. Versión expulsiva (SRTF): el proceso en CPU es desalojado si llega a la cola un proceso con duración más corta. Informática (Segovia) 14

5.2 Algoritmos de planificación. Planificación por prioridad: Cada proceso tiene una prioridad, entrará primero en la CPU el que tenga mayor prioridad. Política de prioridades expulsiva o no. La prioridad se puede definir: De forma interna, la define el SO. De forma externa, la definen los usuarios. SJF es un caso de planificación por prioridad. Los procesos de prioridad más baja tienen riesgo de inanición. Solución: envejecimiento. Ir aumentando de forma progresiva la prioridad de los procesos en espera. Informática (Segovia) 15

5.2 Algoritmos de planificación. Planificación por turno circular: RR (Round Robin): Adecuado para implementar tiempo compartido. Comportamiento como FCFS, con la diferencia de que cada proceso dispone de un cuanto de tiempo máximo. Si cuando expira el cuanto de tiempo el proceso continúa en CPU, el planificador lo desaloja y lo ingresa al final de la cola de preparados. La cola de preparados se gestiona como FIFO. Según sea el cuanto de tiempo, Q: Si Q es muy grande, los procesos terminan sus ráfagas de CPU antes de que termine el cuanto: se comporta como un FCFS. Si Q=>0, se tiende a un sistema en el que cada proceso dispone de un procesador a 1/N de la velocidad del procesador real (procesador compartido). Si Q es muy pequeño se suceden constantemente los cambios de contexto y del rendimiento disminuye mucho. Informática (Segovia) 16

5.2 Métodos Multicola y Multiprocesador. Planificación con colas de múltiples niveles: Distinguimos entre procesos que pueden tener distintas necesidades en cuanto al tiempo de respuesta y por tanto distintas necesidades de planificación. Procesos que se ejecutan en primer plano o interactivos. Procesos que se ejecutan en segundo plano o por lotes. Informática (Segovia) 17

5.2 Métodos Multicola y Multiprocesador. Planificación con colas de múltiples niveles: Un algoritmo de planificación con colas de múltiples niveles divide la cola de procesos listos en varias colas. Cada cola tiene su propio algoritmo de planificación. Existirá, por tanto, una planificación entre colas. Las colas se pueden planificar según: Planificación expropiativa de prioridades fijas. Dividiendo el tiempo de CPU entre las colas. Informática (Segovia) 18

5.2 Métodos Multicola y Multiprocesador. Planificación con colas de múltiples niveles y realimentación: Se permite que un proceso pase de una cola a otra. Si un proceso gasta demasiado tiempo de CPU, se le pasa a una cola de menor prioridad. Si un proceso espera mucho tiempo en una cola de baja prioridad se le puede pasar a una de mayor prioridad, evitando la inanición. (Caso del sistema UNIX) Informática (Segovia) 19

5.2 Métodos Multicola y Multiprocesador. Planificación con colas de múltiples niveles y realimentación: Un planificador de colas multinivel con realimentación está definido por los siguientes parámetros: El número de colas. El algoritmo de planificación para cada cola. Los métodos para determinar cuando mover un proceso a una cola de distinta prioridad a la que ocupa. El método para determinar en qué cola ingresará un proceso. Informática (Segovia) 20

5.2 Métodos Multicola y Multiprocesador. Planificación en multiprocesadores: Varias CPU => planificación más compleja. Supondremos procesadores de igual funcionamiento: Cualquier procesador disponible podrá ejecutar cualquier proceso de la cola. Uso de cola común para todos los procesos: No habrá procesadores ociosos con su cola vacía. No habrá procesadores con muy alta ocupación. Dos posibles estrategias: Cada procesador se autoplanifica, asegurándonos de que: Dos procesadores no escojan el mismo proceso. No se quede ningún proceso sin escoger. Un procesador actúa como planificador de los demás procesadores. Informática (Segovia) 21

5.2 Evaluación de políticas de planificación. Cómo escoger el algoritmo de planificación a utilizar? Criterios de evaluación de un algoritmo: Grado de utilización de la CPU. Tiempo de respuesta. Rendimiento. Evaluación de políticas: Modelado determinista. Modelos de colas (estadísticos). Simulaciones. Implementación. Informática (Segovia) 22

5.2 Evaluación de políticas de planificación. Modelado determinista: Evaluación analítica de algoritmos: se calcula el desempeño de un algoritmo teniendo en cuenta la carga de trabajo del sistema: 1. Se definen los criterios de rendimiento. 2. Se buscan los algoritmos candidatos. 3. Se establece una carga de trabajo representativa del sistema. 4. Para cada algoritmo: Sometemos la carga de trabajo a su planificación. Evaluamos su rendimiento en función de los criterios de 1. 5. Seleccionamos el que mejor se comporte. Informática (Segovia) 23

5.2 Evaluación de políticas de planificación. Modelado determinista: Características: Cómodo de realizar. Proporciona magnitudes exactas con las que comparar los algoritmos. Limitación de su validez en cuanto a que se le somete a una carga concreta de trabajo. Informática (Segovia) 24

5.2 Evaluación de políticas de planificación. Modelos de colas: Metodología: Determinación de la distribución (estadística) de ráfagas de CPU y de E/S. Distribución de los tiempos de llegada al sistema. Resultado: probabilidad de una ráfaga de CPU dada. Distribución exponencial que se describe en términos de su media. Cálculos de: Rendimiento promedio. Tiempo de espera... Sistema informático como: Red de servidores, cada servidor con su cola de procesos en espera Informática (Segovia) 25

5.2 Evaluación de políticas de planificación. Simulaciones: Programación de un modelo del sistema de computación. Generación de datos: generador de números aleatorios modificado para generar: Procesos. Tiempo de ráfagas de CPU. Llegadas, partidas,... Problemas: Simulaciones costosas, requieren mucho tiempo y recursos. Cintas de rastreo, registran secuencias de sucesos reales, requieren mucho espacio de almacenamiento. Tarea compleja de diseño, codificación y depuración del simulador. Informática (Segovia) 26

5.2 Evaluación de políticas de planificación. Implementación: Método más fiable, forma exacta de evaluar un algoritmo de planificación. Metodología: Codificarlo. Colocarlo en el SO. Probar su funcionamiento. Problema: Coste elevado: Modificación del SO. Dificultar el trabajo de los usuarios, puesto que el SO está en continuo cambio. Informática (Segovia) 27

5.2 Evaluación de políticas de planificación. Solución: Plantear un esquema híbrido del tipo: 1. Análisis preliminar de las políticas candidatas mediante modelos deterministas. 2. Simulación de la opción u opciones más ventajosas. 3. Implementación de la opción óptima: Problema: Primero en un sistema de desarrollo (pruebas). Finalmente en un sistema de producción. Entorno dinámico y variable (nuevos programas, nuevos problemas). Característica deseada: Planificación flexible, separación clara entre mecanismos y políticas. Informática (Segovia) 28