Este documento discute dois algoritmos de escalonamento de processos: Escalonamento por Loteria e Escalonamento por Fração Justa. O Escalonamento por Loteria distribui bilhetes de sorteio entre processos de acordo com suas prioridades. O Escalonamento por Fração Justa aloca tempo de CPU entre usuários de forma justa de acordo com o número de seus processos. O documento conclui que um algoritmo de escalonamento adequado otimiza o uso dos recursos e atende aos objetivos do sistema.
Escalonamento de processos por loteria e fração justa
1. Pedro Januario junior
Vitor Renato Andrade Santos
Trabalho de SSO
Escalonamento por Loteria
Escalonamento por Fracão Justa
Prof. Cristiano Pires Martins
Jales
2017
3. Introdução
• É uma necessidade, decorrente principalmente devido a multi-
programação;
• Há a possibilidade de dois ou mais processos estarem no estado PRONTO
• Módulo do SO → ESCALONADOR
• Algoritmo → Algoritmo de Escalonamento
– Vários tipos;
– Depende do que se deseja privilegiar!
4. • O sistema distribui bilhetes aos processos, e faz um sorteio cada vez que
precisa selecionar um processo para a CPU.
• Se cada processo tiver x% dos bilhetes, deve ganhar a CPU x% das vezes.
• Em teoria, um processo pode nunca ser sorteado.
Escalonamento por Loteria
5. • Na prática, as probabilidades garantem que isso não ocorre.
• Um modo é manter duas filas:
• Bilhetes já sorteados
• Bilhetes não sorteados
• Processos prioritários podem ganhar mais bilhetes.
• Processos cooperativos podem trocar bilhetes:
Ex: clientes podem passar bilhetes para servidores
Escalonamento por Loteria
6. Se considerarmos apenas os processos e não os usuários uma situação um
“injusta” pode ocorrer;
Usuário A → 10 processos; Usuário B → 1 processo;
Usuário A → 90% do tempo de CPU, Usuário B → 10%;
• A cada usuário é dado uma parcela do tempo da CPU;
• Varia com o número de usuários autenticados;
• Um processo só é escalonado caso ele pertença a um usuário ainda com
tempo de CPU para utilizar;
Escalonamento por Fração Justa
7. 1) Usuário 1 > A,B,C,D
2) Usuário 2 > E
3) Foi prometido 50% da CPU a cada um, e foi usado o Round Robin:
A,E,B,E,C,E,D,E,…
• Recursos não utilizados são distribuídos aos outros usuários.
Escalonamento por Fração Justa
8. Conclusão
• Um escalonador adequado faz a diferença (desempenho/satisfação).
• Controla o compartilhamento de recursos para uso eficiente da CPU.
• Minimizar o tempo de resposta.
• Atender a um objetivo.
9. Bibliografia
TANENBAUM, Andrew. Sistemas Operacionais Modernos - 2ª Edição.
Disponível na Biblioteca da Fatec de Jales. Acesso em 29 de Agosto.
WIKIPEDIA. Escalonamento de Processos. Disponível em
<https://pt.wikipedia.org/wiki/Escalonamento_de_processos>. Acesso em 29
de Agosto.