Závěrečná práce: Anna Řechtáčková: Improving out-of-bound access checking in Symbiotic
Bakalářská práce
Improving out-of-bound access checking in Symbiotic
Anotace
Závěrečná práce se zaměřuje na ověřování validity přístupů k prvkům pole v cyklu pomocí indexu, jehož hodnota je omezená velikostí pole. Za tímto účelem je implementována analýza relací mezi hodnotami v kódu. V práci popisuji základy analýzy i procesu, který analýzu využívá k rozhodnutí, zda je přístup do pole validní. Tento proces byl v podobě pluginu zakomponován do Symbioticu, nástroje na verifikaci …více
Abstract
This thesis is focused on deciding validity of accesses of array elements done inside a loop using an index whose value is limited by the array's size. To achieve this, a value relations analysis of the code is implemented. I describe the fundamentals of both the analysis and procedure that uses the analysis to decide array access validity. The procedure has been integrated as a plugin into …více
Zadání práce
Symbiotic is a tool that can inspect memory safety of given C programs. In the current state, it may have some performance issues when deciding the memory safety of accesses into arrays that are done inside a loop. However, many of such accesses are easy to qualify as safe when one identifies the control variables of the loop, the way these variables change, and relations between the control variables and other values in the program.
The goal of this thesis is to design and implement a solution for qualifying (some) array accesses inside loops as safe or unsafe. More precisely, the student will design and implement an analysis of relations between values in a program and use this analysis to mark memory accesses into an array via a control variable as valid or possibly out of bounds and thus improve the analysis of memory safety in Symbiotic.
Apart from the implementation, the student is expected to evaluate her/his solution on a non-trivial set of benchmarks and analyze the results, namely the impact of the improvements on the capabilities of Symbiotic.
27. 5. 2020 15:30, RNDr. Marek Chalupa, Ph.D.
- Zadáno/změněno 26. 6. 2020 15:05, Helena Kryštofová
- Záznam založen 30. 4. 2020 12:19, Jana Zemanová, učo 9619
- Zveřejnit od 26. 5. 2020 08:01, Alena Dvořáková
- Práce převzata 26. 5. 2020 08:01, Alena Dvořáková
Přílohy
Práce na příbuzné téma
Seznam prací, které mají shodná klíčová slova.
-
Instrumentation of LLVM IR
Mgr. Martina Vitovská -
Slicing of LLVM Bitcode
RNDr. Marek Chalupa, Ph.D. -
A Common Framework for Inquiries about Program Properties
Mgr. Tomáš Brukner -
Detecting Bugs in Low-Level Memory-Manipulating Programs
Bc. Ján Durec -
Analysis of Parallel C++ Programs
RNDr. Vladimír Štill, Ph.D., učo 373979 -
Reversing Programs for Error Reachability Analysis
Mgr. Adéla Štěpková, učo 514620 -
LLVM IR service for Fedora
Mgr. Michal Toman, učo 324521 -
Enhancing DiffKemp to Support Generic Projects
Mgr. Tomáš Glozar, učo 492787




