A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Programação de Sistemas Distribuídos e Concorrentes

Apresentações semelhantes


Apresentação em tema: "Programação de Sistemas Distribuídos e Concorrentes"— Transcrição da apresentação:

1 Programação de Sistemas Distribuídos e Concorrentes

2 Programação de Sistemas Distribuídos e Concorrentes
Sumario Sistema Operacional Monoprogramação X Multiprogramação Processo X Threads Posix (Pthreads) Pthreads implementação

3 Programação de Sistemas Distribuídos e Concorrentes
Sistema Operacional É um programa responsável pelo gerenciamento de hardware. Ele gerencia as aplicações, para que uma não interfira no funcionamento da outra. Monoprogramação Somente um programa de usuário é carregado em memória por vez, e somente um programa concorre pelo processamento. Multiprogramação Vários programas são carregados em memoria, e concorrem entre si pelo processamento.

4 Programação de Sistemas Distribuídos e Concorrentes
Processo Processo é constituído por uma seqüência de instrução, em execução. Processo pode ser entendido como um programa em execução. Threads Toda Threads pertence a um processo. O termino de um processo, significa o termino de todas as Threads pertencentes á ele.

5 Programação de Sistemas Distribuídos e Concorrentes
Processo X Threads Processo ocupa espaço de endereçamento, e isto custa caro. Thread são executadas no mesmo espaço de endereçamento, isto é mais viável. Se interromper um Processo, toda aplicação é interrompida. Uma Thread, pode ser interrompida, e o processo criador continua sendo executado. É mais rápido fazer chaveamento entre Thread, do que entre Processos.

6 Programação de Sistemas Distribuídos e Concorrentes
Posix (Pthreads) POSIX Threads, ou Pthreads, é um padrão, criado pelo IEEE que define uma API (application program interface) para o desenvolvimento de aplicações multi-threaded. A API é formada por aproximadamente 60 funções que possibilitam a criação, suspensão e término de threads, bem como a sincronização e o controle do escalonamento destas threads. Atualmente ela pode ser utilizada apenas com as linguagens C e C+.

7 Programação de Sistemas Distribuídos e Concorrentes
Pthreads O programa inicia com uma única thread, principal que (executa a função main do programa C). Após outras threads são criadas pelo programador através da função pthread_create, que tem como parâmetro o nome de uma função para a thread executar. Um programa paralelo desenvolvido com Pthreads consiste, em um conjunto de threads que executam o código dentro de uma ou mais funções definidas pelo usuário. Cada thread executa independentemente das demais até o término da função que lhe foi designada ou até a realização de uma chamada à função pthread_exit, quando então é destruída.

8 Programação de Sistemas Distribuídos e Concorrentes
Implementação

9 Programação de Sistemas Distribuídos e Concorrentes
REFERÊNCIAS BIBLIOGRÁFICAS Toscani-Simão Sirineo, Romulo Silva de Oliveira, Alexandre da Silva Carissimi. Sistemas Operacionais e Programação Concorrente. Porto Alegre RS. Sagra Luzzatto 2003 Torelli-Programação Paralela em SMPs com OpenMP e POSIX Threads. Acessado em 22/04/05 disponível em:

10 Duvidas Marcos Sfair Jonats Santos FIM.


Carregar ppt "Programação de Sistemas Distribuídos e Concorrentes"

Apresentações semelhantes


Anúncios Google