Descrizione del progetto
Debug reversibile e coerente con le cause di sistemi concorrenti parzialmente osservabili
Il progetto ReGraDe-CS, finanziato dal programma di azioni Marie Skłodowska-Curie, si propone di affrontare la sfida del debug reversibile nei sistemi concorrenti, dove solo una parte del codice sorgente è accessibile. L’approccio RCCDR (reversible causal-consistent debugging and replay) consente di registrare un’esecuzione difettosa nell’ambiente di produzione e di riprodurla in un debugger reversibile. Ciò consente ai ricercatori di analizzare l’esecuzione registrata in avanti e indietro, risalendo alla causa del problema. Tale approccio richiede però l’accesso completo al codice sorgente del programma target. Per superare questa limitazione, il progetto cercherà di adattare l’RCCDR per l’uso con sistemi parzialmente accessibili. Il concetto sarà indagato sia in astratto che in concreto. I risultati del progetto potrebbero ampliare l’applicabilità dell’RCCDR, a vantaggio delle piccole e medie imprese informatiche e degli sviluppatori di software.
Obiettivo
The project tackles gray debugging of concurrent systems. Gray debugging means debugging systems where only part of the source code is accessible (e.g. the system invokes external services such as Google Maps). Debugging concurrent systems (from multiprocessors to Cloud) is notoriously hard. Reversible Causal-Consistent Debugging and Replay (RCCDR) is an innovative approach to this problem, allowing one to log a faulty execution in production environment and replay it in the debugger. There it can be explored backwards and forwards following causality links from the visible misbehavior to the bug causing it. This approach has been implemented in CauDEr, a debugger for the Erlang language.
Currently, RCCDR requires access to the whole source code of the target program. To enable gray RCCDR we need to answer the following questions:
How can we define RCCDR, and, more generally, reversibility in concurrent systems, in a compositional way, to be able to apply it to systems which are only partially accessible? Are we able to correctly explore backwards and forwards the accessible part? If not, which approximation in the exploration is caused by the missing information about the inaccessible part?
Till now RCCDR has only been explored in the concrete setting of Erlang, and gray RCCDR has never been studied. We plan to study gray RCCDR at two levels:
1) the abstract level of event structures. Abstraction ensures simpler proofs and generality of the results, making them applicable to many languages;
2) the concrete level of Erlang semantics, ensuring applicability in a setting of interest, and allowing to implement it by extending CauDEr and integrating it in the Erlang Solutions environment.
As an outcome we will provide the theory to apply the powerful RCCDR approach to concurrent systems which are only partially accessible, as well as exploit it in practice, in the setting of Erlang. This will also enable interaction with IT SMEs and software developers.
Campo scientifico (EuroSciVoc)
CORDIS classifica i progetti con EuroSciVoc, una tassonomia multilingue dei campi scientifici, attraverso un processo semi-automatico basato su tecniche NLP. Cfr.: https://op.europa.eu/en/web/eu-vocabularies/euroscivoc.
CORDIS classifica i progetti con EuroSciVoc, una tassonomia multilingue dei campi scientifici, attraverso un processo semi-automatico basato su tecniche NLP. Cfr.: https://op.europa.eu/en/web/eu-vocabularies/euroscivoc.
È necessario effettuare l’accesso o registrarsi per utilizzare questa funzione
Parole chiave
Programma(i)
- HORIZON.1.2 - Marie Skłodowska-Curie Actions (MSCA) Main Programme
Invito a presentare proposte
(si apre in una nuova finestra) HORIZON-MSCA-2022-PF-01
Vedi altri progetti per questo bandoMeccanismo di finanziamento
HORIZON-TMA-MSCA-PF-EF - HORIZON TMA MSCA Postdoctoral Fellowships - European FellowshipsCoordinatore
40126 Bologna
Italia