Sistemas Operacionais Escalonamento de Processos Uniprocessador Captulo 9
- Slides: 69
Sistemas Operacionais Escalonamento de Processos Uniprocessador Capítulo 9 1
Objetivos do Escalonamento É a chave de multiprogramação eficiente deve ser transparente ao usuário Esolher processos a serem executados por pelo processador(es) tempo de resposta Throughput/vazão eficiência do processador 2
Níveis de Escalonamento Longo Prazo Médio Prazo Curto Prazo 3
Escalonamento de Longo Prazo Determina que programas são admitidos no sistema para processamento Controla o grau de multiprogramação quanto mais processos, menor a percentagem de tempo que cada processo é executado Quando um processo é aceito, vai para fila de prontos (curto prazo) Escalonador chamado quando um processo finaliza processador ocioso (muitos processos bloqueados) 4
Escalonamento de Médio Prazo associado ao swapping the processos baseado na necessidade de gerenciar o grau de multiprogramação necessidade de liberar MP para outros processos processador ocioso 5
Escalonamento de Curto Prazo conhecido como despachante mais frequentemente executado chamado quando os seguintes eventos ocorrem interrupção de relógio interrrupção de E/S chamadas de procedimento sinais 6
7
8
Critérios de escalonamento de curto prazo orientado ao usuário voltado para qualidade de serviço associada a sistemas iterativos tempo de resposta período de tempo desde a submissão de um pedido até sua saída minimizar tempo de resposta mesmo quando vários usuários compartilham os recursos eficiência: tempo de resposta em média de 2 s neste tipo de sistema, escalonador decide de acordo com este objetivo 9
Critérios de escalonamento de curto prazo orientado ao sistema utilização efetiva e eficiente do sistema maximização de throughput/vazão número de processos por período de tempo relacionado ao desempenho quantitativa medições como tempo de resposta e throughput/vazão 10
Orientado ao usuário e desempenho tempo de resposta enquanto executa um processo, pode-se retornar resposta para outro processos iterativos turnaround time pode ser maior ou igual ao tempo de resposta considerado também para processos em batch deadlines política cujas decisões devem respeitar deadlines 11 de processos
Orientado ao sistema e desempenho throughput depende do tempo dos processos mas também da política de escalonamento utilização do processador deve estar sempre ocupado sistemas compartilhados não é o caso de sistemas de tempo real, mesmo que recursos estejam sendo compartilhados 12
Outros critérios do sistema Justeza (fairness) para evitar starvation prioridades balanceamento na utilização de recursos 13
14
Aspectos gerais – Políticas de escalonamento Dois aspectos principais seleção qual processo será selecionado para execução baseado em prioridade/necessidade de recurso/características de tempo de execução modo de decisão 15
Prioridades como critério de escalonamento escolha de processo de maior prioridade implementação de filas múltiplas, uma para cada nível de prioridade starvation: processo de menor prioridade pode “nunca” ser escolhido é necessário modificar prioridades baseado no tempo que o processo passa na fila 16
17
Modos de decisão não preemptivo o processo sendo executado é interrompido e colocado na fila de prontos pelo SO elimina a monipolização do processador por um processo por muito tempo mas, overheads na troca de contexto importante investir no hardware e software 18
Política: First-Come-First-Served (FCFS) seleciona o processo que está a mais tempo na fila de prontos exemplo (não preemptivo) 19
First-Come-First-Served (FCFS) processo curto muito tempo no sistema, pois chegou depois de um processo longo favorece processos CPU-bound ao inves de I/O bound (por que? ) 20
First-Come-First-Served (FCFS) boa métrica tempo de espera normalizado de cada processo razão entre o turnaround time e o tempo de serviço Tn = Tq/Ts eficiente se �processo Tn ≈ 1. 9 21
First-Come-First-Served (FCFS) Tempo de fim A 3 B 9 C 13 D 18 E 20 Turnaround time (Tq) 3 7 9 12 12 Tempo em fila normalizado (Tn= Tq/Ts) 1 1, 17 2, 25 2, 4 6 22
Round-Robin (RR) política preemptiva fatia de tempo (time slice) ou quantum de tempo de CPU para cada processo interrupção de relógio é gerada a cada quantum 23
Round-Robin (RR) política preemptiva fatia de tempo (time slice) ou quantum de tempo de CPU para cada processo interrupção de relógio é gerada a cada quantum processo em execução interrompido fila de prontos resolve o problema de processos curtos como no caso de FCFS 24
Round-Robin (RR) qual o melhor valor de quantum? pequeno bom para processos curtos mas, freqüência dos overheads maior tratamento de interrupção + funções do escalonamento + funções do despachante 25
26
Round-Robin: quantum = 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 27
Round-Robin: quantum = 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 28
Round-Robin: quantum = 4 Tempo de fim A 3 B 17 C 11 D 20 E 19 Turnaround time (Tq) 3 15 7 14 11 Tempo em fila normalizado (Tn= Tq/Ts) 1 2, 5 1, 75 2, 8 5, 5 29
Round-Robin: quantum = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 30
Round-Robin: quantum = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 31
Round-Robin: quantum = 4 A B C D E Tempo de fim Turnaround time (Tq) Tempo em fila normalizado (Tn= Tq/Ts) 32
Round-Robin: quantum = 4 Tempo de fim A 4 B 18 C 17 D 20 E 15 Turnaround time (Tq) 4 16 13 14 7 Tempo em fila normalizado (Tn= Tq/Ts) 1, 33 2, 67 3, 25 2, 8 3, 5 33
Round-Robin (RR) vantajoso para sistemas compartilhados em geral problemático para processos I/O bound perante CPU bound devido a E/S, o processo perde CPU ao retornar, vem para o final da fila de prontos para contornar este problema: RR virtual 34
Round-Robin virtual ( RR virtual) processo requisita E/S vai para fila de bloqueados quando evento terminar, processo vai para fila de prontos auxiliar quando próximo quantum terminar, o escalonador dá preferência para a fila de prontos auxiliar (pois. . . ? ) 35
36
Shortest Process Next (SPN) não preemptivo o processo com o menor tempo de serviço é selecionado como o próximo para ser selecionado prioridade para processos curtos turnaround time muito menor para processos curtos do que FCFS Mas. . . como estimar o tempo de execução dos processos? geralmente, estimativa de processos mais longos não é tão precisa para processos longos: starvation 37
Shortest Process Next (SPN) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 38
Shortest Process Next (SPN) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 39
Shortest Process Next (SPN) A B C D E Tempo de fim Turnaround time (Tq) Tempo em fila normalizado (Tn= Tq/Ts) 40
Shortest Process Next (SPN) Tempo de fim A 3 B 9 C 15 D 20 E 11 Turnaround time (Tq) 3 7 11 14 3 Tempo em fila normalizado (Tn= Tq/Ts) 1 1, 17 2, 75 2, 8 1, 5 41
Shortest Remaining Time (SRT) versão preemtiva do SPN o não preemtivo: não aplicável para sistemas compartilhados processos são interrompidos quando um novo processo chega na fila de prontos também precisa estimar tempo de execução dos processos um novo processo pode ter prioridade quando chegar na fila de prontos processos longos starvation menos interrupções que RR 42
Shortest Remaining Time (SRT) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 43
Shortest Remaining Time (SRT) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 44
Shortest Remaining Time (SRT) A B C D E Tempo de fim Turnaround time (Tq) Tempo em fila normalizado (Tn= Tq/Ts) 45
Shortest Remaining Time (SRT) Tempo de fim A 3 B 15 C 8 D 20 E 10 Turnaround time (Tq) 3 13 4 14 2 Tempo em fila normalizado (Tn= Tq/Ts) 1 2, 17 1 2, 8 1 46
Highest Response Ratio Next (HRRN) não preemptivo: seleciona o próximo processo com a maior média de resposta calculado como taxa de resposta TR = (w +Ts)/Ts jobs curtos terão prioridade, mas. . . jobs longos terão maior tempo de espera na fila e se tornarão prioritários 47
Highest Response Ratio Next (HRRN) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 48
Highest Response Ratio Next (HRRN) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D E 49
Highest Response Ratio Next (HRRN) A B C D E Tempo de fim Turnaround time (Tq) Tempo em fila normalizado (Tn= Tq/Ts) 50
Highest Response Ratio Next (HRRN) Tempo de fim A 3 B 9 C 13 D 20 E 15 Turnaround time (Tq) 3 7 9 14 7 Tempo em fila normalizado (Tn= Tq/Ts) 1 1, 17 2, 25 2, 8 3, 5 51
Feedback sem cálculo do futuro (como no caso do SPN, SRT e HRRN) olha para o passado preemtivo especificação de n filas: P 1 entra na fila RQ 0 e é escolhido para execução interrupção: P 1 vai para RQ 1 . . P 1 saiu da fila RQi quando foi escolhido para execução interrupção: P 1 vai para RQi+1 um processo é escolhido da fila de menor índice que contem processos prontos para serem executados 52
Feedback jobs curtos – pouco tempo no sistema se um job chegar a fila RQn, depois passará para RQ 0 preempção pode ser por interrupção ao chegada de processos na fila RQ 0 (ou híbrido) ou: processo que vem dá fila RQi tem 2 i unidades de tempo de processador. 53
54
Estimativa de tempo grande problema com as políticas que utilizam a estimativa de tempo, é como especificar o tempo de serviço Exemplo: função probabilistica baseada no passado (simulando execução de programas com diferentes entradas) políticas: SPN (shortest process next) SRT (shortest remaining time)] HRRN (highest response ratio next) 55
Comparação de Desempenho das diversas políticas difícil de analisar a distribuição probabilística do tempo de serviço implementação da troca de contexto tipos de E/S e seus desempenhos Tentativa de análise: através de teoria de filas análise analítica através de simulações 56
Comparação de Desempenho exemplo de simulações: 50. 000 processos taxa de chegada = 0. 8 média de tempo de serviço = 1 u. t. utilização do processador 57
58
59
60
61
62
63
Fair-Share Scheduling a aplicação do usuário corresponde a um conjunto de threads especifica um percentual de processamento a cada processo que participa de uma certa classe de processos Exemplo: UNIX grupos de processos: professores, graduação, pós-graduação, funcionários cada grupo pode receber 25% do temo de processador, por exemplo 64
Fair-Share Scheduling prioridades podem ser utilizadas, que consideram prioridade do próprio processo total de utilização de processador dos processos do grupo ao qual pertence uso médio do processador prioridades recalculadas a cada interrupção prioridades diminuem cada vez que um processo ganha processador 65
Fair-Share Scheduling Sejam os processos A grupo 1 B grupo 2 C grupo 2 Grupo 1 50% do processador Grupo 2 50% do processador Suponha um quantum de 1 s: a cada 1 s, a seqüência representa as escolhas do processador A B A C A B A C. . . 66
67
Escalonador tradicional do UNIX RR em cada fila de prioridade preempção: 1 s prioridades são recomputadas a cada preempção 68
69
- Algoritmo de escalonamento
- Preemptivo
- Sistemas lineares escalonamento
- Sistema operacional em camadas
- Sistemas operacionais de tempo real
- Sistemas operacionais
- Sistemas operacionais de rede
- Sistemas operacionais
- Sistema fortemente acoplado assimétrico
- 3 geração dos sistemas operacionais
- Sincronismo entre processos no w2k
- Sotipos
- Sistemas distribuídos vantagens e desvantagens
- Sistemas operacionais
- Sistemas operacionais
- Https://slidetodoc.com/captulo-2-o-sudeste-e-o-sul-do/
- Conceito de judaismo
- Escalonador de processos
- Escalonamento
- Algoritmos de escalonamento
- Deadlock
- Tipo e polaridade das frases
- L
- Normas operacionais básicas do sus
- Incorridas
- Pilares sus
- Analgica
- Resultados operacionais
- Amplificadores operacionais
- Resultados operacionais
- Como fazer a conclusão de um trabalho
- Gram positivas
- Processos mentais psicologia
- Uva idj
- Processos de soldadura
- Frases de dorothea orem
- Métodos de separação de mistura
- Sistema de virtualização de processos viproc
- Fluxogramas de processos industriais
- Resposta
- Processos irregulares de formação de palavras
- O e business abrange os processos
- Processos pmbok 6
- 4 fases do processo administrativo
- A figura ilustra os diversos processos termodinâmicos
- Fluxogramas de processos industriais
- As empresas são grandes coleções de processos
- Das questões e processos incidentes
- Processos de eletrização
- Onde fica a faringe
- Metabolismo bacteriano
- Processos vitais das plantas
- Numeração de processos administrativos
- Priscila facciolli
- Brasil acima de tudo
- Tipos de modelo de processo prescritivo
- Processos de jobbing
- Processos interpretativos inferenciais
- Processos emocionais
- Processos de eletrização
- Suco entérico
- Vao anexas a carta varias fotografias
- Favorecem
- Processos de soldagem por fusão
- Ufpr 2017 os processos industriais nao imitam a natureza
- Principios da administração cientifica
- 05112004 color
- Diagrama p&id cerveza
- Processos de jobbing exemplos
- Pessoas processos e tecnologia