Um sistema operacional é parte integrante do funcionamento de um computador e essencial ao seu trabalho. Sistemas operacionais se diferenciam de aplicações comuns por diversos fatores. Assinale a alternativa que indica como as rotinas são executadas em um sistema operacional moderno, como, por exemplo, o Linux ou o Windows.
Questão
Um sistema operacional é parte integrante do funcionamento de um computador e essencial ao seu trabalho. Sistemas operacionais se diferenciam de aplicações comuns por diversos fatores. Assinale a alternativa que indica como as rotinas são executadas em um sistema operacional moderno, como, por exemplo, o Linux ou o Windows.
Alternativas
a) As rotinas de um sistema operacional são executadas de forma paralela em função de eventos lineares.
b) As rotinas de um sistema operacional são executadas de forma concorrente em função de eventos que podem ocorrer a qualquer momento.
c) As rotinas de um sistema operacional são executadas de forma linear em função do tempo que os eventos ocorrem.
d) As rotinas de um sistema operacional são executadas de forma sequencial em função de eventos que podem ocorrer a qualquer momento.
e) As rotinas de um sistema operacional são executadas de forma sequencial em função do tempo, com início, meio e fim.
Explicação
Em sistemas operacionais modernos (Linux, Windows etc.), várias atividades precisam “progredir” ao mesmo tempo: escalonamento de processos/threads, tratamento de interrupções de hardware, execução de chamadas de sistema, rotinas de drivers, serviços em background, entre outras.
-
Eventos podem ocorrer a qualquer momento: por exemplo, uma interrupção de teclado, a chegada de um pacote de rede, o término de uma operação de disco, o disparo de um timer, ou a requisição de um processo para acessar um recurso.
-
Para responder a esses eventos e manter diversos programas e serviços funcionando, o SO trabalha com concorrência: há múltiplas rotinas/fluxos de execução “em andamento” (processos/threads e rotinas do kernel), com o CPU alternando entre eles via escalonamento e preempção, e/ou usando múltiplos núcleos quando disponíveis.
-
Por isso, não faz sentido dizer que as rotinas do SO são principalmente lineares ou sequenciais (como nas alternativas c, d e e). E a alternativa (a) é conceitualmente inadequada ao falar em “eventos lineares” e “paralelo” como regra geral; o ponto central é a concorrência orientada a eventos assíncronos.
Logo, a melhor descrição é que as rotinas são executadas de forma concorrente, reagindo a eventos que podem ocorrer a qualquer momento.
Alternativa correta: (b).