As propriedades de cada sistema operacional determinam quais são os principais aspectos para a implementação de uma política de escalonamento adequada. A política de escalonamento classificada como preemptiva tem a seguinte característica:
- A)sistemas operacionais que implementam escalonamento com preempção são mais simples, contudo, possibilitam políticas de escalonamento menos flexíveis;
Errada, porque escalonamento com preempção nao e mais simples; em geral, ele e mais complexo, embora mais flexivel.
- B)foi a primeira política de escalonamento implementada nos sistemas monoprogramáveis, onde predominava tipicamente o processamento batch;
Errada, porque sistemas monoprogramaveis e batch nao sao a referencia de preempção, que se associa a sistemas multitarefa e interativos.
- C)quando um processo está em execução, nenhum evento externo pode ocasionar a perda do uso do processador;
Errada, porque essa afirmacao descreve justamente a ausencia de preempção, ja que nenhum evento externo poderia retirar a CPU do processo.
- D)o processo sai do estado de execução caso termine seu processamento ou execute instruções do próprio código que ocasionem uma mudança para o estado de espera;
Errada, porque fala de saida voluntaria da CPU por termino ou bloqueio, caracteristica de escalonamento nao preemptivo.
- E)o sistema operacional pode interromper um processo em execução e passá-lo para o estado de pronto, com o objetivo de alocar outro processo na UCP.
Certa, porque o sistema operacional pode interromper um processo em execucao e leva-lo ao estado de pronto para dar a CPU a outro.
Gabarito: E
Em escalonamento preemptivo, o sistema operacional pode tirar a CPU de um processo que estava executando e entregá-la a outro, conforme a política adotada. Isso acontece, por exemplo, por interrupcao de tempo, prioridade maior de outro processo ou necessidade de atender melhor ao sistema. Em outras palavras: o processo nao fica “doninho” da UCP ate acabar, porque o SO pode interromper sua execucao e recoloca-lo na fila de prontos. Esse modelo costuma ser mais flexivel e mais eficiente para ambientes interativos, porque melhora a resposta do sistema e evita que um unico processo monopolize o processador. A contrapartida e que ele exige mais controle do sistema operacional, com maior complexidade de implementacao e de sincronizacao. Por isso, a alternativa E esta correta: ela descreve exatamente a ideia de preempcao, isto e, o SO interrompe um processo em execucao e o transfere para o estado de pronto para alocar a UCP a outro processo. Doutrinariamente, isso diferencia escalonamento preemptivo do nao preemptivo, no qual o processo so perde a CPU por termino ou bloqueio voluntario. Guarde a imagem mental: no preemptivo, o SO “bate no ombro” do processo e diz “sai um pouco, agora e a vez de outro”. No nao preemptivo, ele espera o processo sair por vontade propria ou por terminar.