Escalonador - Grupos.com.br

Propaganda
GERÊNCIA DE RECURSOS:
GERÊNCIA
DO PROCESSADOR
Curso: Tecnólogo em Redes de Computadores
Disciplina: Sistemas Operacionais
Profª: Cristiane Machado de Vargas
GERÊNCIA DO PROCESSADOR
1
• Introdução
2
• Política de escalonamento
3
• Critérios de Escalonamento
4
• Escalonamento Não-Preemptivos e preemptivos
5
• Escalonamento FIFO First-In-First-Out
6
• Escalonamento SJF Shortest-Job-First
7
• Escalonamento Cooperativo
8
• Escalonamento Circular
GERÊNCIA DO PROCESSADOR
9
10
11
• Escalonamento por Prioridades
• Escalonamento Circular com Prioridades
• Escalonamento por Múltiplas Filas
12
• Escalonamento por Múltiplas Filas com
Realimentação
13
• Política de Escalonamento em Sistemas de
Tempo Compartilhado
14
• Política de Escalonamento em Sistemas de
Tempo Real
GERÊNCIA DO
PROCESSADOR
Uma das atividades mais
importantes em um sistemas
operacional multiprogramável.
•
Devem ser estabelecidos critérios
para determinar qual processo fará
uso do processador.
•
Os critérios utilizados para
selecionar o processo, compõem a
chamada política de escalonamento.
•
2- POLÍTICA DE ESCALONAMENTO

Cada SO possui sua política de escalonamento
adequada ao seu propósito a ás suas características.
2- POLÍTICA DE ESCALONAMENTO
Funções Básicas:

Manter o processador ocupado a maior parte do
tempo.

Balancear o uso da CPU entre processos.

Privilegiar a execução de aplicações críticas.

Maximizar o throughput do sistema

Oferecer tempos de resposta razoáveis para
usuários interativos.
2- POLÍTICA DE ESCALONAMENTO
Escalonador (scheduler)


É a rotina do SO que tem como principal função
implementar os critérios da política de
escalonamento.
É fundamental em um sistema multiprogramável,
pois todo o compartilhamento do processador é
dependente dessa rotina
2- POLÍTICA DE ESCALONAMENTO
Dispatcher



Rotina importante na gerência do processador.
Responsável pela troca de contexto dos processos
após o escalonador determinar qual processo deve
fazer uso do processador.
Latência do Dispatcher é o período de tempo
gasto na substituição de um processo em execução
por outro.
2- POLÍTICA DE ESCALONAMENTO
Ambientes que implementam apenas processos:


O escalonamento é realizado com base nos processos
prontos para execução.
PROCESSO: unidade de alocação de recursos
Sistemas que implementam threads:


O escalonamento é realizado considerando os threads
no estado de pronto, independente do processo.
THREADS: unidade de escalonamento
3- CRITÉRIOS DE ESCALONAMENTO
Utilização do • È desejável que o processador
permaneça ocupado a maior
processador
parte do seu tempo
Throughput
• Representa o número de
processos executados em um
determinado intervalo de tempo
• É o tempo que um processo leva
Tempo de
no estado de execução durante
Processador /
Tempo de UCP
seu processamento
3- CRITÉRIOS DE ESCALONAMENTO
Tempo de
Espera
• É o tempo total que um processo
permanece na fila de pronto
durante seu processamento
• É o tempo que um processo leva
Tempo de
desde a sua criação até ao seu
Turnaround
término
Tempo de
Resposta
• É o tempo decorrido entre uma
requisição ao sistema e o instante
em que a resposta é exibida
4- ESCALONAMENTO NÃO-PREEMPTIVOS E
PREEMPTIVOS
Preempção


Atividade em que o sistema operacional interrompe
um processo em execução e substitui por um outro
Sistemas Operacionais que implementam
escalonamento com preempção (atualmente, a maioria)
 São mais complexos
 Possibilitam políticas de escalonamento mais
flexíveis
 Possibilitam a implementação dos diversos
critérios de escalonamento
4- ESCALONAMENTO NÃO-PREEMPTIVOS E
PREEMPTIVOS
Escalonamentos Não-Preemptivos e Preemptivos
Preempção -> Possibilidade de o sistema operacional interromper um
processo em execução e
substituir por um outro.
Não-Preemptivos -> nenhum evento externo pode ocasionar a perda do
uso do processador, sendo
que o processo somente sai do estado de execução caso termine seu
processamento ou execute
instruções do próprio código que ocasionem uma mudança para o estado
de espera.
Preemptivo -> é usado na maioria dos sistemas operacionais atuais. É
caracterizado pela possibilidade
do S.O. interromper um processo em execução e passá-lo para o estado
de pronto, com o objetivo de
alocar outro processo na CPU.
8.5

Escalonamento First in First-Out (FIFO)
Definição: É o processo que chegar primeiro ao
estado de pronto para a execução.
Maike Vieira / Renan Bendo
8.6

O que define essa política de escalonamento?
Escalonamento Shortest-Job-First, define-se na
execução do processo que leva-rá menos tempo de
execução.
8.7
Escalonamento Cooperativo:
 O escalonamento cooperativo é uma
implementação que busca aumentar o grau de
multiprogramação em politicas de escalonamento
que não possuam mecanismos de preempção,
como o FIFO e o SJF não preemptivo. O processo
em execução pode voluntariamente liberar o
processador e retornar a fila de pronto, liberando
assim o CPU para outro processo, e com isso
otimizando a distribuição dos processos no
processador.

8.8

Escalonamento Circular
É do tipo preemptivo (semelhante ao FIFO) ,
neste escalonamento o uso da CPU é dividido
em fatias de tempo, e é especialmente projetado
para sistemas de tempo compartilhado, sua
vantagem é não permitir que o processo
monopolize a UCP,e seu problema é que a CPUbound é beneficiada no uso da CPU, pois usa por
completo a fatia de tempo.
8.9

O escalonamento por prioridades é um
escalonamento do tipo preemptivo realizado com
base em um valor a cada processo, chamado
prioridade de execução.Neste escalonamento um
processo em execução não pode sofrer preempção
por tempo.
8.10

Neste tipo de escalonamento, um processo
permanece no estado de execução até que termine
seu processamento, voluntariamente passe para o
estado de espera ou sofra uma preempção por
tempo ou prioridade.
8.11

Escalonamento por Múltiplas Filas: Como o nome já fiz são filas
de processos no estado de Pronto, cada fila diferenciada por
prioridades específicas.
Nesse mecanismo, o processo não possui prioridade, e sim ficando
a associação para cada fila.
Um exemplo desse escalonamento pode ser representado
dividindos em três grupos: sistema, interativo e lote. onde cada
um desses grupos
se tornaram uma fila de processos.. colocando em prioriade as
Filas de processos de Sistema, em seguida Filas de processos
interativos e por ultimo
Filas de processos em Lote.
uma desvantagem deste escalonamento é que, no caso de um
processo alterar seu estado no decorrer do tempo, o processo não
poderá ser redirecionado
para outra fila mais adequada.
8.12

ESCALONAMENTO POR MÚLTIPLAS FILAS
COM REALIMENTAÇÃO
O que define essa política de escalonamento?
Permite que os processos sejam redirencionados
entre as diversas filas, fazendo com que o sistema
operacional inplemente um mecanismo de ajuste
dinâmico denominado mecanismo adaptativo. Os
processos não são previamente associados as filas
de pronto, e sim, direcionados pelo sistema para
as filas existentes com base no seu
comportamento.
8.13

Política de escalonamento em sistemas de tempo
compartilhado: Caracterizam-se pelo
processamento interativo, onde usuários
interagem com as aplicações exigindo tempo de
respostas baixos. a maioria dos sistemas
operacionais de tempo compartilhado utilizam
escalonamento circular com prioridades
dinâmicas.
Download