SISTEMAS OPERACIOAIS CAP 8
8.1. INTRODUÇÃO
Com o surgimento dos sistemas multiprogramáveis, onde múltiplos processos poderiam permanecer na memória principal compartilhando o uso da UCP, a Gerência do Processador tomou-se uma das atividades mais importantes em um Sistema Operacional. A partir do momento em que diversos processos podem estar no estado de pronto, devem ser estabelecidos critérios para determinar qual processo será escolhido para fazer uso do processador. Os critérios utilizados para esta seleção compõem a chamada Política de Escalonamento, que é a base da Gerência do Processador e da multiprogramação em um Sistema Operacional.
Neste capítulo serão abordadas as funções básicas do escalonamento, políticas e algoritmos, e descritos os mecanismos implementados na Gerência do Processador.
8.2. FUNÇÕES BÁSICAS
A Política de Escalonamento de um Sistema Operacional possui diversas funções básicas, como a de manter o processador ocupado a maior parte do tempo, balancear o uso da UCP entre processos, privilegiar a execução de aplicações críticas, maximizar o “throughput” do sistema e oferecer tempos de resposta razoáveis para usuários interativos. Cada Sistema Operacional possui sua política de escalonamento adequada ao seu propósito e às suas características. Sistemas de tempo compartilhado, por exemplo, possui requisitos de escalonamento distinto dos sistemas de tempo real.
Figura 8.1 Escalonamento
A rotina do Sistema Operacional que tem como principal função implementar os critérios da política de escalonamento é denominada escalonador (scheduler). Em um sistema multiprogramável, o escalonador é fundamental, pois todo o compartilhamento do processador é dependente dessa rotina.
Outra rotina importante na gerência do processador é conhecida como “dispatcher”, responsável pela troca de contexto dos processos após o escalonador determinar qual processo deve fazer uso do processador. O período de tempo gasto na substituição de um