A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos para Escalonamento de Tempo Real – (RM, EDF, DM) André Luis Meneses Silva strufs.wordpress.com.

Apresentações semelhantes


Apresentação em tema: "Algoritmos para Escalonamento de Tempo Real – (RM, EDF, DM) André Luis Meneses Silva strufs.wordpress.com."— Transcrição da apresentação:

1 Algoritmos para Escalonamento de Tempo Real – (RM, EDF, DM) André Luis Meneses Silva strufs.wordpress.com

2 Agenda Introdução Escalonamento de Tarefas Periódicas Escalonamento de Taxa Monotônica Earliest Deadline First Escalonamento de Deadline Monotônico

3 Introdução O que vamos ver em escalonamento de STR? – Escalonamento de Tarefas Periódicas – Tarefas Dependentes: Compartilhamento de Recursos – Tarefas Dependentes: Relações de Precedência – Escalonamento de Tarefas Aperiódicas

4 Escalonamento de Tarefas Periódicas Devido a sua previsibilidade, tarefas periódicas em geral: – Permite que se obtenha garantias em tempo de projeto. – Utilizadas para modelagem de sistemas de controle de processos e aplicações multimídia.

5 Escalonamento de Tarefas Periódicas Os algoritmos de escalonamento que serão vistos são: – Dirigidos a prioridades – Prioridades são atribuídas de acordo com as restrições temporais das tarefas. – Veremos 3 algoritmos: Escalonamento de Taxa Monotônica (Rate Monotonic) Earliest Deadline First (EDF) Escalonamento Deadline Monotônico (DM)

6 Escalonamento de Taxa Motônica Desenvolvido por Liu & Layland. Produz escalas em tempo de execução através de escalonadores preemptivos dirigidos a prioridades. – On-line ou offline? É um esquema de prioridade fixa, ou seja, tarefas sempre possuem a mesma prioridade. – Estático ou dinâmico?

7 Escalonamento de Taxa Monotônica O algoritmo RM trabalha sobre um modelo de tarefas bastante simples, que obedece às seguintes premissas: – As tarefas são periódicas e independentes. – O deadline de cada tarefa coincide com o seu período (D i = P i ) – O tempo de computação (C i ) de cada tarefa é conhecido e constante (Worst Case Computation Time) – O tempo de chaveamento entre tarefas é assumido nulo.

8 Escalonamento de Taxa Monotônica Idéia: Dar maior prioridade às tarefas de menor período.

9 Escalonamento de Taxa Monotônica Idéia: Dar maior prioridade às tarefas de menor período. Tarefas Periódicas PeríodoTempo de Computação Prioridade RM Utilização Tarefa A ,2 Tarefa B ,267 Tarefa C ,286

10 Escalonamento de Taxa Monotônica Tarefas Periódicas PeríodoTempo de Computação Prioridade RMUtilização Tarefa A ,2 Tarefa B ,267 Tarefa C ,286

11 Vamos reproduzir no Cheddar 1. Inserindo um processador – Edit >> Add >> Add a processor Processor Name : Processor_1 Scheduler: Rate Monotonic Option: Preemptive Add Cliquem em Advanced para confirmar se realmente foi adicionado.

12 Vamos reproduzir no Cheddar 2. Inserindo um espaço de endereçamento – Edit >> Add >> Add an Address Space Address Space Name : mem_1 Processor: Processor_1 Add Cliquem em Advanced para confirmar se realmente foi adicionado.

13 Vamos reproduzir no Cheddar 3. Inserindo Tarefas (inserir 3 tarefas) – Edit >> Add >> Add a Task Name : task_1, task_2, task_3 Task Type: Periodic Address Space: mem_1 Processor: Processor_1 Inserir Capacity, Deadline e Period de acordo com a tabela do próximo slide. Cliquem em Advanced para confirmar se realmente foi adicionado.

14 Vamos reproduzir no Cheddar Tarefas Tarefas Periódicas PeríodoTempo de Computação Prioridade RM Utilização Tarefa A10210,2 Tarefa B15420,267 Tarefa C351030,286

15 Vamos reproduzir no Cheddar Simulando Clique no botão Scheduling Simulation Clique em ok.

16 Escalonamento de Taxa Monotônica Que trabalhão Para todo projeto de tempo real devemos construir esta escala? – Com certeza Existe alguma fórmula que nos dê alguma perspectiva antes de construirmos a escala? Sim? Qual?

17 Escalonamento de Taxa Monotônica A análise de escalonabilidade pode ser feita através do teste abaixo que define uma condição suficiente.

18 Escalonamento de Taxa Monotônica Aplicando a fórmula no exemplo utilizado no cheddar, temos:

19 No Cheddar Cliquem no botão Scheduling feasibility.

20 Escalonamento de Taxa Monotônica Quando as tarefas menos prioritárias possuem períodos múltiplos em relação a mais prioritária, temos: Condição necessária e suficiente

21 Escalonamento de Taxa Monotônica Aplicando a primeira fórmula, temos: Tarefas PeriódicasPeríodoTempo de Computação Prioridade RMUtilização Tarefa A4110,25 Tarefa B8320,375 Tarefa C16530,25 No entanto, é escalonável.

22 Escalonamento de Taxa Monotônica Muito utilizado devido a sua simplicidade de implementação. É um algoritmo ótimo para a classe de problemas que se propõe – Tarefas periódicas. – P = D. – Prioridade Fixa.

23 Outro exemplo Digamos que modelamos um sistema com as seguintes tarefas. O que acontece no RM? Tarefas Periódicas PeríodoTempo de Computação Prioridade RM Utilização Tarefa A201010,5 Tarefa B502520,5

24 Outro exemplo Tarefas Periódicas PeríodoTempo de Computação Utilização Tarefa A20100,5 Tarefa B50250,5

25 O que fazer?

26 Earliest Deadline First (EDF) Desenvolvido por Liu & Leiland Produz escalas em tempo de execução através de escalonadores preemptivos dirigidos a prioridades. É um esquema de prioridade dinâmica. – On-line e Dinâmico.

27 Earliest Deadline First (EDF) O algoritmo EDF trabalha sobre um modelo de tarefas bastante simples, que obedece as seguintes premissas: – As tarefas são periódicas e independentes. – O deadline de cada tarefa coincide com o seu período (D i = P i ) – O tempo de computação (C i ) de cada tarefa é conhecido e constante (Worst Case Computation Time) – O tempo de chaveamento entre tarefas é assumido nulo.

28 Earliest Deadline First (EDF) Idéia: Atribuição dinâmica de prioridades de acordo com os deadlines de cada tarefa.

29 Earliest Deadline First (EDF) Idéia: Atribuição dinâmica de prioridades de acordo com os deadlines de cada tarefa. Tarefas Periódicas PeríodoTempo de Computação Utilização Tarefa A20100,5 Tarefa B50250,5

30 Earliest Deadline First (EDF) Idéia: Atribuição dinâmica de prioridades de acordo com os deadlines de cada tarefa. Tarefas Periódicas PeríodoTempo de Computação Utilização Tarefa A20100,5 Tarefa B50250,5

31 Earliest Deadline First (EDF) A análise de escalonabilidade pode ser feita através do teste abaixo que define uma condição suficiente e necessária.

32 Escalonamento EDF Embora consiga trabalhar com um conjunto maior de casos, EDF possui implementação complexa. É um algoritmo ótimo para a classe de problemas que se propõe – Tarefas periódicas. – P = D. – Prioridade Dinâmica.

33 Escalonamento Deadline Monotônico Desenvolvido por Leung & Whitehead Estende o modelo de tarefas do Taxa Monotônico. Escala em tempo de execução (on-line). Prioridades Fixas (estático).

34 Escalonamento Deadline Monotônico Premissas: – As tarefas são periódicas e independentes. – O deadline de cada tarefa pode não coincidir com o seu período ( ) – O tempo de computação (C i ) de cada tarefa é conhecido e constante (Worst Case Computation Time) – O tempo de chaveamento entre tarefas é assumido nulo.

35 Escalonamento Deadline Monotônico Idéia: Atribuição estática de prioridades baseada nos deadlines relativos das tarefas (D i ). Tarefas Periódicas PeríodoTempo de Computação DeadlinePrioridade RM Tarefa A21061 Tarefa B21082 Tarefa C820163

36 Escalonamento Deadline Monotônico Tarefas Periódicas PeríodoTempo de Computação DeadlinePrioridade RM Tarefa A21061 Tarefa B21082 Tarefa C820163

37 Exercícios Considere cada tarefa P como sendo a tripla P(tempo de computação, período, deadline). 1. Sejam P1(5, 10, 10) e P2(20, 40, 40) – Calcule a utilização (U) – Mostre um escalonamento praticável usando EDF. – Demonstre que um escalonamento praticável baseado em prioridades fixas existe ou prove que não pode existir.

38 Exercícios 2. Sejam P1 = (3, 9, 6), P2 = (4, 18, 12) e P3 = (4, 12, 10). – Qual a utilização do processador U – Mostre que um escalonamento RM existe ou não. – Mostre que um escalonamento EDF existe ou não. – Mostre que um escalonamento DM existe ou não.

39 Referências Farines – Seção 2.4 Sistemas de Tempo Real. Alan C. Shaw (Capítulo 6). System Design and Analysis. Philip A. Laplace (Capítulo 3, seções e 3.2.5).


Carregar ppt "Algoritmos para Escalonamento de Tempo Real – (RM, EDF, DM) André Luis Meneses Silva strufs.wordpress.com."

Apresentações semelhantes


Anúncios Google