categorias de escalonamento e objetivos do algorítmo escalonador

27
Categorias de escalonamento, objetivos do algoritmo de escalonamento Ivan Justo Thaís Favore Sofia Trindade Jales 2016 Trabalho apresentado a disciplina de Servidores e seus Sistemas Operacionais da Faculdade de Tecnologia de Jales Orientador: Prof. Cristiano Martins

Upload: sofia-trindade

Post on 20-Mar-2017

31 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Categorias de escalonamento, objetivos do algoritmo de escalonamento

Ivan JustoThaís Favore

Sofia Trindade

Jales2016

Trabalho apresentado a disciplina de Servidores e seus Sistemas Operacionais da Faculdade de Tecnologia de Jales

Orientador: Prof. Cristiano Martins

Page 2: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Apresentação

1. INTRODUÇÃO AO ESCALONADOR2. CATEGORIAS DE ALGORITMOS DE ESCALONAMENTO

1. Lote2. Interativo3. Tempo Real

3. OBJETIVOS DO ALGORITMO DE ESCALONAMENTO4. CONCLUSÃO5. BIBLIOGRAFIA

2

Page 3: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Introdução ao Escalonador• O escalonador escolhe o processo certo para

executar;• Responsável pela eficiência da CPU;• Extremamente importante quando se trata de

servidores e estações de trabalho de alto desempenho.

3

Page 4: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Introdução ao Escalonador

4

Page 5: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Introdução ao Escalonador

5

Page 6: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Categorias de Algoritmos de Escalonamento

• Uso adequado do algoritmo para cada área de aplicação (ambientes);

• 3 Ambientes merecem distinção:– Lote– Interativo– Tempo Real

6

Page 7: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Sistemas em Lote• Algoritmos não preemptivos ou preemptivos

com longo intervalo para cada processo são em geral aceitos;

• Essa tática reduz alternâncias entre processos e melhora o desempenho;– Não Preemptivos: escolhe um processo, e ele será

executado até que seja bloqueado ou que libere a CPU;– Preemptivos: escolhe um processo e o deixa por um

tempo máximo fixado.7

Page 8: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento• Sistema em Lote

8

Page 9: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Sistemas Interativos• Ambientes com usuários interativos necessita

da preempção;• Uma falha pode levar um processo a executar

para sempre, impedindo outros processos de usarem a CPU;

• Por isso a preempção é importante.

9

Page 10: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento• Sistemas interativos

10

Page 11: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Sistemas de Tempo Real• Sistemas Interativos: Tempo de resposta:

responder rapidamente às requisições;

• Proporcionalidade: satisfazer às expectativas dos usuários;

11

Page 12: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Sistemas de Tempo Real• Executam programas que visam no progresso

da aplicação;• A preempção é desnecessária, pois os

processos sabem quem não podem executar por um longo período;– Fazem seus trabalhos e bloqueiam rapidamente.

12

Page 13: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento• Sistemas de tempo real

13

Page 14: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Sistemas de Tempo Real: Cumprimento dos prazos: evitar a perda de dados;

• Previsibilidade: evitar a degradação da qualidade em sistemas multimídia;

14

Page 15: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Algoritmos dependem de objetivos e do ambiente. Justiça entre os processos (mas categorias diferentes podem ser tratadas diferentes);

• Manter todas as partes do sistema ocupadas;

15

Page 16: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Técnicas para verificar se o sistema executa bem:

• Vazão: números de Jobs por hora que o sistema termina;

• Tempo de Retorno: tempo desde que o job em lote é submetido até o momento que é finalizado;– Tempo em média que o usuário tem de esperar;

16

Page 17: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Se a CPU e os demais dispositivos de E/S puderem ser mantidos em execução o tempo todo, mais trabalho por segundo será feito do que se algum dos componentes estiver ocioso.

17

Page 18: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

• Utilização da CPU: A CPU se torna cara quando o assunto é computador de grande porte;

• O que interessa é a vazão e o tempo de resposta;– Tomar a utilização da CPU como medida é como

avaliar um carro pelo número de giros em seu motor a cada hora;

18

Objetivos do Algoritmo de Escalonamento

Page 19: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Sistemas interativos, principalmente servidores, o que importa é minimizar o tempo de resposta;

• Proporcionalidade: Os usuários tem a intuição de quanto tempo processos devem demorar;– O escalonador não tem como fazer nada a menos

que o atraso seja devido a uma má escolha de ordem de processos;

19

Page 20: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Sistemas de tempo real diferem dos sistemas interativos, uma vez que seu objetivo é fazer com que prazos sejam cumpridos;– Ex: computadores que controlam um dispositivo

que produz dados a uma taxa constante. Uma falha poderia causar perda de dados;

20

Page 21: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Objetivos do Algoritmo de Escalonamento

• Todos os sistemas:– Justiça: dar a cada processo uma porção justa da

CPU;– Aplicação da política: verificar se a política

estabelecida é cumprida;– Equilíbrio: manter ocupadas todas as partes do

sistema;

21

Page 22: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

22

Page 23: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Conclusão• O que deve ser otimizado pelo escalonador

não é o mesmo para todos os sistemas;• Para isso existem vários algoritmos de

escalonamento, tendo-se que levar em consideração que podem, ou não, depender do ambiente;

23

Page 24: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Pergunta:Por que é importante, usando algoritmos

de escalonamento, manter, quando possível, todas as partes do sistema ocupadas (CPU e dispositivos E/S)?

24

Page 25: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Resposta:Quando forem mantidos em execução o

tempo todo, mais trabalho por segundo será feito do que se algum dos componentes estiver ocioso.

25

Page 26: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Resposta:• Em um sistema de lote, por exemplo, é melhor

ter na memória tanto processos orientados à CPU e à E/S do que somente orientado à CPU ou à E/S. Isso evita a ociosidade de ambos – enquanto a CPU é usada, a E/S fica ociosa e vice-versa. É melhor manter o sistema todo executando de uma vez fazendo com que ocorra cuidadosamente essa mistura de processos.

26

Page 27: Categorias de Escalonamento e Objetivos do Algorítmo Escalonador

Bibliografia• TANENBAUM, Andrews S. Sistemas

Operacionais Modernos. ed.Pearson, 2003, 2ª e 3ª edição.

27