Pesquisar este blog

sexta-feira, 27 de janeiro de 2012

Os processos no sistema operacional que possuem um timer, chamado de quantum, onde todos os processos ganham o mesmo valor de quantum para rodarem na CPU, caracterizam o escalonamento de processos do tipo

Resposta: RR – Round-Robin.




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.
Todos os algoritmos classificam os processos em estados: Iniciando, Pronto, Executando, Entrada/ Saída e Terminado.



Comentário
O Escalonamento permite que o Sistema Operacional faça o compartilhamento do CPU entre os os processos.
Os principais algoritmos de escolamento são os citados na questão.
Mapas Mentais
Mapa mental dos algoritmos de escalonamento


E agora o mapa mental do principal algoritmo de escalonamento – Roud-Robin. Neste algoritmo duas informações importantíssimas: Fatia de tempo (Timeslice/Quantum) e Preemptivo.




Escalonamento (Scheduling)
A decisão de qual o próximo processo deve ser executado é chamado escalonamento (scheduling) , e pode ser feito em uma grande variedade de maneiras.
Escalonadores por cooperação geralmente são muito simples, já que os processos são organizados em fila circular (ROUND ROBIN). Quando um processo corrente se deixa, vai para o fim da fila. O processo no topo da fila é então executado, e todos os processos se movimentam um lugar para cima na fila. Isso provê uma medida justa, mas não impede que um processo monopolize o sistema (não se deixando).
Escalonadores preemptivos usam um relógio em tempo real que gera interrupção a intervalos regulares (digamos, a cada 1/100 de um segundo). Cada vez que  uma interrupção ocorre, o processador muda para outra tarefa. Sistemas que geralmente empregam esse tipo de escalonamento atribuem prioridades a cada processo, de forma que alguns podem ser executados mais freqüentemente que outros.
 

Nenhum comentário:

Postar um comentário