Sistema operacional

Disponível somente no TrabalhosFeitos
  • Páginas : 6 (1344 palavras )
  • Download(s) : 0
  • Publicado : 8 de agosto de 2012
Ler documento completo
Amostra do texto
4. ESCALONAMENTO DE PROCESSOS
Escalonamento de processos é o ato de realizar o chaveamento dos processos ativos, de acordo com regras bem estabelecidas, de forma que todos os processos tenham chance de utilizar a UCP.
O escalonador é a parte do SO encarregada de decidir entre os processos prontos, qual será colocado em execução.
Diferente da idéia de execução de um processo até o término,vamos utilizar o escalonamento preemptivo, ou seja, o SO interrompe um processo em execução e roda o escalonador para decidir qual o próximo processo a ser executado.
Existem várias formas de implementar o escalonamento e estes devem seguir critérios como justiça (cada processo obter sua parte justa do tempo da UCP), eficiência (garantir ocupação de 100% do tempo da UCP), minimizar o tempo deresposta a comandos de usuários interativos, maximizar o número de serviços processados por hora etc. Vejamos algumas forma de implementar:
1. Escalonamento “Round-Robin”: Cada processo recebe um intervalo de tempo (quantum) e se o processo ainda está rodando quando seu quantum terminar (ou se o processo bloqueie ou termine antes de acabar), a UCP é tomada deste processo e o escalonador seleciona umnovo para rodar. O escalonador mantém uma lista de processos executáveis (que estão prontos) e quando o quantum termina sem o processo terminar, o mesmo é colocado no fim dessa lista. O escalonador sempre seleciona o primeiro processo dessa lista para execução. O valor do quantum deve ser escolhido cuidadosamente, se o valor do quantum for muito pequeno, teremos grande parte do tempo de execução daUCP gasta com o processo de chaveamento, e se o valor for muito grande, isto gera um tempo de resposta muito grande para usuários interativos. Processo com muita utilização da UCP devem ganhar maior quantum, para reduzir o número de chaveamento executado nesse processo. O grande problema aqui é o que o SO trata igualmente todos os processos, seja ele de pouca importância ou de grande importância.2. Escalonamento com Prioridade: a prioridade serve para oferecer um tratamento distinto à processos diversos. No instante da criação de um processo ele recebe uma prioridade. E o quando o escalonador tiver que escolher qual processo será executado, escolherá o de mais alta prioridade. Cada vez que o processo é executado, o escalonador decrementa sua prioridade e quando sua prioridade fica abaixode um outro processo pronto, ele é interrompido e o outro processo é executado. Temos duas maneiras de associar prioridades a processos: a) de forma estática: quando a prioridade é associada no momento da criação do processo. Ex: quando se tem uma hierarquia.
b) de forma dinâmica: o escalonador decide o valor da prioridade de acordo com estatísticas sobre a execução deste processo em quantaanteriores. Ex: quando o sistema percebe que um processo efetua muita E/S, o escalonador aumenta sua prioridade (operações de E/S são realizadas independentemente da UCP, pois o processo faz uma chamada para o SO e fica bloqueado e enquanto isso a UCP pode estar alocada a outro processo que efetua cálculos).
Resumo: quanto maior E/S (menor uso do processador), maior prioridade (prioridade = 0).
3.Filas Múltiplas: devemos estabelecer classes de prioridades. Os processos de classes mais altas são escolhidos para execução mais freqüentemente que os de classe mais baixas (recebem um número maior de quanta para processamento). Os processos da classe mais alta existente recebem 1 quantum, a classe abaixo recebe 2, a outra 4 e assim sucessivamente na potência de 2. Quando o processo utiliza todosos quanta que recebeu, ele é abaixado de uma classe (fazendo com que seja escolhido menos freqüentemente, mas execute durante mais tempo). Ex: num processo que necessita de 100 quanta para executar, teremos execuções de 1, 2, 4, 8, 16, 32, 37 (totalizando 100), isto é, ele é selecionado para execução 7 vezes (7 chaveamentos para este processo). Se fosse no método Round-Robin ele seria selecionado...
tracking img