Questão FC213582
Qual unidade de execução em sistemas operacionais atende aos requisitos apresentados?
Conceitos, Funções e Tipos de Sistemas Operacionais
CESGRANRIO · 2024
Um projetista de sistema operacional pretende desenvolver um sistema multitarefa, no que concerne à criação de processos.
Para isso, ele pretende que os seguintes requisitos sejam atendidos:
I - a comunicação interprocessos deve ser eficiente;
II - o processo de criação e destruição deve ser eficiente;
III - deve ser permitido que os processos compartilhem um mesmo espaço de endereçamento e dados.
Qual unidade de execução em sistemas operacionais atende aos requisitos apresentados?
- build()
- fork()
- ioctl()
- malloc()
- thread()
Mostrar resposta e comentário
Gabarito
Errado
Comentário do professor
Alternativa correta: thread()
Uma thread é uma unidade de execução dentro de um processo: várias threads podem existir no mesmo processo, compartilhando código, heap e variáveis globais, enquanto cada thread tem sua própria pilha e registradores.
Relacionando com os requisitos:
Comunicação eficiente: threads no mesmo processo comunicam-se rapidamente por meio de memória compartilhada (acesso direto a variáveis), evitando a sobrecarga de mecanismos de IPC pesados.
Criação e destruição eficientes: criar/encerrar uma thread normalmente consome menos tempo e recursos do que criar/encerrar um processo completo, porque são necessárias menos estruturas do sistema operacional.
Compartilhamento de espaço de endereçamento e dados: threads pertencentes ao mesmo processo acessam o mesmo espaço de endereçamento e compartilham dados, facilitando colaboração e troca de informações entre elas.
Portanto, a thread() atende aos requisitos apresentados: comunicação rápida via memória compartilhada, menor custo de criação/destruição e compartilhamento do mesmo espaço de endereçamento.
Conteúdo do catálogo FC Concursos · Atualizado em