TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Sistemas Operacionais

Por:   •  18/11/2019  •  Trabalho acadêmico  •  498 Palavras (2 Páginas)  •  175 Visualizações

Página 1 de 2

1a) Os threads de usuário são implementadas pela aplicação e não pelo sistema

operacional, neste modo, o SO não sabe da existência de múltiplos threads, sendo

responsabilidade da aplicação gerenciar e sincronizar os diversos threads existentes, já os

threads de kernel são implementadas pelo núcleo do SO, através de chamadas a rotinhas

do sistema que oferecem todas as funções de gerenciamento.

2a) Threads são partes de um processo que compartilham o mesmo espaço de

endereçamento, por conta disso a comunicação entre eles pode ser realizada de forma

rápida e eficiente, segundo Vahalia enquanto um processo tem tempo de criação igual a

1700, um thread tem 52.

3a) Por compartilharem o mesmo espaço dentro de um processo, a comunicação e troca

de dados são realizadas de maneira mais simples e rápida. Por outro lado, existe uma

desvantagem, por estarem no mesmo espaço os threads conseguem alterar os dados dos

demais.

4a) Programas concorrentes com múltiplos threads são mais rápidos do que programas

concorrentes implementados com múltiplos processos, pois operações de criação, troca

de contexto e eliminação dos threads geram menor overhead, e por dividirem o mesmo

espaço dentro de um processo a comunicação acaba sendo mais rápida.

5a) No modelo de usuário existe uma pilha por processo, dessa forma o SO gerencia cada

processo como se existisse apenas um único thread, quando um thread é colocado em

estado de espera, todo o processo é colocado também, mesmo havendo outras threads

executando ou pronta para execução. Como os threads de modo kernel são implementadas

pelo processo SO existem um pilha por thread, o escalonamento é feito de forma

individual.

6a) Seção Crítica é uma área de código de um algoritmo que acessa um recurso

compartilhado que não pode ser cedido concorrentemente por mais de uma linha de

execução. É usada geralmente quando um programa multitarefa deve atualizar diversas

variáveis relacionadas sem que outra linha de execução faça modificações conflitantes

nos dados. É importante para a implementação de exclusão mútua, usada para evitar

condições de corrida.

7a)

a) A Exclusão Mútua é um método usado para que dois ou mais processos acessem um

mesmo recurso simultaneamente. Para isso, enquanto um processo estiver acessando

...

Baixar como (para membros premium)  txt (3.6 Kb)   pdf (28.8 Kb)   docx (8.7 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com