Um Ambiente para Programação Concorrente em Turbo Pascal
Autores
3238 |
Carlos Fernando Rodrigues de Ávila Goulart
|
163,1471
|
3239 |
163,1471
|
Informações:
Publicações do PESC
O presente trabalho visa fornecer a comunidade acadêmica, em forma de software, um ambiente propício para a prática de Programação Concorrente. O ambiente é constituído de quatro módulos: Kernel (o núcleo de gerência de processos), ShareMem (o módulo de memória compartilhada), MsgPass (o módulo de troca de mensagens) e Debugger (o depurador para programas concorrentes). O equipamento alvo escolhido foram os microcomputadores IBM-PC compatíveis, pela sua enorme difusão e relativo baixo custo. A linguagem de programação é o Turbo Pascal, pela sua grande popularidade, clareza própria do Pascal, velocidade de compilação e execução e suas facilidades de depuração. O princípio determinante destas escolhas foi a de popularizar a prática da Programação Concorrente, descartando portanto equipamentos e linguagens especializados, de uso difícil ou de acesso restrito.
A proposta da Tese é fornecer ao usuário a implementação dos principais mecanismos e estruturas para Programação Concorrente encontrados na literatura. Desta forma, em um só ambiente podemos encontrar características diversas e por vezes antagônicas. A finalidade desta abordagem é abrir um leque razoável de opções, de maneira que mais aplicações possam ser programadas, não restringindo demasiadamente o usuário a modelos fechados.
The present work intends to bring to the academic community, in a software package, a propitious environment for practicing Concurrent Programming. The environment is made up of four modules: Kernel (the process manager nucleus), ShareMem (the shared memory module), MsgPass (the message passing module), and Debugger (the debugger for concurrent programs). The target machines chosen are IBM-PC compatible microcomputers, for their widespread use and relative low cost. The programming language is Turbo Pascal, for its enormous popularity, Pascal's clarity, compilation and execution speed and its debugging facilities. The fundamental motivation for this choice was to make popular the practice of Concurrent Programming, therefore discarding machines and languages too specialized, difficult to use or of restricted access.
The thesisl proposal is to give the user an implementation of the main mechanisms and structures for Concurrent Programming found in the literature. So in a single environment we can find characteristics diverse from one another and sometimes opposite as well. The purpose of this approach is to open up a good number of options, allowing more applications to be programmed, not restricting the user to closed models.