No que se refere aos sistemas operacionais, julgue os itens ...
Em um algoritmo de escalonamento FIFO, os processos são executados na mesma ordem que chegam à fila. Quando um processo do tipo cpu-bound está na frente da fila, todos os processos devem esperá-lo terminar seu ciclo de processador.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - certo
O gabarito é certo, e para compreender por que essa afirmação é verdadeira, é importante que você esteja familiarizado com os conceitos de algoritmo de escalonamento FIFO (First In, First Out) e o termo cpu-bound.
O algoritmo FIFO é um dos métodos mais simples para escalonamento de processos em um sistema operacional. Nele, os processos são atendidos na ordem em que chegam, sem outros critérios de prioridade. Imagine uma fila de supermercado: o primeiro cliente que chega é o primeiro a ser atendido, e os demais esperam até que seja a sua vez.
Quando um processo cpu-bound (ou seja, um processo que faz uso intensivo da CPU) está na frente dessa fila de processos, ele vai ocupar a CPU até completar o seu ciclo de processamento. Durante esse tempo, os demais processos têm de esperar, mesmo que sejam processos io-bound (que demandam mais operações de entrada/saída e menos uso da CPU).
A questão aborda a característica essencial do FIFO: a execução sequencial e ordenada dos processos, independentemente de suas demandas específicas por CPU ou I/O. Assim, a afirmação de que todos os processos devem esperar um processo do tipo cpu-bound terminar seu ciclo de processador quando este está na frente da fila é correta. Isso reflete o comportamento esperado do algoritmo FIFO, onde a ordem de chegada é o único critério usado para determinar a ordem de execução dos processos.
Espero que essa explicação tenha ajudado a esclarecer como o algoritmo FIFO opera e por que a afirmação dada na questão é verdadeira. Lembre-se sempre de associar o conceito de FIFO com a ideia de uma fila onde o primeiro a chegar é o primeiro a ser servido, independentemente de suas necessidades específicas de processamento.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Segundo pesquisa no Wikipedia - "Sei que não é uma fonte tão confiável"
Em ciência da computação CPU Bound é quando o tempo de processamento depende mais do processador do que das entradas e saídas.
Segundo Tanenbaum CPU-Bound são limitados pela CPU, isto é, muito processamento com pouca E/S
Uma característica desse algoritmo é o fato de que a CPU é atribuida aos processos na ordem em que eles a requisitam. A importância da tarefa não é considerada. Não interessa qual processo está na frente da fila. Todos devem esperá-lo terminar. O problema é que jobs curtos esperam muito e os jobs IO Bound entram várias vezes no fim da fila.
Olá! Ainda estou em dúvida com relação ao gabarito dessa questão.
No livro do Tanenbaum, ele diz basicamente o contrário disso.
Tanenbaum, no livro "Sistemas Operacionais Modernos", 2ª edição, o chama de FCFS - First Come, First Served.
Ele separa em FCFS não preemptivo e preemptivo.
Se o FCFS incluir a preempção para processos CPU-Bound, não há muito atraso para executá-los.
Mas se não há preempção alguma, portanto não há qualquer tipo de forma de priorizar um processo,
um processo CPU-Bound, compartilhando a CPU com vários outros processos I/O-Bound, será prejudicado.
Dessa forma, acho que a questão é anulável, pois o FIFO básico não dá prioridade a ninguém.
A questão deveria ao menos citar a preempção para torná-la correta.
Alguém sabe de uma fonte que contemple com a posição do Cespe ?
Amigos, o foco da questão está no algorítimo de escalonamento. O FIFO diz que a ordem de execução será a ordem de chegada à fila de processamento. No entanto, é provado matematicamente, que há casos em que invertendo-se a ordem de processamento temos um tempo de resposta ao usuário melhor. A questão quer saber se você domina sobre como o FIFO funciona: "devem esperá-lo terminar seu ciclo de processador". Sim!!! No FIFO os outros processos vão esperar o ciclo, sim! Um de cada vez. Digo isso porque em outro algorítimo isso não acontece, necessariamente. Mas no FIFO sim! Mesmo com processos cpu-bound, que são processos que usam muito processamento. Espero ter ajudado, abraços!
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo