Sistemas de Tiempo Real

Slides:



Advertisements
Presentaciones similares
El problema de la planificación
Advertisements

Planificación contra pedido
Diseño y análisis de algoritmos
ADMINISTRAR EL DESEMPEÑO Y LA CAPACIDAD
Sistemas Operativos Administración del procesador.
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
Planificación de Monoprocesadores
Investigación de Operaciones
Planificación con Prioridades Fijas
PROGRAMACIÓN PARALELA Tema 5: Análisis de algoritmos paralelos
Introducción a los Algoritmos
Introducción al tiempo real en sistemas empotrados
Grupo 4 Matías Melgar Pablo Carbonell
Conceptos en Sistemas de Tiempo Real (Real Time Systems)
Muestreo para la inspección por atributos
Método de Ford-Fulkerson
Universidad Autónoma San Francisco
Aplicaciones de Sistemas de Tiempo Real
Funciones: Conceptos Básicos
CONCURRENCIA. PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL Juan Antonio Fernández Madrigal, 2004 Departamento de Ingeniería de Sistemas y Automática.
Integrantes:  Marcos Antonio Chagerben Ching  Erick Andrés Álvarez Alvarado  Ana Gloria Ávila Gonzales Profesor guía: MA. Erick Paul Murillo Delgado.
Aplicaciones de la derivada Resuelve problemas de optimización aplicando las ideas básicas relacionadas con extremos de funciones de una variable Bloque.
Administración del Procesador
Scheduling and Mapping Introducción Marco de referencia Módulos independientes Tareas con precedencia sin costo Precedencia de tareas y retardos en la.
Modelos de Programación Entera - Heurísticas
NORMAS INTERNACIONALES DE AUDITORIA DE SISTEMAS
Analisis de Planificación
Planificación de Tareas Aperiodicas
Sistemas Operativos Procesos.
Planificación Cíclica
Diseño e Implementación de un Sistema de Tiempo Real Distribuido
Diseño y análisis de algoritmos
Capítulo 6: Planificación del CPU – Parte a
Inspecciones de Software
ALGORITMOS APROXIMADOS
Diseño y análisis de algoritmos
Parte II. Algorítmica. 3. Algoritmos voraces.
Modelo del Sistema Dr. Pedro Mejía Alvarez
Scheduling Problem ¿Cuándo y dónde debo hacer cada trabajo ?
A UDITORÍA DE S ISTEMAS P LAN DE C ONTINGENCIAS Integrantes: Josué Castro Molina Edson Vargas Segura Carlos Zamora Murillo.
Características de un sistema operativo
Planificación Dinámica de Tareas
Planificación de Procesos
SISTEMAS OPERATIVOS.
INVESTIGACION DE OPERACIONES
Planificación de Tareas Aperiodicas
Multimedia ICOM 5007Lpor Carlos M. Rubert (802)
Informática III Arquitectura de Software para aplicaciones de tiempo real estricto Ejecutivos cíclicos VS. Ejecutivos de prioridad fija Integrantes: Anibal.
Análisis y Diseño de Algoritmos
Dr. Pedro Mejía Alvarez Sistemas de Tiempo Real Transparencia 1 Planificación Cíclica Dr. Pedro Mejía Alvarez CINVESTAV-IPN, Departamento de Computación.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
Tema 10: Algoritmos voraces
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Métodos de Planificación
DIAGRAMA DE FLECHAS O RUTA CRITICA
comenzar Listo Ejecutando Terminado Bloqueado Un proceso ejecuta y solo abandona el control de la CPU cuando lanza E/S o termina. La cola de listos se.
LSI. Freddy Veloz Sistemas Operativos
Introducción al proceso de verificación y validación.
ROUND ROBIN.
TEMA: PROCESOS y PLANIFICACIÓN
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
Introduccion a los Sistemas en Tiempo Real
Proceso de desarrollo de Software
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
Non-guillotine 2D bin packing problem Eduardo Pérez Mederos Miguel Monterrey Varela Jaime González Valdés Óscar Mateos López.
BASES DE DATOS DISTRIBUIDAS M.C.C. María Guadalupe Villanueva Carrasco INGENIERIA EN SISTEMAS COMPUTACIONALES.
Planificación de CPU Conceptos Básicos Criterios de Planificación Algoritmos de Planificación Planificación con Múltiples Procesadores Planificación Real-Time.
L.I. Gerardo Ortiz Rivera
L.I. Gerardo Ortiz Rivera
Transcripción de la presentación:

Sistemas de Tiempo Real Planificación en Multiprocesadores Dr. Pedro Mejia Alvarez CINVESTAV-IPN Departamento de Computación Sistemas de Tiempo Real

Sistemas de Tiempo Real Objetivos Comprender los problemas relacionados con las políticas de planificación sobre multiprocesadores Entender los dos esquemas de asignamiento de tareas: El esquema Particionado y el no-Particionado Revisar algunos algoritmos propuestos sobre el tema. Sistemas de Tiempo Real

Sistemas de Tiempo Real Indice Introducción Bin Packing Asignamiento de tareas. Definición de un modelo simple de Sistema. Esquema Particionado. Esquema No Particionado Sistemas de Tiempo Real

Planificacion de Tiempo Real Como se planifica un conjunto de tareas tal que sus requermientos de tiempo real se garantizen ? ...and they need to share a processor. ad hoc process to an engineering process based on analytic methods Let us take a look at the roadmaps of the big manufacturers of microprocessors. Here is the roadmap of one big manufacturer. It is interesting to observe that this manufacturer focuses on [click] [15s] ad hoc process Proceso de ingenieria basado en metodos analiticos Desarrollo de algoritmos de planificacion RM,DM and EDF y sus tecnica de analisis

Real-Time Scheduling t1 t2 t3 P Como se planifica un conjunto de tareas tal que sus requermientos de tiempo real se garantizen ? ...and they need to share a processor. ad hoc process to an engineering process based on analytic methods Let us take a look at the roadmaps of the big manufacturers of microprocessors. Here is the roadmap of one big manufacturer. It is interesting to observe that this manufacturer focuses on [click] [15s] RM,DM and EDF tienen: cotas de utilizacion conocidas algoritmos de despacho en tiempo de ejecucion eficientes bajo numero de expulsiones la habilidad de planificar tareas esporadicas y con restricciones de sincronizacion

Planificacion de tiempo real en multiples procesadores Problemas: Como planificar un conjunto de tareas de tiempo real tal que sus requerimientos de tiempo real se satisfagan y se logre: cotas de utilizacion conocidas (altas) algoritmos de despacho en tiempo de ejecucion eficintes. fbajo numero de expulsiones la habilidad de planificar tareas esporadicas y con restricciones de sincronizacion ...and they need to share a processor. ad hoc process to an engineering process based on analytic methods Let us take a look at the roadmaps of the big manufacturers of microprocessors. Here is the roadmap of one big manufacturer. It is interesting to observe that this manufacturer focuses on [click] [15s]

Planificacion de tiempo real en multiples procesadores 2 Problemas principales a resolver: Problema de la Asignacion de tareas a procesadores. Problema de la planificaciond e las tareas en los procesadores. ...and they need to share a processor. ad hoc process to an engineering process based on analytic methods Let us take a look at the roadmaps of the big manufacturers of microprocessors. Here is the roadmap of one big manufacturer. It is interesting to observe that this manufacturer focuses on [click] [15s]

Sistemas de Tiempo Real Indice Introducción Bin Packing Asignamiento de tareas. Definición de un modelo simple de Sistema. Esquema Particionado. Esquema No Particionado Sistemas de Tiempo Real

Sistemas de Tiempo Real Bin Packing Dado un número de artículos (A, ..., E) de varios pesos. De que manera es posible colocarlos en dos cajas de tal forma que el máximo peso de los artículos en cada caja, no exceda los 20Kg. Sistemas de Tiempo Real

Sistemas de Tiempo Real Bin Packing Primer enfoque para resolver el problema. Repeat for all unpacked boxes escoga el articulo mas pesado que queda pongalo en el bin mas ligero end repeat La operación sería: Poner (A,1),(B,2),(D,1),(E,2),(C,2) El problema es donde poner F ?. Sistemas de Tiempo Real

Sistemas de Tiempo Real Bin Packing El problema es fácil al resolverlo intuitivamente, pero el tratar de formalizarlo es complejo.. Sistemas de Tiempo Real

Sistemas de Tiempo Real Bin Packing Que pasa si incrementamos el número de artículos ? No. Artículos No. Combinaciones 4 24 5 120 6 720 7 5040 8 40320 9 362880 12 479,001,600 Sistemas de Tiempo Real

Sistemas de Tiempo Real Bin Packing Algoritmos aproximados para Bin Packing. First Fit (FF) Best Fit (BF) First Fit Decreasing (FFD) Best Fit Decreasing (BFD) Sistemas de Tiempo Real

Sistemas de Tiempo Real Indice Introducción Bin Packing Asignacion de tareas. Definición de un modelo simple de Sistema. Esquema Particionado. Esquema No Particionado Sistemas de Tiempo Real

Sistemas de Tiempo Real Asignacion de tareas El asignamiento puede llevarse a cabo: Off-line -Hard Real Time On -line - Primero se lleva a cabo una prueba de aceptación de la tarea. Sistemas de Tiempo Real

Sistemas de Tiempo Real Asignacion de tareas Dado un número de tareas T={t1,...,tn] a procesar sobre una máquina con un cierto número de procesadores P={p1,...,pk}. Encontrar para cada tarea una asignacion tal que el número de procesadores sea el mínimo? I:{ti,...,tn} ---> {p1,...,pk} Sistemas de Tiempo Real

Sistemas de Tiempo Real Asignamiento de tareas Ejemplo: Como planificar n independientes periódicas y desalojables tareas, cuyos deadlines son iguales a sus respectivos periodos, usando el algoritmo de planificación EDF? Sistemas de Tiempo Real

Test de Planificabilidad basado en RMS Para el modelo simple, con prioridades monótonas en frecuencia, los plazos están garantizados si U = N ( 21/N - 1) es la utilización mínima garantizada para N tareas min 18

Planificación EDF Algoritmo optimo bajo un solo procesador y tareas expulsables. Como se sabe si un conjunto de tareas es planificable bajo EDF ? Se pueden garantizar los plazos de respuesta si se cumple que: Optima con una cota de utilización del 100% Si plazo < periodo, verifica los tiempos de respuesta en un intervalo igual a el hiperperiodo con fase de tareas 0.

Suposiciones de la planificación Las tareas pueden ser periódicas o aperiodicas. Se ejecutan en un solo procesador Las tareas son expulsables y no comparten recursos Los plazos son iguales a los periodos. No hay overhead del sistema operativo.

Planificación basada en Prioridades Rate-Monotonic Earliest Deadline First (2, 1) (5, 2.5) missed deadline (2, 1) (5, 2.5) 0 1 2 3 4 5 6 7 8 9 10

Sistemas de Tiempo Real Asignacion de tareas Si se tienen tareas uniformemente distribuidas [0, U] la utilización total por procesador en el algoritmo First Fit es igual 0.98U en promedio. De la misma manera la utilización total por procesador en el algoritmo First Fit Drecreasing es igual a 0.98U en promedio. Sistemas de Tiempo Real

Sistemas de Tiempo Real Asignacion de tareas Planificación con desalojo de independientes periódicas tareas con prioridades fijas sobre multiprocesadores homogéneos puede resolverse usando uno de dos esquemas diferentes basados en como las tareas son asignadas a los procesadores. Esquema Particionado y Esquema No-Particionado Sistemas de Tiempo Real

Sistemas de Tiempo Real Indice Introducción Bin Packing Asignamiento de tareas. Definición de un modelo simple de Sistema. Esquema Particionado. Esquema No Particionado Sistemas de Tiempo Real

Sistemas de Tiempo Real Definición de un modelo simple Las tareas son independientes, con arrivos periódicos y pueden siempre ser desalojables. Las tareas no requieren un acceso exclusivo a algún otro recurso que no sea el procesador. El costo del desalojo es considerado nulo. . El costo de migración es considerado cero. Sistemas de Tiempo Real

Sistemas de Tiempo Real Definición de un modelo simple Los procesadores se consideran homogéneos. El costo cuando una tarea arriba es cero. En general los costos de comunicación y cambio de contexto son considerados nulos. Sistemas de Tiempo Real

Algoritmos de planificacion en multiples procesadores: global vs particionado

Sistemas de Tiempo Real Indice Introducción Bin Packing Asignamiento de tareas. Definición de un modelo simple de Sistema. Esquema Particionado. Esquema No Particionado Sistemas de Tiempo Real

Sistemas de Tiempo Real Esquema Particionado Todas las instancias de una tarea son ejecutadas sobre el mismo procesador. El procesador a utilizar será determinado antes por un algoritmo de particionamiento Garantiza el rendimiento de los tiempos de ejecución (en términos de planificabilidad ) Sistemas de Tiempo Real

Sistemas de Tiempo Real Esquema Particionado Dispacher Sistemas de Tiempo Real

Sistemas de Tiempo Real Algoritmo RMFF Esta Heurística es conocida como el Rate Monotonic Fisrt Fit. De acuerdo con este algoritmo, las tareas son primero ordenadas en un orden creciente correspondiente a sus periodos. Así se asignan las tareas en turno, comenzando desde T1 hasta que todas son asignadas siguiendo el First Fit algoritmo. Una tarea Ti puede ser asignada a un procesador si la utilización total de Ti y las tareas x ya asignadas previamente al procesador es igual o menor que URM(x+1). Sistemas de Tiempo Real

Sistemas de Tiempo Real Algoritmo RMFF Ti ui Ti ui Ti ui (2,1) 0.500 (4.5,.01) 0.022 (8,1) 0.125 (2.5,0.1) 0.040 (5,1) 0.300 (8.5,0.1) 0.012 (3,1) 0.333 (6,1) 0.167 (9,1) 0.111 (4,1) 0.250 (7,1) 0.143 P1: (2,1), (2.5,0.1), (4.5,0.1), (6,1), (8.5,.0.1) P2: (3,1), (4,1), (7,1) P3: (5,1), (8,1), (9,1) (a) P1: (2,1), (3,1), (6,1) P2: (4,1), (5,1), (7,1), (8,1), (9,1) P3: (2.5,0.1), (4.5,0.1), (8.5,0.1) (b) Sistemas de Tiempo Real

Sistemas de Tiempo Real Indice Introducción Bin Packing Asignamiento de tareas. Definición de un modelo simple de Sistema. Esquema Particionado. Esquema No Particionado Sistemas de Tiempo Real

Sistemas de Tiempo Real Esquema No Particionado La tarea puede ejecutarse sobre cualquier procesador aun después de haber sido desalojada. No existe una prueba de planificabilidad eficiente. No hay un esquema optimo de asignamiento de prioridad. Sistemas de Tiempo Real

Sistemas de Tiempo Real GRMS. GRMS es un esquema de planificación global para tareas usando Rate Monotonic sobre multiprocesadores. El control de admisión es un algoritmo que asegura que solamente las tareas cuyos deadlines son conocidas serán aceptadas en el sistema. Posee costos de migración bajos. Sistemas de Tiempo Real

Sistemas de Tiempo Real GRMS. Por que utilizar un esquema global? Task Period Computation Utilization T1 5 3 0.60 T2 7 4 0.57 T3 10 2 0.20 T4 15 7 0.46 Sistemas de Tiempo Real

Sistemas de Tiempo Real GRMS. Para tareas de tiempo real criticas la prueba de aceptación deberá asegurar que ninguna tarea admitida pierda su plazo. Dos algoritmos de control de admisión. Instante Critico Control de admisión optimo Sistemas de Tiempo Real

Sistemas de Tiempo Real Algoritmos Eficientes RMST (Rate Monotonic Small Tasks) RMGT (Rate Monotonic General Tasks) Adaptive TkC ...... Sistemas de Tiempo Real