EscalonamentodeCPU
1437 palavras
6 páginas
Escalonamento de CPU (i)Material parcialmente em: Notas sobre Sistemas Operacionais, 2004 (Autor: Peter Jandl Jr.)
** Autorização do autor gentilmente cedida à FATEC - Americana
Conceitos Básicos e Definições
O escalonamento é a forma como os processadores existentes num sistema computacional são utilizados para efetuar o processamento, isto é, como os processos são distribuídos para execução nos processadores. A decisão de qual processo executar em que momento é feita por rotinas do sistema operacional, chamadas de escalonamento do processador, que seguem vários algoritmos. O escalonador é a parte do SO composta por rotinas de seleção dos processos.
Tanenbaum propõe a seguinte definição: "Quando mais de um processo é executável, o sistema operacional deve decidir qual será executado primeiro. A parte do sistema operacional dedicada a esta decisão é chamada de 'escalonador' (scheduler), e o algoritmo utilizado é chamado 'algoritmo de escalonamento' (scheduling algorithm)" (Tanenbaum, 1992). Simplificando, podemos afirmar que num sistema onde só exista um único processador, o escalonamento representa a ordem em que os processos serão executados. A forma com que se dá o escalonamento é, em grande parte, responsável pela produtividade e eficiência atingidas por um sistema computacional. Mais do que um simples mecanismo, o escalonamento deve representar uma politica de tratamento dos processos que permita obter os melhores resultados possíveis.
O projeto de um escalonador adequado deve levar em conta uma série de diferentes necessidades, ou seja, o projeto de uma política de escalonamento deve contemplar os seguintes objetivos: • Ser justo: todos os processos devem ser tratados igualmente, tendo possibilidades idênticas de uso do processador, devendo ser evitado o adiamento indefinido;
• Maximizar a produtividade (throughput): procurar maximizar o número de tarefas processadas por unidade de tempo;
• Ser previsível: uma tarefa deveria ser sempre executada