Questões de Processos (Sistemas Operacionais)

Limpar Busca

No que diz respeito a computadores e Sistemas Operacionais, julgue o item.


A gerência de processos é uma das principais funções de um sistema operacional, que envolve a criação, o escalonamento e a terminação de processos.

  • Certo
  • Errado

Em um projeto de desenvolvimento de um sistema operacional voltado para aplicações críticas de tempo real, o analista Jony está avaliando diferentes métodos de Comunicação entre Processos (IPC) para garantir a máxima eficiência, confiabilidade e atendimento aos requisitos de tempo real.

Considerando os desafios associados a esses sistemas, o método de IPC para sistemas de tempo real escolhido por Jony é:

  • A pipes anônimos;
  • B semáforos;
  • C filas de mensagens prioritárias;
  • D memória compartilhada;
  • E sockets de rede.

O analista José está diante de um sistema operacional hipotético que implementa um modelo avançado de gerenciamento de processos. Esse modelo define cinco estados distintos pelos quais um processo pode passar durante seu ciclo de vida, além de incorporar mecanismos sofisticados para o escalonamento e a comunicação entre processos. Considerando esse cenário, José precisa resolver um problema complexo de deadlock que ocorreu devido a uma sequência específica de transições de estado e solicitações de recursos entre quatro processos distintos. Para entender e resolver esse problema, é fundamental que o analista compreenda os conceitos e estados de processo no contexto dos sistemas operacionais.

Para resolver o problema de deadlock, a sequência dos estados de processo e os conceitos que o analista José deve considerar são:

  • A criação (o processo é criado), pronto (aguarda pela alocação do processador), executando (o processo está sendo executado pelo processador), espera/bloqueado (o processo espera por algum evento ou recurso), terminado (o processo conclui sua execução). Deadlocks ocorrem quando processos em estado de espera/bloqueado mantêm recursos que outros processos estão tentando acessar, enquanto simultaneamente tentam acessar recursos mantidos por outros processos, criando um ciclo de dependência sem resolução;
  • B executando (o processo está sendo executado pelo processador), pronto (aguarda pela alocação do processador), espera/bloqueado (o processo espera por algum evento ou recurso), criação (o processo é criado), terminado (o processo conclui sua execução). Deadlocks são resolvidos automaticamente pelo sistema operacional através de preempção regular dos processos;
  • C pronto (aguarda pela alocação do processador), executando (o processo está sendo executado pelo processador), criação (o processo é criado), terminado (o processo conclui sua execução), espera/bloqueado (o processo espera por algum evento ou recurso). Deadlocks não são problemáticos em sistemas que implementam algoritmos de escalonamento baseados em prioridades;
  • D espera/bloqueado (o processo espera por algum evento ou recurso), pronto (aguarda pela alocação do processador), executando (o processo está sendo executado pelo processador), criação (o processo é criado), terminado (o processo conclui sua execução). A detecção de deadlocks requer que o sistema operacional monitore o grafo de alocação de recursos para identificar ciclos de dependência;
  • E terminado (o processo conclui sua execução), espera/bloqueado (o processo espera por algum evento ou recurso), pronto (aguarda pela alocação do processador), executando (o processo está sendo executado pelo processador), criação (o processo é criado). Em sistemas operacionais modernos, mecanismos de comunicação entre processos, como semáforos e monitores, são utilizados para prevenir e resolver deadlocks.

As threads e os processos são conceitos fundamentais em sistemas operacionais e programação concorrente. 

Assinale a opção que descreve uma diferença importante no conceito entre processos e threads, incluindo aspectos de comunicação e sincronização. 

  • A Threads podem compartilhar recursos e memória, enquanto processos têm seus próprios espaços de endereço separados.
  • B Processos são mais eficientes em termos de comunicação e sincronização do que threads.
  • C Threads podem ser distribuídas em diferentes computadores, enquanto processos estão limitados a um único computador.
  • D Processos podem executar em paralelo em diferentes núcleos de CPU, enquanto threads são sempre executadas sequencialmente em um único núcleo.
  • E Threads podem iniciar novos threads, enquanto processos não podem iniciar novos processos.

No contexto da ciência da computação, a chamada Lei de Moore trata 

  • A da redução nas dimensões do computador.
  • B da redução no consumo de energia elétrica pelo computador.
  • C do aumento no tempo de vida da bateria do computador.
  • D do aumento na capacidade da memória do computador.
  • E do aumento na capacidade de processamento do computador.