Grupo 5 – Análise comparativa e sequencial dos algoritmos fundamentais
Roteiro dos tópicos organizados na sequência evolutiva da disciplina
Como gerenciar o fluxo de jobs entre Disco, Memória RAM e CPU sem sobrecarregar o hardware.
A chegada aos sistemas interativos: justiça democrática, preempção periódica e o dilema do Quantum.
Nem todo processo é igual: prioridades estáticas, dinâmicas (regra 1/f) e a prevenção da inanição.
A fusão ideal (caso CTSS): classes de prioridade com quanta progressivos que reduzem trocas caras de disco.
Resumo do cenário: de onde viemos e por que a CPU precisa dessas estratégias
Os algoritmos iniciais (como FCFS e SJF) assumem que os trabalhos já residem na memória e que o objetivo principal é apenas a vazão de jobs concluídos.
Com múltiplos usuários no teclado e processos com janelas na tela, o foco muda para o tempo de resposta. Nenhum processo pode monopolizar a CPU.
Por que não carregar todos os jobs diretamente na memória RAM?
Monitora a fila de entrada no disco. Decide quais jobs entram no sistema, dosando processos de cálculo e de E/S.
Controla quantos processos residem na RAM. Os excedentes vão para a área de troca (swap) no disco, evitando esgotar a memória.
Seleciona qual dos processos prontos na memória executará a seguir. É o algoritmo veloz que roda a cada milissegundo.
A cada processo é concedido um intervalo contínuo de tempo chamado quantum
Acompanhe a contagem regressiva do quantum e a preempção visual na CPU
O processo executável com maior prioridade sempre receberá a CPU
O SO atribui prioridade 1/f, sendo f a fração do último quantum utilizada:
f = 1/50) ➔ Prioridade sobe para 50! Ele libera a CPU logo e põe o disco para rodar.
f = 1) ➔ Prioridade cai para 1 para não monopolizar.
A solução do CTSS: união de prioridades com quanta exponenciais
O computador IBM 7094 só comportava um processo na RAM por vez. Toda alternância exigia salvar o processo atual no disco e ler o próximo do disco.
Ao esgotar seu quantum, o processo desce de nível e o quantum dobra:
Um processo de 100 quanta precisa de apenas 7 trocas de disco em vez de 100 trocas do Round-Robin comum!
<Entra> no terminal (assumindo que era interativo). Alunos com programas pesados de cálculo ficavam teclando <Entra> freneticamente para furar a fila! "Fazer funcionar na prática é mais difícil que na teoria."
Como os 4 mecanismos articulam a gestão moderna de processos
| Algoritmo / Mecanismo | Ambiente Principal | Mecanismo Central | Principal Vantagem | Desafio Mitigado |
|---|---|---|---|---|
| Escalonamento em 3 Níveis | Lote e Grandes Servidores | Separação Admissão, Swap e CPU | Protege a memória RAM contra esgotamento | Evita colapso de paginação (thrashing) |
| Alternância Circular (RR) | Sistemas Interativos | Fila circular FIFO com quantum fixo | Garante justiça e resposta rápida na tela | Elimina monopólio da CPU por um processo |
| Escalonamento por Prioridades | Multiusuário e Tempo Real | Classes com regra dinâmica 1/f | Favorece E/S e processos críticos | Mitiga inanição reduzindo prioridade com o tempo |
| Filas Múltiplas (CTSS) | Sistemas de Grande Porte | Quanta que dobram (1, 2, 4, 8, 16...) | Minimiza trocas de disco para processos pesados | Equilibra processos interativos com computacionais |
Fontes acadêmicas e bibliografia recomendada da disciplina
TANENBAUM, Andrew S.; BOS, Herbert.
Sistemas Operacionais Modernos. 4. ed. São Paulo: Pearson Education do Brasil, 2016.
Capítulo 2, Seção 2.5: Escalonamento de Processos (pp. 98–110).
SILBERSCHATZ, Abraham; GALVIN, Peter B.; GAGNE, Greg.
Fundamentos de Sistemas Operacionais. 9. ed. Rio de Janeiro: LTC, 2015.
Capítulo 6: Escalonamento de CPU.
CORBATÓ, Fernando J. et al.
An Experimental Time-Sharing System. Proceedings of the AFIPS Spring Joint Computer Conference, 1962.
Pioneirismo em filas multiníveis com quantum exponencial.
FATEC JALES – Prof. Me. Cristiano.
Roteiro para Elaboração da Atividade de Metodologias Ativas (Aula Invertida).
Disciplina de Sistemas Operacionais – ADS, 2026.
Pergunta conceitual de análise técnica – resposta escondida conforme o roteiro
No sistema pioneiro CTSS, processos de computação pesada recebiam fatias de tempo que dobravam a cada nível (1, 2, 4, 8, 16...), enquanto no Round-Robin convencional o quantum é rigorosamente fixo.
Sob o ponto de vista da arquitetura de computadores da época, por que essa progressão exponencial reduzia drasticamente o custo das trocas com o disco sem prejudicar o tempo de resposta dos usuários nos terminais?
Se o escalonador admitir só processos de CPU, o que acontece com os discos?
Por que o processo que usa menos quantum ganha a prioridade mais alta?
Como o SO impede que processos de baixa prioridade morram de fome?