11.04.2013 Views

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

110 CAPÍTULO 7. APRESENTAÇÃO DO SISTEMA MOBISNAP<br />

e reservas a obter.<br />

O subsist<strong>em</strong>a <strong>de</strong> controlo <strong>de</strong> execução é responsável por controlar a execução das operações efectua-<br />

das pelas aplicações. As operações relativas à <strong>gestão</strong> da replicação e das reservas são propagadas para os<br />

subsist<strong>em</strong>a relevantes. As operações <strong>de</strong> interrogação são executadas directamente sobre as cópias locais<br />

da base <strong>de</strong> <strong>dados</strong>. As transacções móveis são processadas como se <strong>de</strong>screve na secção 8.3, utilizando um<br />

interpretador <strong>de</strong> PL/SQL e a informação sobre as reservas existentes. Após ser<strong>em</strong> executadas localmente,<br />

as transacções móveis são armazenadas <strong>de</strong> forma estável até ser<strong>em</strong> propagadas para o servidor. O cliente<br />

usa o mecanismo <strong>de</strong> compressão apresentado na secção 10.4.2 para comprimir a sequência <strong>de</strong> operações<br />

a propagar.<br />

O subsist<strong>em</strong>a <strong>de</strong> comunicações foi explicado anteriormente. No entanto, nos clientes, o subsist<strong>em</strong>a<br />

<strong>de</strong> comunicações é igualmente utilizado para as comunicações entre os clientes (efectuadas s<strong>em</strong>pre <strong>de</strong><br />

forma síncrona). Um cliente po<strong>de</strong> obter, a partir <strong>de</strong> outro cliente, uma cópia mais actualizada da base<br />

<strong>de</strong> <strong>dados</strong>. Adicionalmente, é possível, a um cliente, <strong>de</strong>legar noutro um conjunto <strong>de</strong> reservas. Para que<br />

o servidor possa verificar a valida<strong>de</strong> da utilização das reservas, a <strong>de</strong>legação <strong>de</strong> uma reserva é s<strong>em</strong>pre<br />

acompanhada <strong>de</strong> um endosso assinado pelo cliente que possuía a reserva — esta informação (ca<strong>de</strong>ia <strong>de</strong><br />

endossos) é posteriormente propagada para o servidor quando a reserva é utilizada.<br />

7.2.3 Protótipo<br />

Para validar a exequibilida<strong>de</strong> do mo<strong>de</strong>lo proposto, foi impl<strong>em</strong>entado um protótipo do sist<strong>em</strong>a Mobsinap<br />

na linguag<strong>em</strong> Java. O protótipo impl<strong>em</strong>enta as funcionalida<strong>de</strong>s propostas no sist<strong>em</strong>a através <strong>de</strong> uma<br />

camada <strong>de</strong> sist<strong>em</strong>a intermédia (middleware), organizada como <strong>de</strong>scrito nesta secção.<br />

Para permitir a utilização <strong>de</strong> diferentes bases <strong>de</strong> <strong>dados</strong> no cliente e no servidor usou-se a aproxi-<br />

mação <strong>de</strong>scrita na secção 6.2.6. O sist<strong>em</strong>a <strong>de</strong> comunicações seguras foi criado recorrendo à API <strong>de</strong><br />

segurança do Java. Inicialmente, recorreu-se à impl<strong>em</strong>entação <strong>de</strong>sta API efectuada pela Cryptix [31].<br />

Os interpretadores <strong>de</strong> PL/SQL foram criados usando o programa <strong>de</strong> criação <strong>de</strong> analisadores gramaticais<br />

JavaCC [169]. A impl<strong>em</strong>entação do mecanismo <strong>de</strong> execução <strong>de</strong> múltiplas transacções usa parcialmente<br />

o código do sist<strong>em</strong>a IceCube [134].<br />

O servidor do sist<strong>em</strong>a Mobisnap foi testado <strong>em</strong> computadores PCs com o sist<strong>em</strong>a operativo Win-<br />

dows 2000/XP e Linux. Os clientes foram testados <strong>em</strong> computadores PCs com várias versões do sist<strong>em</strong>a<br />

operativo Windows e Linux e <strong>em</strong> computadores <strong>de</strong> bolso Compaq iPaq com o sist<strong>em</strong>a operativo Sava-<br />

jeOS [150]. No entanto, como são completamente impl<strong>em</strong>entados <strong>em</strong> Java (incluindo o sist<strong>em</strong>a <strong>de</strong> <strong>gestão</strong><br />

<strong>de</strong> bases <strong>de</strong> <strong>dados</strong> usado), espera-se que corram <strong>em</strong> qualquer computador que possua uma impl<strong>em</strong>entação<br />

do ambiente “Java 2, standard edition”.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!