Questão de Sistemas Operacionais — Gerência do Processador — Quadrix 2023
- Código
- qg024547
- Banca
- Quadrix
- Órgão
- COFFITO
- Ano
- 2023
- Nível
- Superior
- Cargo
- Analista de Tecnologia da Informação
- CCerto
- EErrado
GabaritoE — Errado
Gabarito: ERRADO (alternativa E). O gerenciamento de processos não se limita a alocar recursos físicos; ele abrange a criação e término de processos, o escalonamento (escolha de qual processo usa a CPU), a sincronização, a comunicação entre processos (IPC) e o gerenciamento do estado de cada processo. A afirmação do enunciado é uma visão reducionista, pois o gerenciamento de processos é uma das principais funções do sistema operacional, responsável por distribuir a capacidade de processamento de forma justa entre as aplicações, respeitando prioridades e fornecendo abstrações para sincronização e comunicação.
O gerenciamento de processos é uma das funcionalidades centrais de um sistema operacional. Ele não se restringe a "alocar recursos físicos" — essa é apenas uma parte do trabalho. A gerência de processos, também chamada de gerência do processador ou gerência de tarefas, visa distribuir a capacidade de processamento de forma justa entre as aplicações, evitando que uma aplicação monopolize esse recurso e respeitando as prioridades definidas pelos usuários. Além disso, o sistema operacional provê a ilusão de que existe um processador independente para cada tarefa, o que facilita o trabalho dos programadores e permite a construção de sistemas mais interativos.
Para entender por que a afirmação está errada, é preciso compreender o que um sistema operacional faz. Ele gerencia recursos de hardware (CPU, memória, dispositivos de E/S) e fornece um ambiente de execução abstrato para os aplicativos. O gerenciamento de processos é uma das frentes dessa gerência, mas não a única — há também a gerência de memória, a gerência de dispositivos e a gerência de arquivos. Cada uma dessas frentes tem suas particularidades e exige mecanismos específicos.
No contexto do Linux, o gerenciamento de processos envolve estruturas como o descritor de processo (task_struct), que contém todas as informações relativas ao processo, e a fila de processos prontos (runqueue). O escalonador é o componente responsável por escolher qual processo ou thread será executado em seguida, com base em políticas de escalonamento que consideram prioridades, responsividade e uso de CPU versus E/S. Além disso, o Linux trata processos e threads como entidades executáveis e oferece mecanismos de sincronização e comunicação entre processos (IPC), como pipes, memória compartilhada e troca de mensagens.
A pegadinha desta questão está na palavra "apenas". O enunciado afirma que o gerenciamento de processos é responsável apenas por alocar recursos físicos aos processos em execução. Isso é falso porque o gerenciamento de processos vai muito além da alocação de recursos físicos: inclui a criação e destruição de processos, o escalonamento, a sincronização, a comunicação entre processos e o gerenciamento do estado de cada processo. A alocação de recursos físicos é uma parte do trabalho, mas não a única.
Para fixar: o gerenciamento de processos é uma função abrangente que envolve todo o ciclo de vida do processo, desde a criação até a terminação, passando pelo escalonamento e pela comunicação. A alocação de recursos físicos é apenas um dos aspectos, e mesmo essa alocação não se restringe a recursos físicos — envolve também recursos lógicos, como descritores de arquivos e sinais.
A afirmação está errada porque o gerenciamento de processos não se limita a alocar recursos físicos. Ele é responsável por:
Criação e término de processos: o sistema operacional cria processos (via chamadas de sistema como fork() e clone() no Linux) e os encerra quando necessário.
Escalonamento: decide qual processo ou thread será executado em seguida, com base em políticas de prioridade e justiça.
Sincronização: fornece mecanismos para que processos cooperem sem conflitos (semáforos, mutexes, etc.).
Comunicação entre processos (IPC): permite que processos troquem dados (pipes, memória compartilhada, sockets, etc.).
Gerenciamento de estado: controla as transições entre os estados de um processo (pronto, executando, bloqueado, etc.).
A alocação de recursos físicos (como CPU e memória) é apenas uma parte do trabalho, e mesmo essa alocação é feita em conjunto com outras funcionalidades do sistema operacional, como a gerência de memória. Portanto, a afirmação é incorreta.
Gabarito: ERRADO (alternativa E).
Link permanente: /questoes/qg024547