Programação concorrente baseada em acordes para plataforma java

Carregando...
Imagem de Miniatura

Título da Revista

ISSN da Revista

Título de Volume

Editor

Universidade Federal de Minas Gerais

Descrição

Tipo

Dissertação de mestrado

Título alternativo

Primeiro orientador

Membros da banca

Marco Túlio de Oliveira Valente
Mariza Andrade da Silva Bigonha
Osvaldo Sergio Farhat de Carvalho

Resumo

Os principais mecanismos usados para expressar paralelismo e concorrência disponíveis nas principais linguagens de programação modernas são construções de baixo nível de abstração, inadequadas ao desenvolvimento de sistemas concorrentes de larga escala. Isso faz com que a tarefa de projetar, analisar, implementar, testar e depurar sistemas concorrentes seja bastante árdua. O acorde é uma construção de alto nível, baseada no cálculo de processos joincalculus, que permite expressar os relacionamentos de concorrência declarativamente, possibilitando coordenar as interações entre fluxos de execução paralelos de maneira implícita. Propõe-se uma biblioteca para programação concorrente baseada em acordes na plataforma Java. Por meio dessa biblioteca busca-se permitir que sistemas paralelos e concorrentes sejam desenvolvidos em um maior nível de abstração de forma mais simples, efetiva e menos propensa a erros. É utilizada uma implementação baseada em anotações e instrumentação dinâmica de bytecodes que permite adaptar a sintaxe e a semântica da linguagem, propiciando expressar os acordes de maneira natural sem comprometer o ambiente padrão Java de desenvolvimento e execução.

Abstract

The most important mechanisms used to express parallelism and concurrency available in major modern programming languages are constructions with low level of abstraction, inadequate to the development of large scale concurrent systems. This makes the task of design, analyze, implement, test and debug concurrent systems to be quite difficult. The chord is a high level construction based in the processes algebra join-calculus, that enables to express the concurrent relationships declaratively, allowing to coordinate the interactions between parallel flows of execution implicitly. We propose a chord based concurrent programming library for the Java platform. Through this library we seek to allow the development of parallel and concurrent systems in a greater level of abstraction, in a simpler, more effective e less error prone way. It uses an implementation based on annotations and dynamic bytecode instrumentation that allows to adapt the syntax and semantic of the language, providing means to express chords in a natural way without compromising the standard java environment for development and execution.

Assunto

Processamento concorrente (Computação), Linguagens de programação (Computadores), JAVA (Linguagem de programação de computador), Computação

Palavras-chave

Java, Processamento concorrente, Linguagens de programação

Citação

Departamento

Curso

Endereço externo

Avaliação

Revisão

Suplementado Por

Referenciado Por