120 likes | 289 Views
Anomalias de Escalonamento. Departamento de Electrónica, Telecomunicações e Informática Universidade de Aveiro Sistemas de Tempo-Real Segunda-feira, 23 de Outubro de 2006. Hélder Cabrita 27470 Daniel Castanheira 27520. Motivação. Escalonamento de tarefas Tipos de Escalonamento
E N D
Anomalias de Escalonamento Departamento de Electrónica, Telecomunicações e Informática Universidade de Aveiro Sistemas de Tempo-Real Segunda-feira, 23 de Outubro de 2006 Hélder Cabrita 27470 Daniel Castanheira 27520
Motivação • Escalonamento de tarefas • Tipos de Escalonamento • Utilização de multi-processamento • Possibilidade de várias tarefas atendidas ao mesmo tempo. • Problemas associados.
Tipos de Escalonamento • Preemptive vs. non-preemptive; • Síncrono (all processes arrive at once); • Assíncrono (processes arrive one by one); • Off-line (arrival time, computation time, deadline of all process known in advance) ou on-line; • Independente, ou com relação de dependência; • Aperiódico vs. periódico vs. híbrido (misto)
Anomalias de escalonamento • Uma alteração aparentemente positiva no sistema (redução da carga ou aumento dos recursos) pode causar uma perda performance.
Anomalias de escalonamento • Adição de processadores • Reduzir a precedência entre tarefas • Redução do tempo de execução de tarefas • Podem aumentar o tempo de execução!!!
J1 (3) J9 (9) J8 (4) J2 (2) J7 (4) J3 (2) P1 1 9 J6 (4) P2 J4 (2) 2 4 5 7 J5 (4) P3 3 6 8 0 2 4 6 8 10 12 14 Exemplos Representação da precedência entre tarefas Jx: Legenda: J9 só pode ser executada depois de J1. J1 (3) – a tarefa J1 tem um tempo de execução de 3 unidades de tempo. J9 (9) J1 (3) Escalonamento óptimo das tarefas Jx em 3 processadores: Unidades de tempo
P1 1 8 P2 2 5 9 P3 3 6 P4 4 7 0 2 4 6 8 10 12 14 Adicionando 1 processador • O tempo de processamento aumentou!!! • Com 3 processadores: 12 UT • Com 4 processadores: 15 UT Escalonamento óptimo das tarefas Jx em 4 processadores: Unidades de tempo
J1 (3) J9 (9) J8 (4) J2 (2) J7 (4) J3 (2) J6 (4) J4 (2) J5 (4) P1 1 8 9 P2 2 4 5 P3 3 7 6 0 14 2 4 6 8 10 12 Reduzir a precedência entre tarefas • O tempo de processamento aumentou!!! • Com 4 precedências: 12 UT • Com 2 precedências: 16 UT Representação da precedência entre tarefas Jx: Legenda: J9 só pode ser executada depois de J1. J1 (3) – a tarefa J1 tem um tempo de execução de 3 unidades de tempo. Escalonamento óptimo das tarefas Jx em 3 processadores: Unidades de tempo
P1 1 5 8 P2 2 4 6 9 P3 3 7 0 2 4 6 8 10 12 14 Redução do tempo de execução de tarefas em 1 UT • O tempo de processamento aumentou!!! Escalonamento óptimo das tarefas Jx em 3 processadores: Unidades de tempo
Conclusão • Se um conjunto de tarefas é escalonado optimamente numa unidade de multi-processamento, com determinadas prioridades atribuídas, tempos de execução fixos e limites de precedência, uma alteração aparentemente positiva do sistema pode causar uma redução da performance do mesmo. • Atribuição de prioridades não é uma boa solução! Esta confunde dois conceitos: • Quão importante é algo? • A quem deverá ser atribuído “o processador” a seguir?
Bibliografia • http://www.cs.hmc.edu/~keller/courses/cs156/s98/slides/399.html • http://www.soe.ucsc.edu/classes/cmpe117/Winter05/cmpe117-luca/lecture_aperiodic_scheduling.pdf • http://www.cs.chalmers.se/~phs/Teaching/Realtime.ppt • http://www.ce.chalmers.se/edu/year/2005/course/EDA420/Documents/Slides/Slides_7_4up.pdf