Detalhes bibliográficos
Ano de defesa: |
2015 |
Autor(a) principal: |
Ramos, Jerônimo da Cunha |
Orientador(a): |
Du Bois, André Rauber |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal de Pelotas
|
Programa de Pós-Graduação: |
Programa de Pós-Graduação em Computação
|
Departamento: |
Centro de Desenvolvimento Tecnológico
|
País: |
Brasil
|
Palavras-chave em Português: |
|
Área do conhecimento CNPq: |
|
Link de acesso: |
http://guaiaca.ufpel.edu.br/handle/prefix/8519
|
Resumo: |
Memória transacional é uma abstração na qual os acessos concorrentes a memória são gerenciados com o uso de transações, similares às de banco de dados. Existem muitas vantagens no uso deste modelo ao invés dos convencionais. Uma delas é a facilidade de programação, pois basta que o programador marque os trechos onde pode ocorrer condição de corrida e o sistema transacional se encarrega de garantir a corretude dos resultados. Outra vantagem importante e a maior possibilidade de exploração do paralelismo, já que as transações podem ser executadas de maneira otimista. Este modelo tem se mostrado promissor para máquinas SMP, no entanto existem poucos trabalhos na área focados em arquiteturas distribuídas. O estudo de arquiteturas distribuídas e extremamente importante nos dias de hoje, tanto por comporem uma grande parcela da computação de alto desempenho, quanto pela tendência de cada vez mais dispositivos computacionais comunicarem-se. Sendo assim, o presente trabalho engloba uma revisão bibliográfica sobre as principais estratégias de implementação de memórias transacionais, algumas das implementações mais importantes e as principais dificuldades para implementação de memorias transacionais distribuídas, bem como aborda as implementações, que compõe o estado da arte, da frente de pesquisa na qual este trabalho está inserido: memórias transacionais distribuídas. Deste modo, o objetivo principal deste trabalho é propor uma linguagem de domínio específico embutida em Java para implementação de transações de memória que podem envolver objetos locais e distribuídos em uma rede. Este objetivo foi abordado tanto em nível de linguagem, permitindo que o programador defina ações transacionais, quanto em nível de sistema transacional, dando suporte a execução das abstrações da linguagem. Além disso, foi implementado um protótipo, estendendo a implementação da linguagem CMTJava, para validação do modelo. |