100% acharam este documento útil (1 voto)
145 visualizações2 páginas

Threads - Atividade

1. As aplicações podem implementar concorrência em ambientes monothread dividindo-se em múltiplos processos ou subprocessos independentes, porém isso demanda mais recursos do sistema. 2. Em ambientes multithread, cada processo pode responder a várias solicitações concorrentemente, aproveitando melhor os processadores, com menor alocação de recursos do que criar novos processos. 3. A unidade de alocação de recursos é o processo completo, enquanto a unidade de escalonamento distribui o acesso à CPU entre os threads ativos.

Enviado por

Karolyne Muniz
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato TXT, PDF, TXT ou leia on-line no Scribd
100% acharam este documento útil (1 voto)
145 visualizações2 páginas

Threads - Atividade

1. As aplicações podem implementar concorrência em ambientes monothread dividindo-se em múltiplos processos ou subprocessos independentes, porém isso demanda mais recursos do sistema. 2. Em ambientes multithread, cada processo pode responder a várias solicitações concorrentemente, aproveitando melhor os processadores, com menor alocação de recursos do que criar novos processos. 3. A unidade de alocação de recursos é o processo completo, enquanto a unidade de escalonamento distribui o acesso à CPU entre os threads ativos.

Enviado por

Karolyne Muniz
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato TXT, PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 2

1 Como uma aplicação pode implementar concorrência em um ambiente

monothread?
Elas permitem dividir as aplicações para trabalhar de forma concorrente,
implementadas com múltiplos processos independentes ou subprocessos.

2 Quais os problemas de aplicações concorrentes desenvolvidas em ambientes


monothread?
Demanda o consumo de diversos recursos do sistema monothread, pois quando há a
criação de um novo processo, o sistema deve alocar recursos para cada
um dos processos, tomando tempo. E problemas no compartilhamento do espaço do
endereçamento, tornando-se lenta quando cada um dos processos tem seu
proprio espaço de endereçamento.

3 O que é um ambiente multithread e quais as vantagens de sua utilização?


Cada processo pode responder a várias solicitações concorrentemente ou mesmo
simultaneamente, no caso de haver mais de um processador.
A vantagem no uso de threads é minimizar a alocação de recursos com a criação de
novos processos.

4 Explique a diferença entre unidade de alocação de recursos e unidade de


escalonamento.
Unidade de alocação de recursos: onde o processo e todos seus threads compartilham
espaço de endereçamento, descritores de arquivos e dispositivos.
Unidade de escalonamento: distribui o acesso aos recursos presentes no sistema
entre os processos ativos, permitindo que todos eles que estejam na fila possam
utilizar a CPU.

5 Quais as vantagens e desvantagens do compartilhamento do espaço de endereçamento


entre threads de um mesmo processo?
Compartilhar os dados entre as threads, porém o compartilhamento do espaço de
endereçamento, dentro desse espaço não há proteção de acesso a memória,
permitindo que os dados entre as threads sejam alterados.

6 No programa multithread do item 6.4, qual dos três threads será executado
primeiro, depois de criados?
Thread num 1, depois entra em um tempo de espera entre 0 e 5 segundos, depois está
pronta para ser escalonada.

7 No programa multithread do item 6.4, é possível que o thread 3 seja executado


mais que três vezes seguidas?
Não é possível determinar qual sera executada apos a criação de três threads.

8 Altere o programa do item 6.4 de forma a criar mais um thread, totalizando uma
aplicação concorrente com quatro threads.
int i, n = 4; //mudanca de tres para quatro

9 Compare os pacotes de threads em modo usuário e modo kernel.


Modo usuário: implementadas pela aplicação e não pelo SO. Deve existir uma
biblioteca de rotinas que permite a aplicação
realizar tarefas (criar e eliminar threads, comonicação entre threads).
Responsabilidade da aplicação gerenciar e sincronizar as diversas
threads existentes.
Modo kernel: SO sabe da existência de cada thread e pode escaloná-los de maneira
individual. As rotinas do sistema oferecem todas as funções de gerenciamento de
sincronização.
Em muilti-cores, os threads de um mesmo processo podem ser executados
simultaneamente.

10 Qual a vantagem do scheduler activations comparado ao pacote híbrido?


Combina as duas arquiteturas do modo híbrido, mas inves de dividir as threads em
ambos os modos(usúario e kernel), o núcel do sistema troca informações com a
biblioteca threads com estrutura de dados.

11 Dê exemplos do uso de threads no desenvolvimento de aplicativos, como editores


de textos e planilhas eletrônicas
Words e PowerPoint, há threads prontas para ser executada como correções
ortograficas, criação de novas paginas, sugestões de palavras,etc.

12 Como o uso de threads pode melhorar o desempenho de aplicações paralelas em


ambientes com múltiplos processadores?
Com o uso do modo híbrido, a biblioteca em modo usuario e o kernel se comunicam e
trabalham de forma cooperativa, trocando informações quando necessário.

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy