Please enable JavaScript.
Coggle requires JavaScript to display documents.
Threads (Modelos (um para um(1:1) (1 usuário - Um kernel, Mapeamento de…
Threads
Modelos
Threads do usuário
Biblioteca de thread
nivel usuário
Threads do kernel
Admitidos pelo kernel
Muitos para um(N:1)
N threads usuário
1 thread kernel
processo bloqueado
1 thread - chamada sistema bloqueante
Muitos para Muitos(N:N)
N(usuário)->N(Kernel)
Thread Kernel Suficiente(SO)
um para um(1:1)
1 usuário - Um kernel
Mapeamento de thread usuário
Concorrência
Usa muita Memória
Biblioteca
win 32
java
POSIX Pthreads
criação/gerenciamento thread
Fornece API
Aspectos do uso
Tratamento de sinais
Notificar processo
Evento particular
Manipulador de sinal
Banco de Threads
Série de threads
Espera job
'acorda thread'
Volta a dormir pós job
Cancelamento de thread
Assíncrono
Termina imediatamente
adiado
Verifica se pode ser
Cancellation points
Dados especificos
Cópia de dados(cada thread)
Ativações
Upcalls
Comunicação kernel - biblioteca
numero correto(threads kernel)
Visão geral
Thread
Und. Básica CPU
ID
contador programa
conjunto registradores
stack(pilha)
Compartilhado
Seção codigo
seção dados
recursos SO
tradicional
'single thread'
'Miniprocessos'
Benefits
Responsividade
compartilhamento de recursos
Economia
arquitetura multiprocessadas
Programação multicore
Paralelismo
Desafio
Divisão de atividades
Area de código
equilibrio
esforço computacional
dependência de dados
Sincronização de tarefa
divisão de dados
Debugging
Caminho de execução
Paralelismo
dados
subconjunto de dados
execução em vários nucleos
Tarefas
multiplos núcleos
opera sobre conjunto de dados