1 |
[en] A COMPARISON OF THE STRUCTURED REACTIVE PROGRAMMING AND REACTIVEX MODELS IN SOFT REAL TIME APPLICATIONS / [pt] COMPARAÇÃO DOS MODELOS REACTIVEX E PROGRAMAÇÃO REATIVA ESTRUTURADA EM APLICAÇÕES SOFT REAL TIMETHIAGO DUARTE NAVES 05 July 2021 (has links)
[pt] Nesse trabalho comparamos o uso da programação reativa estruturada
com o uso do ReactiveX no desenvolvimento de aplicações reativas soft real
time. Apresentamos implementações de aplicações em Lua que demonstram o
uso desses modelos em diferentes situações, destacando as vantagens de cada
um. Consideramos também o seu uso combinado em uma mesma aplicação.
Além disso, implementamos um módulo que permite utilizar a programação
reativa estruturada em Lua e utilizamos o módulo RxLua que implementa o
modelo ReactiveX. / [en] In this work we compare the use of structured reactive programming
and ReactiveX in the development of reactive soft real time applications. We
present application implementations using Lua that demonstrate the use of
these models in multiple situations, pointing the advantages of using each one.
Another consideration is combining both models in a single application. We
also developed a module that allows the use of structured reactive programming
in Lua and used the RxLua module which implements the ReactiveX
model.
|
2 |
[en] EVENTMANAGER: A TOOL FOR ANALYSING CONCURRENT PROGRAMS / [pt] EVENTMANAGER: UMA FERRAMENTA DE ANÁLISE DE PROGRAMAS CONCORRENTESANNA LETICIA ALEGRIA P DE OLIVEIRA 10 October 2022 (has links)
[pt] Alunos aprendendo programação concorrente muitas vezes têm dificuldades de testar seus programas por conta do não-determinismo presente no
escalonamento de threads. Em geral, é difícil testar cenários específicos e mais
difícil ainda repetir um determinado cenário para testar mudanças do código.
Nesta tese, apresentamos a EventManager: uma ferramenta que criamos para
permitir que um usuário instrumente seu programa, marcando eventos no código e especificando sequências de eventos através de uma linguagem de domínio específico (DSL). Esta linguagem restringe o escalonamento das threads
para que obedeça as sequências permitidas para estes eventos. Descrevemos a
implementação da EventManager para aplicações baseadas em threads POSIX.
Investigamos a aplicação da ferramenta em soluções de problemas clássicos de
concorrência para averiguar a expressividade da linguagem que criamos. / [en] Students learning concurrent programming often struggle with tests due
to the non-deterministic nature of thread scheduling. It is in general hard to
test specific scenarios and harder yet to repeat a given scenario for further
tests after changes to the code. In this thesis, we present EventManager: a
tool we developed that allows the user to instrument their program, marking
events in the code and specifying valid event sequences using a domainspecific language. This language restricts thread scheduling to obey allowed
sequences for these events. We describe the implementation of EventManager
for applications based on POSIX threads. We investigate our tool applied on
solutions of classical concurrency problems to verify the expressiveness of the
created language.
|
Page generated in 0.0389 seconds