Pesquisar este blog

sexta-feira, 3 de fevereiro de 2012

Arquitetura de Computadores12 - Escalonamento

O escalonamento de tarefas é uma atividade de processamento realizada pela CPU de um computador. Esta atividade permite executar de forma mais eficiente os processos considerados prioritários para o sistema operacional. Assinale a alternativa que apresenta o escalonamento de tarefas em um computador, utilizado como servidor de arquivos de uma rede.
  •  a) O escalonamento garantido busca atender a demanda da rede, priorizando ações de leitura e escrita em arquivos e banco de dados.
  •  b) O algoritmo de escalonamento FIFO (First In, First Out) atua na gravação de arquivos em disco, implementando o conceito de pilha de escalonamento.
  •  c) Os algoritmos de escalonamento preemptivos devem permitir que um processo seja interrompido durante sua execução.
  •  d) O algoritmo de escalonamento de múltiplas filas permite o acesso simultâneo a arquivos e banco de dados disponibilizados na rede.
  •  e) O escalonador de longo prazo seleciona os processos na interface de rede, dando prioridade às ações de I/O (Input/Output).

--------------------------------------------------------------

Algoritmos escalonadores



Existem os algoritmos preemptivos e os não preemptivos. Os preemptivos são algoritmos que permitem que um processo seja interrompido durante sua execução, quer seja por força de uma interrupção de entrada/saída, quer seja em decorrência da politica de escalonamento adotada e aplicada por parte do escalonador de processos ou simplesmente por força do término da execução do processo. Após a interrupção deste processo, ocorre o que se chama de troca de contexto, que consiste em salvar o conteúdo dos registradores e a memoria utilizada pelo processo e conceder à outro processo o privilégio de executar na CPU, restaurando assim o contexto deste ultimo processo. Cabe ressaltar que nos algoritmos não preemptivos, por serem utilizados exclusivamente em sistemas monoprocessados, esse fato não ocorre, sendo cada programa executado até o fim.


Exemplos de Algoritmos:
  • FIFO (First in, first out) ou FCFS (First come, first served): Onde como seu próprio nome já diz, o primeiro que chega será o primeiro a ser executado;

  • SJF (Shortest Job First): Onde o menor processo ganhará a CPU e atrás do mesmo formar uma fila de processos por ordem crescente de tempo de execução;

  • SRT (Shortest Remaining Time): Neste algoritmo é escolhido o processo que possua o menor tempo restante, mesmo que esse processo chegue à metade de uma operação, se o processo novo for menor ele será executado primeiro;

  • Algoritmo Loteria: O Sistema Operacional distribui tokens (fichas), numerados entre os processos, para o escalonamento é sorteado um numero aleatório para que o processo ganhe a vez na CPU, processos com mais tokens têm mais chance de receber antes a CPU.

  • RR (Round-Robin): Nesse escalonamento o sistema operacional possui um timer, chamado de quantum, onde todos os processos ganham o mesmo valor de quantum para rodarem na CPU. Com exceção do algoritmo RR e escalonamento garantido, todos os outros sofrem do problema de Inanição (starvation).
  • Múltiplas Filas: São usadas várias filas de processos prontos para executar, cada processo e colocado em uma fila, e cada fila tem uma política de escalonamento própria e outra entre filas.

Primeiramente, o responsável pelo escalonamento é o S.O. e não a CPU. A CPU é responsável pela preempção do processo. Este  erro entretanto é irrelevante para a resolução da questão



    a) O escalonamento garantido busca atender a demanda da rede, priorizando ações de leitura e escrita em arquivos e banco de dados. (Escalonamento visa minimizar o tempo de resposta e maximizar o throughput)

    b) O algoritmo de escalonamento FIFO (First In, First Out) atua na gravação de arquivos em disco, implementando o conceito de pilha Fila de escalonamento.

    c) Os algoritmos de escalonamento preemptivos devem permitir que um processo seja interrompido durante sua execução. (correto)

    d) O algoritmo de escalonamento de múltiplas filas permite o acesso simultâneo a arquivos e banco de dados disponibilizados na rede. (Algoritmos de multiplas filas permitem vários níveis de prioridade evitando o starvation)

    e) O escalonador de longo prazo seleciona os processos na interface de rede, dando prioridade às ações de I/O (Input/Output). (Essa afirmação não tem sentido algum)

Nenhum comentário:

Postar um comentário