Proposta de implementação de uma interface de alto nível para Memórias Transacionais Distribuídas usando RMI em Java
Resumo
O conceito de Memórias Transacionais Distribuídas é a aplicação dos já conhecidos conceitos de Memórias Transacionais para o âmbito de Sistemas Distribuídos. Um projeto de DTM está sendo desenvolvido pelo Laboratory of Ubiquitous and Parallel Systems da UFPel, porém, essa implementação requer a utilização de diversos trechos de códigos similares e repetitivos de relativo baixo nível, tanto no que diz respeito a características das transações quanto da própria arquitetura distribuída. O presente trabalho propõe então a implementação de uma interface de alto nível para DMTs empregando RMI de modo a abstrair os trechos de códigos citados anteriormente, dentro do escopo da linguagem Java.
Referências
Couceiro, M., Romano, P., Carvalho, N., and Rodrigues, L. (2009). D2stm: Dependable distributed software transactional memory. pages 307–313.
da Cunha Ramos, J. (2018). Proposta de um sistema transacional distribuido, control flow, opaco e com versionamento baseado em relógio lógico. Proposta de Tese - PPGC / UFPEL.
da Cunha Ramos, J., Bois, A. R. D., and Pilla, M. L. (2016). Um estudo sobre stm para arquiteturas distribuídas. Escola Regional de Alto Desempenho, pages 205–206.
de Le˜ao Bandeira, R. (2013). Um sistema de detecção de conflitos com invalidação mista para a linguagem ctm java. Dissertação de Mestrado — PPGC/UFPEL.
Herlihy, M. and Moss, J. E. B. (1993). Transacional memory: Architectural support for lock-free data structures. ISCA ’93 Proceedings of the 20th annual international symposium on computer architecture, 21(2):289–300.
Parr, T. (2012). The Definitive ANTLR 4 Reference. Pragmatic Bookshelf, 1st edition.
Romano, P., Rodrigues, L., Carvalho, N., and Cachopo, J. (2010). Cloud-tm: Harnessing the cloud with distributed transactional memories. SIGOPS Oper. Syst. Rev., page 1–6.
Siek, K. and Wojciechowski, P. T. (2016). Atomic rmi: A distributed transactional memory framework. International Journal of Parallel Programming, page 598–619.