Lista de exercício: Gerência de Processador
Por: Edudh • 19/3/2017 • Trabalho acadêmico • 1.570 Palavras (7 Páginas) • 800 Visualizações
Lista de exercício
Aula 08: Gerência de Processador
Lista de exercício
Aula 08: Gerência de Processador
1°) Relacione Escalonador, Políticas de Escalonamento, Algoritmo de Escalonamento e Dispatcher.
O escalonador é uma rotina do sistema operacional que tem como principal função implementar os critérios da política de escalonamento. Uma política de escalonamento é composta por critérios estabelecidos para determinar qual processo em estado de pronto será escolhido para fazer uso do processador. Existem duas categorias de algoritmos de escalonamento: Não preemptivos – escolhe um processo para executar e então o deixa executar até que seja bloqueado ou até que ele voluntariamente libere a CPU. Preemptivos – escolhe um processo e o deixa em execução por um tempo máximo fixado. O dispatcher é responsável pela troca de contexto dos processos após o escalonador determinar qual processo deve fazer uso do processador.
2°) Indique em que situações o escalonamento de processos é necessário.
Quando um processo é criado, quando um processo termina, quando um processo faz uma operação de I/O e na interrupção de relógio (sistemas preemptivos).
3°) Diferencie os escalonamentos preemptivos e não preemptivos.
Preemptivo permite parar a execução de um processo e iniciar outro.
4°) No escalonamento preemptivo, qual o impacto, para o sistema, de se adotar uma fatia de tempo (quantum, slice) grande? E uma fatia de tempo pequena?
Um valor de quantum grande pode prejudicar a multiprogramação, na medida em que a ocorrência de preempções por tempo é reduzida, favorecendo os processos CPU-bound e prejudicando os processos I/O-bound. Um valor de quantum pequeno ocasionaria um grande overhead ao sistema devido à alta frequência de mudanças de contexto geradas pelas frequentes preempções por tempo. O ideal, portanto, é que a quantum seja bem maior que o tempo gasto em uma troca de contexto, mas ainda assim pequeno o suficiente.
5°) Quais são os objetivos gerais para os algoritmos de escalonamentos?
O algoritmo de escalonamento tem como objetivo: justiça – Cada processo deve receber a sua parte da CPU, Policy enforcement – Respeito às políticas estabelecidas e Equilíbrio – Todas as partes do sistema devem estar operando.
6°) O que significa o objetivo de proporcionalidade para algoritmos de escalonamento de sistemas interativos? Exemplifique.
Proporcionalidade – satisfaz às expectativas dos usuários. Um sistema operacional que executa programas, dando a impressão para o usuário que tudo está sendo realizado ao mesmo tempo.
7°) Diferencie os algoritmos de escalonamentos: FIFO e Round Robin( Circular).
O FIFO é um escalonamento não-preemptivo onde o processo que chegar primeiro ao estado de pronto é o selecionado para execução. Este algoritmo é bastante simples, sendo necessária apenas uma fila, onde os processos que passam para o estado de pronto entram no seu final e são escalonados quando chegam ao seu início. Quando um processo vai para o estado de espera, o primeiro processo da fila de pronto é escalonado. Todos os processos quando saem do estado de espera entram no final da fila de pronto. O Circular é um escalonamento preemptivo, projetado especialmente para sistemas de tempo compartilhado. Esse algoritmo é bastante semelhante ao FIFO, porém, quando um processo passa para o estado de execução, existe um tempo limite para o uso contínuo do processador denominado fatia de tempo (time-slice) ou quantum.
8°) Quais as vantagens e desvantagens do algoritmo de escalonamento SJF (Job mais curto primeiro)?
No escalonamento SJF, o algoritmo de escalonamento seleciona o processo que tiver o menor tempo de processador ainda por executar. Dessa forma, o processo em estado de pronto que necessitar de menos tempo de UCP para terminar seu processamento é selecionado para execução. O emprego deste algoritmo é vantajoso devido à sua simplicidade e também porque maximiza o rendimento do processo. Ele também minimiza a quantidade média de tempo que cada processo tem que esperar até que a sua execução esteja completa. No entanto, ele tem o potencial de starvation para processos que requerem um longo período de tempo, se os processos curtos são continuamente adicionados.
9°) Qual a diferença entre os algoritmos de escalonamento SJF e Próximo de menor tempo restante?
As prioridades são baseadas no processo que tiver o menor tempo de processador e desta forma sempre serão executados nesta ordem. Esta política é preemptiva e está baseado na prioridade de execução.
10°) Qual a diferença entre preempção por tempo e por prioridade?
A preempção por tempo visa interromper os processos baseados no menor tempo de processo, enquanto quando baseado na prioridade visa processar a fila através do nível de prioridade.
11°) Conceitue os seguintes termos:
a) Tempo de processador.
Tempo de processador ou tempo de UCP é o tempo que um processo leva no estado de execução durante seu processamento.
b) Tempo de retorno (turnaround).
Tempo de turnaround é o tempo que um processo leva desde a sua criação até ao seu término, levando em consideração todo o tempo gasto na espera para alocação de memória, espera na fila de pronto (tempo de espera), processamento na UCP (tempo de processador) e na fila de espera, como nas operações de E/S.
c) Tempo de espera.
Tempo de espera é o tempo total que um processo permanece na fila de pronto durante seu processamento, aguardando para ser executado.
d) Tempo de resposta.
Tempo de resposta é o tempo decorrido entre uma requisição ao sistema ou à aplicação e o instante em que a resposta é exibida.
12°) Considere que cinco processos sejam criados no instante de tempo zero (P1 , P2 , P3 , P4 e P5) e possuam as características descritas na tabela a seguir:
Processo Tempo
...