WorksheetsQZ SO Unidade II
Total questions: 26
Worksheet time: 13mins
Qual é a função principal do Process Control Block (PCB)?
Alocar espaço em disco para novos programas.
Garantir acesso direto do processo ao hardware da CPU.
Manter todas as informações de contexto de hardware e software de um processo.
Implementar automaticamente threads em sistemas operacionais concorrentes.
Criar listas encadeadas de processos autônomos e independentes em execução.
Qual informação faz parte do contexto de software de um processo?
O endereço da próxima instrução a ser executada pela CPU.
As quotas de recursos que podem ser utilizadas pelo processo.
A lista de registradores gerais salvos no hardware do sistema.
O espaço físico de memória ocupado pelo programa compilado.
O tempo de resposta médio medido pelo escalonador de tarefas.
Qual situação caracteriza um processo I/O-bound?
Passa a maior parte do tempo utilizando intensivamente a CPU.
Executa cálculos complexos sem necessidade de entrada e saída.
Permanece frequentemente no estado de espera aguardando E/S.
É eliminado automaticamente após consumir toda a memória.
É escalonado antes dos processos de maior prioridade.
O que diferencia processos foreground de background?
Foreground permite interação direta com o usuário, enquanto background não.
Foreground sempre executa em prioridade máxima, background em prioridade mínima.
Foreground é exclusivo de sistemas monousuário, background de sistemas multiusuário.
Foreground utiliza apenas CPU, background apenas dispositivos de entrada e saída.
Foreground exige múltiplos processadores, background apenas um núcleo.
Qual elemento é responsável por armazenar todas as informações de um processo ativo no sistema?
Kernel Scheduler.
Program Counter.
Process Control Block.
Memory Manager.
Dispatcher Table.
Quando um processo passa do estado de execução para pronto?
Ao solicitar uma operação de entrada/saída.
Ao término da fatia de tempo determinada pelo escalonador.
Ao receber um sinal de finalização enviado por outro processo.
Ao realizar operações em memória secundária.
Ao criar uma nova thread dentro do processo.
Qual exemplo representa um processo em background?
Um editor de texto com interação direta do usuário.
Um servidor de e-mail que processa mensagens sem interação.
Um navegador web exibindo uma página dinâmica.
Um compilador exibindo erros no terminal.
Um programa de planilha aguardando entrada de dados.
Qual exemplo representa um processo CPU-bound?
Servidor de banco de dados aguardando conexões.
Aplicação científica realizando cálculos intensivos.
Sistema de correio eletrônico recebendo mensagens.
Editor de texto esperando digitação do usuário.
Navegador web carregando páginas da internet.
O que diferencia o estado “espera” do estado “pronto”?
Em espera, o processo aguarda evento externo; em pronto, aguarda apenas a CPU.
Em espera, o processo sempre utiliza a CPU; em pronto, nunca.
Em pronto, o processo é finalizado automaticamente; em espera, não.
Em pronto, o processo só pode ser eliminado; em espera, só pode ser escalonado.
O que representa a “morte” de um processo?
A mudança definitiva para o estado de espera.
O término normal ou forçado de sua execução.
A eliminação automática pelo processador da CPU.
O bloqueio permanente em uma região crítica.
O congelamento do PCB pelo sistema operacional.
Qual é o destino dos recursos de um processo após sua morte?
São liberados para uso por outros processos.
São armazenados em uma tabela permanente de kernel.
São repassados para subprocessos ativos.
Permanecem bloqueados até reinicialização do sistema.
São copiados para o espaço de endereçamento do pai.
Qual estrutura de dados armazena informações sobre cada thread em execução?
Process Control Block (PCB).
Contexto de Software.
Thread Control Block (TCB).
Escalonador de Processos.
Registrador de Instruções.
Qual papel o Thread Control Block (TCB) desempenha?
Controlar a execução de subprocessos de um processo pai.
Armazenar contexto de hardware e estado de execução de uma thread.
Manter todas as informações de software de um processo.
Gerenciar diretamente interrupções geradas pelo processador.
Implementar automaticamente exclusão mútua entre processos.
Por que ambientes multithread apresentam menor sobrecarga que ambientes monothread?
Porque cada thread possui seu próprio espaço de endereçamento isolado.
Porque a criação de threads requer menos recursos que a de processos.
Porque threads eliminam totalmente a necessidade de escalonamento.
Porque processos em ambientes multithread não usam memória principal.
Porque a comunicação entre processos é sempre mais rápida que entre threads.
Qual é uma das principais vantagens do uso de threads em aplicações cliente-servidor?
Permitem que várias requisições sejam atendidas simultaneamente.
Substituem completamente os processos independentes.
Eliminam a necessidade de memória compartilhada.
Reduzem automaticamente a complexidade de programação.
Evitam a necessidade de sincronização em sistemas concorrentes.
Por que threads são considerados mais leves que processos?
Porque não utilizam PCB.
Porque compartilham recursos dentro de um mesmo processo.
Porque não precisam de registradores individuais.
Porque eliminam a necessidade de escalonamento.
Porque sempre executam em tempo real.
Qual é o principal objetivo da exclusão mútua?
Permitir que todos os processos acessem simultaneamente um recurso compartilhado.
Garantir que apenas um processo utilize a região crítica por vez, evitando inconsistências.
Aumentar a velocidade de execução ao dividir recursos igualmente entre todos os processos.
Implementar filas circulares para reduzir o tempo de espera do processador.
Bloquear permanentemente os processos que concorrem pelo mesmo recurso.
Qual mecanismo de sincronização evita o uso simultâneo de um recurso por mais de um processo?
Sincronização condicional.
Comunicação por mensagens.
Exclusão mútua.
Escalonamento preemptivo.
Tratamento de sinais.
No problema do produtor-consumidor, qual condição deve ser satisfeita para o consumidor ler do buffer?
O buffer deve estar sempre cheio antes de qualquer leitura.
O buffer deve conter pelo menos um item disponível.
O produtor deve liberar o semáforo binário antes da leitura.
O consumidor deve executar a operação UP antes de ler.
O escalonador deve forçar o produtor a liberar o processador.
Qual é o risco de não haver mecanismos de sincronização em sistemas concorrentes?
O processador deixa de executar múltiplos programas.
Os recursos de entrada e saída ficam permanentemente bloqueados.
Podem ocorrer inconsistências nos dados compartilhados.
O sistema não permite criação de novos processos.
A memória principal é liberada indevidamente.
Qual situação representa o problema de starvation?
Um processo nunca consegue acessar sua região crítica.
Dois processos ficam bloqueados aguardando recursos.
Vários processos acessam simultaneamente um recurso livre.
Um processo conclui execução sem liberar memória.
Um processo alterna indefinidamente entre execução e pronto.
Por que mecanismos de sincronização são necessários?
Para impedir que o sistema operacional execute múltiplos processos.
Para evitar inconsistências no acesso a recursos compartilhados.
Para reduzir a quantidade de processos criados pelo usuário.
Para eliminar a necessidade de escalonamento de processos.
Para bloquear permanentemente subprocessos do sistema.
Qual problema ocorre quando dois processos ficam presos aguardando indefinidamente um ao outro?
Starvation.
Deadlock.
Race Condition.
Preempção.
Busy Waiting.
Qual é o papel do ambiente multithread em sistemas modernos?
Criar processos independentes sempre que necessário.
Permitir execução concorrente de várias threads dentro de um mesmo processo.
Bloquear automaticamente operações de entrada e saída.
Evitar uso simultâneo de diferentes núcleos da CPU.
Reduzir a quantidade de memória usada por programas inativos.
Qual recurso não é compartilhado entre threads de um mesmo processo?
Espaço de endereçamento.
Arquivos abertos.
Dispositivos de entrada/saída.
Registradores de hardware.
Temporizadores do processo.
Qual exemplo representa a utilização de threads em aplicativos de e-mail?
Um thread para ler mensagens antigas e outro para enviar novas.
Um processo independente para cada conta de usuário.
Um único thread responsável por envio, leitura e recebimento.
Um subprocesso para cada mensagem recebida.
Um thread exclusivo apenas para operações de login.
