Академический Документы
Профессиональный Документы
Культура Документы
Contedo
Introduo Funes Bsicas Critrios de Escalonamento Escalonamentos no preemptivos e Preemptivos Escalonamento FIRST-IN-FIRST-OUT (FIFO) Escalonamento Circular Escalonamento por Prioridades Escalonamento Circular com Prioridades Exerccios
Sistemas Operacionais
Introduo
Com o surgimento dos sistemas multiprogramveis, onde mltiplos processos poderiam permanecer na memria principal compartilhando o uso da UCP, a gerncia do processador tornouse 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 critrios para determinar qual processo ser escolhido para fazer uso do processador. Os critrios utilizados para esta seleo compem a chamada poltica de escalonamento, que a base da gerencia do processador e da multiprogramao em um sistema operacional.
Sistemas Operacionais 3
Funes Bsicas
Manter o processador ocupado a maior parte do tempo, Balancear o usa da UCP entre processos, Privilegiar a execuo de aplicaes crticas, Maximizar o throughput do sistema e oferecer tempos de resposta razoveis para usurios interativos. Sistemas de tempo compartilhado, possuem requisitos de escalonamento distintos dos sistemas de tempo real. A rotina do sistema operacional que tem como principal funo implementar os critrios da poltica de escalonamento denominada escalonador (scheduler). Em um sistema multiprogramvel, o escalonador fundamental, pois todo o compartilhamento do processador dependente dessa rotina. Outra rotina importante na gerncia do processador e conhecida como dispatcher, responsvel pela troca de contexto dos processos aps o escalonador determinar qual processo deve fazer uso do processador. O perodo de tempo gasto na substituio de um processo em execuo por outro denominado latncia do dispatcher.
Sistemas Operacionais
Funes Bsicas
Sistemas Operacionais
Critrios de Escalonamento
Sistemas de tempo compartilhado exigem que o escalonamento trate todos os processos de forma igual, evitando, assim, a ocorrncia de starvation, ou seja, que um processo fique indefinidamente esperando pela utiliza ao do processador. J em sistemas de tempo real, o escalonamento deve priorizar a execuo de processos crticos em detrimento da execuo de outros processos. Critrios para a poltica de escalonamento: Utilizao do Processador: Na maioria dos sistemas, desejvel que o processador permanea ocupado a maior parte do seu tempo. Uma utiliza ao na faixa de 30% indica um sistema com uma carga de processamento baixa, enquanto que na faixa de 90% indica um sistema bastante carregado, prximo da sua capacidade mxima. Throughput: Representa o nmero de processos executados em um determinado intervalo de tempo. Quanto maior o throughput, maior o nmero de tarefas executadas em funo do tempo.
Sistemas Operacionais 6
Critrios de Escalonamento
Tempo de Processador / Tempo de UCP: Tempo de processador ou tempo de UCP o tempo que um processo leva no estado de execuo durante seu processamento. As polticas de escalonamento no influenciam o tempo de processador de um processo, sendo este tempo funo apenas do cdigo da aplicao e da entrada de dados. Tempo de Espera: Tempo de espera o tempo total que um processo permanece na fila de pronto durante seu processamento, aguardando para ser executado. A reduo do tempo de espera dos processos e desejada pela maioria das polticas de escalonamento. Tempo de Turnaround: Tempo de turnaround o tempo que um processo leva desde a sua criao ate ao seu termino, levando em considerao todo o tempo gasto na espera para alocao de memria, espera na fila de pronto (tempo de espera), processamento na UCP (tempo de processador) e na fila de espera, como nas operaes de E/S. As polticas de escalonamento buscam minimizar o tempo de turnaround.
Sistemas Operacionais 7
Sistemas Operacionais
Sistemas Operacionais
10
Escalonamento Circular
O escalonamento circular (round robin scheduling) um escalonamento do tipo preemptivo, projetado especialmente para sistemas de tempo compartilhado. Esse algoritmo bastante semelhante ao FIFO; porm, quando um processo passa para o estado de execuo, existe um tempo limite para o uso continuo do processador denominado fatia de tempo (time-slice) ou quantum. No escalonamento circular, toda vez que um processo escalonado para execuo, uma nova fatia de tempo concedida. Caso a fatia de tempo expire, o sistema operacional interrompe o processo em execuo, salva seu contexto e direciona-o para o final da fila de pronto. Esse mecanismo conhecido como preempo por tempo.
Sistemas Operacionais
11
Escalonamento Circular
A fila de processos em estado de pronto tratada como uma fila circular. O escalonamento realizado alocando a UCP ao primeiro processo da fila de pronto. O processo permanece no estado de execuo at que termine seu processamento, voluntariamente passe para o estado de espera, ou que sua fatia de tempo expire, sofrendo, neste caso, uma preempo pelo sistema operacional. Aps isso, um novo processo escalonado com base na poltica de FIFO.
Sistemas Operacionais
12
Escalonamento Circular
A principal vantagem do escalonamento circular no permitir que um processo monopolize a UCP, sendo o tempo mximo alocado continuamente igual fatia de tempo definido no sistema. No caso de sistemas de tempo compartilhado, onde existem diversos processos interativos concorrendo pelo uso do processador, o escalonamento circular adequado. Um problema presente nessa poltica que processos CPU-bound so beneficiados no uso do processador em relao aos processos I/Obound. Devido s suas caractersticas, os processos CPUbound tendem a utilizar por completo a fatia de tempo, enquanto os processos I/O-bound tem mais chances de passar para o estado de espera antes de sofrerem preempo por tempo. Estas caractersticas distintas ocasionam um balanceamento desigual no uso do processador entre os processos.
Sistemas Operacionais
13
Sistemas Operacionais
16
Exerccios
1) A partir do momento que um processo est em execuo, este voluntariamente libera o processador, retornando para a fila de pronto. Sua principal caracterstica est no fato da liberao do processador ser uma tarefa realizada exclusivamente pelo processo em execuo. O texto acima se refere a qual tipo de escalonamento ? a)FIFO b)Circular c)Cooperativo d)Por prioridades
3) Neste algoritmo, quando um processo passa para o estado de execuo, existe um tempo limite para a sua utilizao de forma continua. Quando este tempo, denominado time-slice ou quantum, expira sem que antes a CPU seja liberada pelo processo, este volta ao estado de pronto (preempo), dando a vez a outro processo. O texto acima refere-se a qual tipo de escalonamento ? a)FIFO b)Circular c)Cooperativo d)Por prioridades
Sistemas Operacionais
17
Exerccios
4) Sabe-se que o sistema operacional GNU/Linux trabalha com compartilhamento de tempo, dando a impresso de estar executando simultaneamente mais de uma tarefa, mesmo em arquiteturas monoprocessadas. Quem decide qual processo dever ser executado pela CPU em cada frao de tempo ? a)Compartilhador de Processos c)Escalonador de Processos b)Interface de Processos d)Gerenciador de Pacotes
5) Que tipo de escalonamento aplicaes de tempo real exigem? a)Throughput b)FIFO c) Escalonamento por prioridades d) Preempo por tempo
6) Assinale a alternativa que melhor define escalonamento no-preemptivo : a-) Cada processo executado durante uma fatia de tempo (time-slice). b-) Quando processador pode ser retirado do processo que est executando. c-)So processos mais prioritrios (tempo real), melhores tempos de resposta (tempo compartilhado), compartilhamento uniforme do processador. d-) Processo que est sendo executado e no pode ser interrompido.
Sistemas Operacionais 18
Exerccios
7) Assinale a alternativa que melhor conceitue Throughput dentro dos critrios de escalonamento. a) Tempo que um processo leva desde sua admisso no sistema at o seu trmino, levando em considerao o tempo de espera para alocao de memria, espera na fila de processos prontos para execuo, processamento na UCP e operaes de E/S. b) Tempo de resposta decorrido do momento da submisso de um pedido at a primeira resposta produzida. c) Representa o nmero de processos (tarefas) executados em um intervalo de tempo d) o instante que o processador fique a maior parte do tempo ocupado 8) O que poltica de escalonamento de processos de um sistema operacional? 9) Qual a diferena entre os escalonamentos FIFO e circular?
Sistemas Operacionais
19