You are on page 1of 3

Introduo aos Sistemas Distribudos

Passo 1 - IPC (Inter-Process Communication)


Com a necessidade dos sistemas terem que seus processos trabalham independentes e no afetem, no entanto, ele tem que se comunicar com os outros processos e para que isso fosse possvel a soluo criar um mecanismo que os processos se comuniquem. Ai que entra o IPC. O IPC um conjunto de mecanismos de troca de informaes entre mltiplos threads de um ou mais processos, que trabalha com a necessidade de coordenar o uso de recursos (ou tambm sincroniza-los). O IPC tem que ser rpido, simples de ser implementado, possuir modelo de sincronizao bem definido, verstil e funcionar igualmente em sistemas distribudos. A sincronizao a parte mais importante e tem que permitir que o responsvel pelo envio indique quando um dado foi transmitido e que o processo que receber as informaes saiba quando um dado est disponvel. Tambm deve informar quando podem realizar uma nova IPC.

Passo 2 - RMI (Remote Method Invocation)


O RMI uma tecnologia que facilita o desenvolvimento de aplicaes distribudas. Ele suportado pela plataforma JAVA e permite chamar mtodos de objetos remotos (que esto de maquinas virtuais diferentes). Ele separa a interface e a implementao de uma classe. Por permitir acesso a um mtodo remoto ele pode assumir as caractersticas de uma classe de uma maquina virtual diferente. O RMI possui trs camadas que so: 1. Camada Stub/skeleton: recebe chamadas da aplicao cliente feitas a interface e reencaminha para o objeto remoto; 2. Camada de Referencias Remota: trabalha com a gesto e a interpretao de referencias remota; 3. Camada de Transporte: faz a ligao entre as maquinas virtuais atravs do protocolo TCP/IP.

Passo 3 - Comparando as tecnologias IPC e RMI


IPC - ou comunicao inter-processos, como o nome j diz, serve para que processos diferentes comuniquem-se uns com os outros passando dados, mensagens, comunicaes de estados entre eles, etc. Tendo em vista esses base sobre IPC, mostrarei um exemplo de como fazer isso, digamos que, voc tenha dois programas, um para extrair faixas de CDs e outro que transforma o resultado do primeiro em ogg. Voc poderia usar essa biblioteca para que eles conversem entre si, o primeiro avisando que terminou de extrair o arquivo 1.wav para o segundo, fazendo com que ele comece a codificao. Depois voc resolve escrever uma interface grfica para estes programas. Usando o mesmo mtodo, sua interface pode dizer para o ripador "extra as faixas 1,2 e 3 do CD em tal drive" e ficar, por sua vez, recebendo informaes dos dois programas sobre o estado deles, se esto rodando certo, quantos % j foi extrado e codificado, etc. RMI - Consiste basicamente em dois programas, segundo a arquitetura cliente-servidor, onde um seria o cliente e outro o servidor. O servidor instancia objetos remotos, o referencia com um nome e faz um "BIND" dele numa porta, onde este objeto espera por clientes que invoquem seus mtodos. J o cliente referencia remotamente um ou mais mtodos de um objeto remoto. RMI fornece os mecanismos para que a comunicao entre cliente e servidor seja possvel. Esse tipo de aplicao geralmente denominado como Aplicao de Objeto Distribudo. Uma das principais vantagens do RMI sua capacidade de baixar o cdigo de um objeto, caso a classe desse objeto no seja definida mquina virtual do receptor. Os tipos e o comportamento de um objeto, previamente disponveis apenas em uma mquina virtual, agora podem ser transmitidos para outra mquina virtual, possivelmente remota. Essa funcionalidade do RMI permite que o cdigo da aplicao seja atualizado dinamicamente, sem a necessidade de recompilar o cdigo.

Diagramas do Jogo da Velha


O que o Jogo da velha
um jogo popular de regras simples e sem dificuldades para que o joga. Acredita-se que o nome se originou na Inglaterra, quando nos finais da tarde as mulheres se reuniam para conversar e bordar. As mulheres velhas que no podiam mais fazer esse trabalho jogavam este jogo, dai passou a ser chamado de velha. Ele possui um tabuleiro de matriz de trs linhas e trs colunas. Dois jogadores escolhem se vai jogar com xis (X) ou com o circulo (O). O jogo alternado entre os jogadores marcando uma casa por vez, sendo que o objetivo conseguir trs crculos ou trs xis em mesma linha na horizontal, vertical ou diagonal. Ao mesmo tempo tem que impedir que o adversrio de ganhar o jogo. Quando jogador ganha risca-se os trs smbolos quando empata diz que deu velha.

Referncias
Wikipdia Jogo da Velha - <http://pt.wikipedia.org/wiki/Jogo_da_velha> - disponvel em 30/03/14 as 10:00;