sistema operacional
Gerência de Processador
Prof. Edwar Saliba Júnior
Junho de 2009
Unidade 03 - 003 – Gerência de Processador
1
Fundamentos de Sistemas Operacionais
Introdução
• Com o surgimento dos sistemas multiprogramáveis, onde múltiplos processos poderiam permanecer na memória principal compartilhando o uso da CPU, a gerência do processador tornou-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.
Unidade 03 - 003 – Gerência de Processador
2
Fundamentos de Sistemas Operacionais
Escalonamento de Processos
Unidade 03 - 003 – Gerência de Processador
3
Fundamentos de Sistemas Operacionais
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 respostas razoáveis para usuários interativos.
Unidade 03 - 003 – Gerência de Processador
4
Fundamentos de Sistemas Operacionais
Considerações
• A política de escalonamento varia de acordo com o propósito do sistema operacional (Sistemas de Tempo Real x Sistemas de
Tempo Compartilhado x Sistemas Batch);
• O escalonador (scheduler) implementa a política de escalonamento; • Dispatcher: rotina que realiza a troca do processo em execução após a decisão do escalonador;
• Latência do dispatcher: tempo gasto para a troca de processos;
• Em ambientes multithread, a unidade escalonada é a thread
(somente as que estiverem no estado “pronto”);
• Para simplificar o entendimento, chamamos sempre a