Banca de QUALIFICAÇÃO: MATHEUS TENORIO DOS SANTOS

Uma banca de QUALIFICAÇÃO de MESTRADO foi cadastrada pelo programa.
DISCENTE : MATHEUS TENORIO DOS SANTOS
DATA : 21/08/2026
HORA: 16:30
LOCAL: Instituto de Computação
TÍTULO:

Mapeando o custo e a fronteira de segurança do Rust no território de data races em algoritmos de controle


PALAVRAS-CHAVES:

Data race; Segurança de Memória; Sistemas de Controle; Rust; Sistemas Embarcados


PÁGINAS: 89
RESUMO:

Em controle digital de malha fechada, não cumprir o requisito de tempo do período de controle (perder deadline) pode desestabilizar o sistema por completo, causando acidentes graves. A natureza do controle digital exige estados compartilhados: seja na aquisição de dados, seja na alteração de parâmetros feita pelo usuário, seja na atuação do sinal de controle. Os estados compartilhados acessados por diversos contextos, onde pelo menos um deles realiza uma escrita e pelo menos um acesso é não sincronizado, levam a um data race. Em código com data race, o comportamento é indefinido, podendo levar o controle digital a perder deadlines. O estado da arte hoje na implementação de controle digital, em sistemas embarcados, envolve C+MISRA+Sanitizers para evitar data races. Entretanto este método depende da disciplina do desenvolvedor e de detectar data races exercitados em tempo de execução. Com a linguagem Rust, essas garantias são movidas do desenvolvedor para o compilador e os data races não são mais detectados em tempo de execução, mas sim eliminados em tempo de compilação, através do sistema de tipos do Rust (Send/Sync e borrow checker). Todavia, o Rust exige uma sincronização forçada a qual possui um custo. Também é desconhecido quais resquícios de unsafe ainda permanecem no Rust. Deste modo, qual a fronteira entre safe e unsafe nos padrões de data race, no domínio de algoritmos embarcados de controle, e qual o custo das garantias do Rust? Neste trabalho, é proposta uma taxonomia para classificar os padrões de data race presentes nos algoritmos de controle. Após isso, a fronteira entre safe e unsafe nestes padrões é caracterizada. Além disso, é catalogado o espaço de design das garantias que tornam o data race inexprimível. Também é construído o veículo de experimentos: Aule, uma biblioteca de controle construída para instanciar os algoritmos de controle utilizados nos experimentos. Atualmente, Aule contém a base principal para a construção dos experimentos em uma planta física (pêndulo invertido), com os blocos de sincronização em desenvolvimento. Também está presente neste trabalho um panorama comparativo do ecossistema open-source do Rust para bibliotecas de controle. Por fim, é mostrado neste trabalho um caso demonstrativo de recusa do compilador Rust safe, quando o código possui data race.


MEMBROS DA BANCA:
Presidente - 2995499 - ICARO BEZERRA QUEIROZ DE ARAUJO
Interno(a) - 3817637 - GLAUBER RODRIGUES LEITE
Externo(a) à Instituição - ALLAN DE MEDEIROS MARTINS - UFRN
Notícia cadastrada em: 19/08/2026 13:58
SIGAA | NTI - Núcleo de Tecnologia da Informação - (82) 3214-1015 | Copyright © 2006-2026 - UFAL - sig-app-1.srv1inst1 16/09/2026 15:50