Questões Threads

449 palavras 2 páginas
1) Qual o conceito de thread?
R: Linha ou Encadeamento de execução (Thread), é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrentemente. O suporte à thread é fornecido pelo próprio sistema operacional, no caso da linha de execução ao nível do núcleo (Kernel-Level Thread (KLT)), ou implementada através de uma biblioteca de uma determinada linguagem, no caso de uma User-Level Thread (ULT).
Uma thread permite, por exemplo, que o usuário de um programa utilize uma funcionalidade do ambiente enquanto outras linhas de execução realizam outros cálculos e operações.
Em hardwares equipados com uma única CPU, cada thread é processada de forma aparentemente simultânea, pois a mudança entre uma thread e outra é feita de forma tão rápida que para o utilizador isso está acontecendo paralelamente. Em hardwares com múltiplos CPUs ou multi-cores, as threads são realizadas realmente de forma simultânea;

Um thread pode ser definido como uma subrotina de um programa que pode ser executada de forma assíncrona, ou seja, executada paralelamente ao programa chamador. A grande vantagem no uso de threads é a possibilidade de minimizar a alocação de recursos do sistema, além de diminuir o overhead na criação, troca e eliminação de processos.

2) Como uma aplicação pode implementar concorrência em um ambiente monothread?
R: Através de processos independentes e subprocessos.

3) Quais os problemas de aplicações concorrentes desenvolvidas em um ambiente monothread?
R: Um problema é que o uso de processos no desenvolvimento de aplicações concorrentes demanda consumo de diversos recursos do sistema. Sempre que um novo processo é criado, o sistema deve alocar recursos para cada processo, consumindo tempo de processador neste trabalho. No caso do término do processo, o sistema dispensa tempo para desalocar recursos previamente alocados.
Outro problema a ser considerado é quanto ao compartilhamento do espaço de endereçamento. Como

Relacionados

  • Plano Projeto
    1647 palavras | 7 páginas
  • Sistemas operacionais
    757 palavras | 4 páginas
  • Sistema operacional
    4833 palavras | 20 páginas
  • mainfreime
    1111 palavras | 5 páginas
  • Questões do livro Sistemas Operacionais modernos
    5562 palavras | 23 páginas
  • Quest Es De Revis O
    302 palavras | 2 páginas
  • Sistemas Distribuídos Cap 3
    3279 palavras | 14 páginas
  • Paradigmas de comunicação entre processos
    481 palavras | 2 páginas
  • Sistemas operacionais
    349 palavras | 2 páginas
  • FreeBSD
    3098 palavras | 13 páginas