SlideShare una empresa de Scribd logo
1 de 48
Sincronização Distribuída de Processos Francisco Heron de Carvalho Junior, Dr.
Tópicos Abordados ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Objetivos
Concorrência e  Sincronização Objetivo : Definir o conceito de  sincronização  dentro do contexto de  concorrência
Concorrência e Sicronização (processos) ,[object Object],[object Object],[object Object],[object Object],P P 1 P 2 P n paradigma  sequencial paradigma  concorrente ... ...
Concorrência e Sicronização (arquiteturas concorrentes) ... ... uniprocessada multiprocessada (memória compartilhada) distribuída Unidade de memória Unidade de processamento Processo rede
Concorrência e Sincronização (Histórias de Execução) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Concorrência e Sincronização (Modelando Interferência usando Lógica de Programação) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concorrência e Sincronização (Modelando Interferência usando Lógica de Programação) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],x := e
Concorrência e Sincronização (Interferência) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Concorrência e Sincronização (Exclusão Mútua) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concorrência e Sincronização (Exclusão Mútua) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concorrência e Sincronização (await) ,[object Object],[object Object],[object Object],[object Object]
Modelos de Sincronização de Processos  ( Memória compartilhada ) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Modelos de Sincronização de Processos  ( Memória distribuída ) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sincronização  Distribuída Passagem de Mensagens  Assíncrona
Passagem de Mensagens  Assíncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],... send recv
Passagem de Mensagens  Assíncrona send recv recv send ... emissor receptor emissor receptor Bloqueio do receptor ( sincronização ) t e m p o ... ... ... ... ... ...
Passagem de Mensagens  Assíncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Passagem de Mensagens  Assíncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Passagem de Mensagens  Assíncrona ,[object Object]
Passagem de Mensagens  Assíncrona Caixa de Mensagens ( mail boxes ) Porta de Entrada ( input port ) Ligação ( link ) ... ... ...
Passagem de Mensagens  Assíncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sincronização  Distribuída Passagem de Mensagens  Síncrona
Passagem de Mensagens  Síncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Passagem de Mensagens  Síncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Passagem de Mensagens  Síncrona send recv recv send emissor receptor emissor receptor Bloqueio do receptor ( sincronização ) t e m p o Bloqueio do emissor ( sincronização )
Passagem de Mensagens  Síncrona ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Passagem de Mensagens  Síncrona ,[object Object],[object Object],[object Object],... ... ...
Passagem de Mensagens  Síncrona ,[object Object],[object Object],[object Object],... ... ...
Passagem de Mensagens  Síncrona ,[object Object]
Sincronização Distribuída Chamada de Procedimento Remoto
Chamada de Procedimento Remoto ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Chamada de Procedimento Remoto processo chamador processo  servidor call Módulo
Chamada de Procedimento Remoto ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Chamada de Procedimento Remoto ,[object Object],[object Object],[object Object],[object Object],[object Object]
Chamada de Procedimento Remoto ... REDE DE COMUNICAÇÃO módulo módulo módulo módulo módulo módulo call call
Chamada de Procedimento Remoto ,[object Object]
Chamada de Procedimento Remoto ,[object Object]
Sincronização Distribuída Rendezvous
Rendezvous ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Rendezvous processo chamador processo  servidor (corpo de  in ) call Módulo in
Rendezvous ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],... ... ... ...
Rendezvous ,[object Object]
Paradigmas de Sincronização Distribuída Padrões de Interação entre Processos
Paradigmas de Sincronização Distribuída ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Paradigmas de Sincronização Distribuída ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conclusões ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sincronização Distribuída de Processos Francisco Heron de Carvalho Junior, Dr.

Más contenido relacionado

La actualidad más candente

Capítulo 10 detecção e correção de erros
Capítulo 10   detecção e correção de errosCapítulo 10   detecção e correção de erros
Capítulo 10 detecção e correção de errosFaculdade Mater Christi
 
2 controle fluxo
2 controle fluxo2 controle fluxo
2 controle fluxoprofwtelles
 
6 - segurança - criptografia
6   - segurança - criptografia6   - segurança - criptografia
6 - segurança - criptografiaAndre Peres
 
Análise da complexidade de algoritmos
Análise da complexidade de algoritmosAnálise da complexidade de algoritmos
Análise da complexidade de algoritmosPablo Silva
 
Resumo linguagem c para microcontroladores PIC usando MikroC
Resumo linguagem c para microcontroladores PIC usando MikroCResumo linguagem c para microcontroladores PIC usando MikroC
Resumo linguagem c para microcontroladores PIC usando MikroCFabio Souza
 
Desigualdade de Kraft e Aplicações
Desigualdade de Kraft e AplicaçõesDesigualdade de Kraft e Aplicações
Desigualdade de Kraft e AplicaçõesCarlos Campani
 
Classes de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícilClasses de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícilGuilherme Coelho
 
Sistemas Logicas de Seguranca
Sistemas Logicas de SegurancaSistemas Logicas de Seguranca
Sistemas Logicas de SegurancaDinoManuelMafunga
 
Comandos de Controle de Programa em C
Comandos de Controle de Programa em CComandos de Controle de Programa em C
Comandos de Controle de Programa em CElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Aula 03 estrutura de seleção
Aula 03   estrutura de seleçãoAula 03   estrutura de seleção
Aula 03 estrutura de seleçãoTácito Graça
 

La actualidad más candente (20)

Visualg
VisualgVisualg
Visualg
 
Capítulo 10 detecção e correção de erros
Capítulo 10   detecção e correção de errosCapítulo 10   detecção e correção de erros
Capítulo 10 detecção e correção de erros
 
2 controle fluxo
2 controle fluxo2 controle fluxo
2 controle fluxo
 
6 - segurança - criptografia
6   - segurança - criptografia6   - segurança - criptografia
6 - segurança - criptografia
 
Aula 05 subprogramas
Aula 05   subprogramasAula 05   subprogramas
Aula 05 subprogramas
 
Análise da complexidade de algoritmos
Análise da complexidade de algoritmosAnálise da complexidade de algoritmos
Análise da complexidade de algoritmos
 
Algoritmos - capítulo 6
Algoritmos - capítulo 6Algoritmos - capítulo 6
Algoritmos - capítulo 6
 
Resumo linguagem c para microcontroladores PIC usando MikroC
Resumo linguagem c para microcontroladores PIC usando MikroCResumo linguagem c para microcontroladores PIC usando MikroC
Resumo linguagem c para microcontroladores PIC usando MikroC
 
Lab6 flipflop
Lab6 flipflopLab6 flipflop
Lab6 flipflop
 
Desigualdade de Kraft e Aplicações
Desigualdade de Kraft e AplicaçõesDesigualdade de Kraft e Aplicações
Desigualdade de Kraft e Aplicações
 
Classes de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícilClasses de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícil
 
SubProgramas
SubProgramasSubProgramas
SubProgramas
 
Sistemas Logicas de Seguranca
Sistemas Logicas de SegurancaSistemas Logicas de Seguranca
Sistemas Logicas de Seguranca
 
Comandos de Controle de Programa em C
Comandos de Controle de Programa em CComandos de Controle de Programa em C
Comandos de Controle de Programa em C
 
Introdução à Linguagem C
Introdução à Linguagem CIntrodução à Linguagem C
Introdução à Linguagem C
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Dojo tuba delphi
Dojo tuba   delphiDojo tuba   delphi
Dojo tuba delphi
 
Criptografia simétrica
Criptografia simétricaCriptografia simétrica
Criptografia simétrica
 
Aula 03 estrutura de seleção
Aula 03   estrutura de seleçãoAula 03   estrutura de seleção
Aula 03 estrutura de seleção
 
Algoritmos - Procedimentos
Algoritmos - ProcedimentosAlgoritmos - Procedimentos
Algoritmos - Procedimentos
 

Destacado

Destacado (8)

UNINOVE - FAC - Graduação
UNINOVE - FAC - GraduaçãoUNINOVE - FAC - Graduação
UNINOVE - FAC - Graduação
 
Desenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidDesenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com Android
 
Android desenvolvimento
Android desenvolvimentoAndroid desenvolvimento
Android desenvolvimento
 
Android
AndroidAndroid
Android
 
SyncAdapter, Sincronização de dados no Android
SyncAdapter, Sincronização de dados no AndroidSyncAdapter, Sincronização de dados no Android
SyncAdapter, Sincronização de dados no Android
 
Android Aula 4
Android Aula 4Android Aula 4
Android Aula 4
 
Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para Android
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGap
 

Similar a Sincronização Distribuída de Processos

Canais Assíncronos II - Aplicações
Canais Assíncronos II - AplicaçõesCanais Assíncronos II - Aplicações
Canais Assíncronos II - AplicaçõesHeron Carvalho
 
Redes de Computadores Capítulo 3 - Camada de Enlace
Redes de Computadores Capítulo 3 - Camada de EnlaceRedes de Computadores Capítulo 3 - Camada de Enlace
Redes de Computadores Capítulo 3 - Camada de EnlaceWellington Oliveira
 
Redes I - 3.Camada de Enlace de Dados LLC
Redes I - 3.Camada de Enlace de Dados LLCRedes I - 3.Camada de Enlace de Dados LLC
Redes I - 3.Camada de Enlace de Dados LLCMauro Tapajós
 
Processador mips - parte operativa e parte de controle
Processador mips - parte operativa e parte de controleProcessador mips - parte operativa e parte de controle
Processador mips - parte operativa e parte de controleBruno Andretti Duarte
 
Introdução ao desenvolvimento de firmwares
Introdução ao desenvolvimento de firmwaresIntrodução ao desenvolvimento de firmwares
Introdução ao desenvolvimento de firmwareselliando dias
 
SD_Aula_03_Introdução ao SD.pdf
SD_Aula_03_Introdução ao SD.pdfSD_Aula_03_Introdução ao SD.pdf
SD_Aula_03_Introdução ao SD.pdfFerro Gaita
 
Cartao referencia ccs
Cartao referencia ccsCartao referencia ccs
Cartao referencia ccsLuciano Zica
 
codigos de detecao e correcao de erros_manuela
codigos de detecao e correcao de erros_manuelacodigos de detecao e correcao de erros_manuela
codigos de detecao e correcao de erros_manuelaChristian-life Cl
 
Webinar: Porque o RTOS não faz o que eu quero?
Webinar: Porque o RTOS não faz o que eu quero?Webinar: Porque o RTOS não faz o que eu quero?
Webinar: Porque o RTOS não faz o que eu quero?Embarcados
 
TDC2013 Otimizando-C
TDC2013 Otimizando-CTDC2013 Otimizando-C
TDC2013 Otimizando-Cosmarcf
 
Relatório multiplexadores e decodificadores
Relatório multiplexadores e decodificadoresRelatório multiplexadores e decodificadores
Relatório multiplexadores e decodificadoresFlavio Oliveira Rodrigues
 
Gerência de Processos: Processos
Gerência de Processos: ProcessosGerência de Processos: Processos
Gerência de Processos: ProcessosAlexandre Duarte
 

Similar a Sincronização Distribuída de Processos (20)

Canais Assíncronos I
Canais Assíncronos ICanais Assíncronos I
Canais Assíncronos I
 
Canais Assíncronos II - Aplicações
Canais Assíncronos II - AplicaçõesCanais Assíncronos II - Aplicações
Canais Assíncronos II - Aplicações
 
Redes de Computadores Capítulo 3 - Camada de Enlace
Redes de Computadores Capítulo 3 - Camada de EnlaceRedes de Computadores Capítulo 3 - Camada de Enlace
Redes de Computadores Capítulo 3 - Camada de Enlace
 
Redes I - 3.Camada de Enlace de Dados LLC
Redes I - 3.Camada de Enlace de Dados LLCRedes I - 3.Camada de Enlace de Dados LLC
Redes I - 3.Camada de Enlace de Dados LLC
 
Processador mips - parte operativa e parte de controle
Processador mips - parte operativa e parte de controleProcessador mips - parte operativa e parte de controle
Processador mips - parte operativa e parte de controle
 
Introdução ao desenvolvimento de firmwares
Introdução ao desenvolvimento de firmwaresIntrodução ao desenvolvimento de firmwares
Introdução ao desenvolvimento de firmwares
 
Aulas de rede
Aulas de redeAulas de rede
Aulas de rede
 
SD_Aula_03_Introdução ao SD.pdf
SD_Aula_03_Introdução ao SD.pdfSD_Aula_03_Introdução ao SD.pdf
SD_Aula_03_Introdução ao SD.pdf
 
Cartao referencia ccs
Cartao referencia ccsCartao referencia ccs
Cartao referencia ccs
 
Tk codigos erros_manuela
Tk codigos erros_manuelaTk codigos erros_manuela
Tk codigos erros_manuela
 
codigos de detecao e correcao de erros_manuela
codigos de detecao e correcao de erros_manuelacodigos de detecao e correcao de erros_manuela
codigos de detecao e correcao de erros_manuela
 
Webinar: Porque o RTOS não faz o que eu quero?
Webinar: Porque o RTOS não faz o que eu quero?Webinar: Porque o RTOS não faz o que eu quero?
Webinar: Porque o RTOS não faz o que eu quero?
 
Camada4
Camada4Camada4
Camada4
 
Camada4
Camada4Camada4
Camada4
 
TDC2013 Otimizando-C
TDC2013 Otimizando-CTDC2013 Otimizando-C
TDC2013 Otimizando-C
 
Relatório multiplexadores e decodificadores
Relatório multiplexadores e decodificadoresRelatório multiplexadores e decodificadores
Relatório multiplexadores e decodificadores
 
Cap05a
Cap05aCap05a
Cap05a
 
Cap05b
Cap05bCap05b
Cap05b
 
Gerência de Processos: Processos
Gerência de Processos: ProcessosGerência de Processos: Processos
Gerência de Processos: Processos
 
Pic slides
Pic slidesPic slides
Pic slides
 

Sincronização Distribuída de Processos