Presentaci - PowerPoint PPT Presentation

About This Presentation
Title:

Presentaci

Description:

EDF (Earliest Deadline First): mayor prioridad a la tarea con plazo mas cercano ... Earliest Deadline First. Shortest slack time first (2, 1) (5, 2.5) missed deadline ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 19
Provided by: pedromeji
Category:

less

Transcript and Presenter's Notes

Title: Presentaci


1
Métodos de Planificación
Dr. Pedro Mejía Alvarez CINVESTAV-IPN, Sección
de Computación
2
Indice
  • Planificación
  • Métodos de planificación
  • Planificación basada en prioridades

3
Planificación (scheduling)
  • La planificación consiste en asignar un orden de
  • ejecución a un conjunto de tareas que se ejecutan
  • concurrentemente
  • En la planificación existen 3 elementos
  • Procesadores.
  • Recursos
  • Tareas
  • Planificador y Manejador de Recursos (Sistema
    Operativo)
  • Cada tarea es planificada por un algoritmo de
    planificación y distintos
  • recursos son asignados mediante un protocolo de
    acceso a recursos.

4
Métodos de Planificación
  • Planificar el uso de los recursos con el fin de
  • poder garantizar los requisitos temporales.
  • Un método de planificación tiene dos aspectos
  • importantes
  • Un algoritmo de planificación que determina el
    orden de
  • acceso de la tareas a los recursos del
    sistema
  • ( en particular al procesador )
  • Un método de análisis que permite calcular el
  • comportamiento temporal del sistema.
  • Así se puede comprobar si los requisitos
    temporales están
  • garantizados en todos los casos posibles.
  • En general se estudia el peor comportamiento
    posible.

5
Proceso de Planificación
Aplicación Crítica
Tarea
Planificador
Análisis de Planificabilidad
Carga de Trabajo de Tiempo Real
EJECUCIÓN
Ci Ti Di
No es planificable
Fuera de linea (off-line)
En linea (on-line)
6
Proceso de Planificación (estados)
despachar
activación
SI
test de aceptación
LISTA
EJECUCION
expulsión
espera en recurso ocupado
recurso liberado
NO
BLOQUEO
decisiones de planificación
7
Planificación vs. Planificabilidad
  • Planificación enfoque para priorizar una tarea
    sobre otra
  • Planificabilidad análisis formal que permite
    garantizar que un conjunto de tarea pueden (o no)
    ser asignadas a un recurso compartido (p.ej. el
    procesador) tal que cada una de las tareas cumpla
    con su plazo de respuesta
  • Planificabilidad Control de admisión

8
Clasificación de Metodos de Planificación
  • Expulsivo Permite que las tareas en ejecución
    sean interrumpidas
  • en cualquier momento para asignar el procesador
    a otra tarea activa, de
  • acuerdo al metodo de planificacion.
  • No expulsivo Una vez que inicia su ejecución una
    tarea no es
  • interrumpida hasta que termina. Las decisiones
    de planificacion solo
  • pueden llevarse a cabo hasta que termina la
    tarea.
  • Estatico Los parámetros son fijos y calculados
    antes de la ejecución
  • Dinamico Los parámetros pueden cambiar durante
    la ejecución.
  • Off-line La planificacion se realiza antes de la
    ejecución. El plan de
  • ejecución se almacena en una tabla.
  • On-line El planificador toma decisiones sobre la
    ejecución, cuando
  • una tarea inicia su ejecución o cuando termina
    de ejecutarse.
  • Best-effort Algoritmo dinamico que trata de
    encontrar un plan de
  • ejecución factible, pero si no lo encuentra hara
    lo mejor posible para
  • cumplir los plazos de las tareas

9
Métodos de Planificación
  • Planificacion basada en el reloj (basada en el
    tiempo) el plan de ejecucion se calcula fuera
    de linea y se basa en el conocimiento de los
    tiempos de inicio y de computo de todos los jobs.
    El plan de ejecucion esta en una tabla y no es
    concurrente.
  • Planificacion round robin con prioridades las
    tareas tienen prioridades asignadas por el
    usuario (fuera de linea). Dentro de cada
    prioridad las tareas se planifican en round
    robin. Cada tarea se ejecuta en forma continua
    como maximo un tiempo quantum.
  • Planificacion basada en prioridades las
    prioridades las asigna el algoritmo de
    planificacion. La tarea con mayor prioridad se
    ejecuta en cualquier instante.
  • tareas periodicas independientes
  • tareas periodicas y aperiodicas, independientes.
  • tareas periodicas que comparten recursos.

10
Métodos de Planificación
  • Planificacion basada reserva de tiempo a cada
    tarea se le reserva una utilizacion del CPU. El
    planificador elige las tareas a ejecutar en base
    al tiempo que tengan asignado.
  • Planificacion Heuristica la planificacion se
    hace siguiendo el enfoque del mejor esfuerzo
  • Planificacion Flexible este metodo puede
    basarse en cualquiera de los metodos anteriores.
    Sin embargo, los parametros no son fijos y pueden
    cambiar de valor en respuesta a las condiciones
    del ambiente. En este metodo, es posible degradar
    al sistema o permitir la perdida de plazos en
    condiciones de sobrecarga.

11
Planificación On-line vs. Off-line
  • Off-line scheduling el plan de ejecucion se
    calcula fuera de linea y se basa en el
    conocimiento de los tiempos de inicio y de
    computo de todos los jobs.
  • Para sistemas deterministicos con parametros
    temporales fijos que no cambien o que cambien muy
    poco.
  • On-line scheduling el planificador toma
    decisiones sin conocimiento del tiempo en que
    arrivaran jobs en el futuro.
  • No existe un plan de ejecucion optimo si los jobs
    son no-expulsivos
  • Cuando un job arriva, se acepta en el sistema si
    cumple con la prueba de aceptacion.

12
Planificación basada en el reloj (tiempo)
  • El plan de ejecucion se elabora a priori
  • con parametros fijos.Es un esquema que
  • se repite cada ciclo principal.
  • El ciclo principal dura 100 ms
  • Se compone de 4 ciclos
  • secundarios de 25 ms cada uno

T 100ms
M
T 25ms
S
A
A
A
A
B
B
B
B
C
C
D
D
E
0 25
50 75
100
13
Planificación basada en prioridades
  • El planificador dicta su politica de ejecucion
    sobre una cola de procesos ordenados por
    prioridades, y el despachador elige para
    ejecucion a los procesos que esten listos para
    ejecucion de acuerdo a un orden de prioridades.
  • El Job con mayor prioridad es ejecutado hasta
    completarse, o hasta que alguna tarea de mayor
    prioridad se alista, o hasta que se bloquea.
  • El procesador nunca esta ocioso si hay tareas
    listas para ejecucion.
  • Con prioridades fijas (nunca cambian) o dinamicas
    (cambian en cualquier momento durante la
    ejecucion).
  • Expulsivas o no-expulsivas.
  • Rate Monotonic (prioridades fijas) mayor
    prioridad al de menor periodo.
  • EDF (prioridades dinamicas) mayor prioridad a la
    tarea con plazo mas cercano

14
Planificación basada en Prioridades
  • Se implementa (expulsivo o preemptive)
  • Asignando prioridades a las tareas
  • Las decisiones de planificacion se realizan
  • cuando alguna tarea se alista,
  • cuando se le termina el tiempo de ejecucion a una
    tarea, termina de ejecutarse,o se bloquea por
    algun recurso),
  • cuando las prioridades de las tareas cambian.
  • cuando ocurre un evento inesperado (sobrecarga)
  • Cada vez que se toma una decision de
    planificacion, la tarea con mayor prioridad se
    ejecuta.
  • En el caso no-expulivo (non-preemptive), las
    decisiones de planificacion son hechas solo
    cuando el procesador termina la ejecucion de
    alguna tarea.
  • El metodo de planificacion (algoritmo) es
    estatico, si las prioridades se asignan una sola
    vez y permanecen fijas, y es dinamico si las
    priodidades cambian durante la ejecucion.

15
Planificación basada en Prioridades
  • Prioridades Fijas
  • Rate Monotonic (prioridades fijas) mayor
    prioridad al de menor periodo.
  • Prioridades Dinamicas
  • EDF (Earliest Deadline First) mayor prioridad a
    la tarea con plazo mas cercano
  • Shortest slack time first (la tarea con menor
    tiempo de holgura primero) en cualquier instante
    t, la holgura (slack) de un job, es igual a d -t
    menos la parte de computo restante del Job.

16
Planificación basada en Prioridades
  • Rate-Monotonic
  • Earliest Deadline First
  • Shortest slack time first

(2, 1)
(5, 2.5)
missed deadline
(2, 1)
(5, 2.5)
(2, 1)
(5, 2.5)
0 1 2 3
4 5 6 7
8 9 10
17
Programación de Tareas Periodicas
Inicializacion de Tareas inicializar un
timer periodico o una ISR de un evento externo
Inicializacion de Tareas
start_timetime( )
espera por la interrupcion
Cómputo
Cómputo
Retrasa(period - ( time( ) -start_time) )
18
Evaluación de las Políticas de Planificación
  • Las politicas de planificacion se evaluan en base
    a
  • Habilidad de cumplir con los plazos de las tareas
  • Utilizacion del CPU. Porcentaje de tiempo
    dedicado a procesamiento util.
  • Overhead de la planificacion (en-linea) tiempo
    requerido para tomar decisiones de planificacion
  • Flexibilidad ??
  • Habilidad de tratar sobrecargas ??
Write a Comment
User Comments (0)
About PowerShow.com