Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouMartín Francisco Alterado mais de 9 anos atrás
1
Linguagem de Programação IV Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação
2
Introdução ao processamento paralelo e distribuido *baseado no material do Prof. Luis Claudio Gubert
3
"O mundo é paralelo" (Ben-Ari)
4
A necessidade de Comunicação
5
Computação paralela X distribuída Paralela Diminuir tempo de processamento Distribuída Melhor aproveitamento dos recursos
6
Programação x ferramentas Paralela Construção de um ambiente com sockets e threads PVM (biblioteca de troca de mensagens) MPI (biblioteca de troca de mensagens) TreadMarks (biblioteca de memória compartilhada) Distribuída RMI (Java - SUN) Padrão CORBA DCOM (Microsoft)
7
Concorrência O mundo é formado por componentes cooperativos, melhor do que elementos individuais; Os sistemas atuais são concorrentes e distribuídos; Aplicações trabalham com janelas, eventos, multitarefa... Disciplinas envolvidas: Arquiteturas de Computadores Sistemas Operacionais Paradigmas de Programação Programação Paralela e Distribuída Sistemas Distribuídos
8
Concorrência Concorrência: Tradicionalmente: disputa por recursos; Dicionário: juntar-se para uma ação ou fim comum; contribuir; cooperar; Outra abordagem: independência temporal Programação concorrente: Técnica de programação que explora a iteração de atividades definidas por uma aplicação Objetiva compartilhamento de dados ou cooperação para evolução da execução.
9
Concorrente x Paralelo Atividades Paralelas são atividades concorrentes, contudo podem ser tratadas sobre conjunto de recursos independentes.
10
Concorrência - tópicos de estudo Arquiteturas e máquinas paralelas Aspectos envolvidos nos processos concorrentes: Gerenciamento; Sincronização; Comunicação. Gerênciamento Prover regras e mecanismos para compartilhar recursos de processamento espalhados em volta de uma rede entre todos os processos. Por exemplo: create, delete, run schedule, synchronize são feitas não somente locais, mas também remotas.
11
Concorrência - tópicos de estudo Sincronização: Soluciona dois tipos de problemas: a) especificação e controle de atividades juntas de processos cooperantes; b) serialização de acesso concorrente para compartilhar objetos por múltiplos processos. Para compartilharem recursos os processos concorrentes devem ser sincronizados. Comunicação: Deve garantir a rápida troca de dados através de primitivas de comunicação interprocesso e eficientes protocolos de transporte que suportem essas primitivas
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.