Banca de TCC: Álvaro Joan Gonçalves dos Santos

UNIVERSIDADE FEDERAL DE PELOTAS
CENTRO DE DESENVOLVIMENTO TECNOLÓGICO
TRABALHO DE CONCLUSÃO DE CURSO

Apresentações Finais (2015/2)

Compilador CMTJava para Java 8
por
Álvaro Joan Gonçalves dos Santos

Curso:
Ciência da Computação

Banca:
Prof. André Rauber Du Bois (orientador)
Prof. Maurício Lima Pilla (co-orientador)
Prof. Gerson Geraldo Homrich Cavalheiro
Profa. Luciana Foss

Data: 09 de Dezembro de 2015

Hora: 09:00h

Local: Auditório Acadêmico

Resumo do Trabalho: Com o surgimento dos processadores multicore é indispensável a aplicação do paradigma de programação paralela no modo de pensar. A tecnologia atual conta com máquinas multicore que usam threads, nesse contexto surgem novos conceitos como memória compartilhada e mecanismos de sincronização. Apesar da divisão de trabalho entre múltiplas threads ser fortemente beneficiado pelas máquinas multicore, encontramos dificuldades ao programar paralelamente. Quando trabalha-se com threads umas das maiores preocupações é a da condição de corrida e deadlocks. Mecanismos como locks controlam os acessos, entretanto, ao mesmo tempo aumentam a complexidade e sua própria serialização. Memórias transacionais são uma ótima alternativa para programação de máquinas multicore. Por trazer o conceito de transação de banco de dados, que é implementado de modo que ações sejam executadas como operações atômicas. A linguagem CMTJava permite programar utilizando a abstração de memórias transacionais em uma linguagem baseada em Java. CMTJava implementa objetos transacionais onde seus atributos são acessados por métodos especiais, get e set, de forma atômica. A contribuição desse trabalho é a implementação de um compilador para transformar código CMTJava em bytecodes Java. Essa ferramenta já existe, entretanto, é implementada usando uma proposta antiga de BBGGA closures. Esse trabalho utiliza Java 8 no qual já vem com suporte a expressões lambda (closures) nativamente, porém com sintaxe e semântica diferentes das utilizadas na solução atual.

Para mais informações acesse: http://inf.ufpel.edu.br/notcc/doku.php?id=bancas:2015_2