Vyhledávání výrazů s nedefinovaným chováním v jazyce C
but.committee | doc. Dr. Ing. Petr Hanáček (předseda) prof. Ing. Tomáš Vojnar, Ph.D. (místopředseda) doc. Ing. Vítězslav Beran, Ph.D. (člen) Ing. Karel Masařík, Ph.D. (člen) Ing. Josef Strnadel, Ph.D. (člen) | cs |
but.defence | Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C. Otázky u obhajoby: Můžete blíže vysvětlit způsob překladu výsledků "alias" analýzy z LLVM IR na zdrojový kód na příkladu výpisů uvedených na obrázcích 4.7 až 4.9? Charakterizujte blíže programy, na nichž jste váš analyzátor testoval, a vysvětlete údaje uvedené na obr. 5.3. | cs |
but.jazyk | angličtina (English) | |
but.program | Informační technologie | cs |
but.result | práce byla úspěšně obhájena | cs |
dc.contributor.advisor | Müller, Petr | en |
dc.contributor.author | Hellebrandt, Lukáš | en |
dc.contributor.referee | Vojnar, Tomáš | en |
dc.date.created | 2014 | cs |
dc.description.abstract | Práce se zabývá detekcí nedefinovaného chování v programech v jazyce C. Zaměřujemese na nedefinované chování vznikající nesprávnou prací se sekvenčními body a vedlejšími efekty. Provedeme teoretický rozbor a pojmy jako nedefinované chování nebo vedlejší efekt zasadíme do kontextu práce. Dále vysvětlíme nebezpečnost konstrukcí vedoucích k nedefinovanému chování. Navrhneme metodu pro automatickou detekci zmíněného druhu nedefinovaného chování. Nakonec navrhneme a implementujeme nástroj pro jeho automatizovanou statickou detekci a popíšeme principy funkce tohoto nástroje. Při jeho návrhu klademe, narozdíl od současných řešení, důraz na funkčnost i v případě přístupu k paměti přes ukazatel nebo z volané funkce. Práce obsahuje příklady nebezpečných konstrukcí, na některých z nich jsou demonstrovány funkce vytvořeného nástroje. | en |
dc.description.abstract | This thesis engages in detection of undefined behavior in the C language programs. We focus on undefined behavior stemming from incorrect work with sequence points and side effects. We perform a theoretical analysis and put terms like undefined behavior or side effect in context of the paper. Furthermore, we explain dangerousness of the constructs leading to undefined behavior. We propose a method for automated detection of the mentioned kind of undefined behavior. Finally, we design and implement a tool for its automated static detection and show the principles of the tool’s function. While designing the tool, contrary to current solutions, we stress functionality even in cases like accessing the memory via a pointer or from a called function. The thesis contains examples of dangerous constructs, functions of the created tool are demonstrated on some of them. | cs |
dc.description.mark | C | cs |
dc.identifier.citation | HELLEBRANDT, L. Vyhledávání výrazů s nedefinovaným chováním v jazyce C [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2014. | cs |
dc.identifier.other | 79729 | cs |
dc.identifier.uri | http://hdl.handle.net/11012/56542 | |
dc.language.iso | en | cs |
dc.publisher | Vysoké učení technické v Brně. Fakulta informačních technologií | cs |
dc.rights | Standardní licenční smlouva - přístup k plnému textu bez omezení | cs |
dc.subject | Clang | en |
dc.subject | LLVM | en |
dc.subject | jazyk C | en |
dc.subject | nedefinované chování | en |
dc.subject | statická analýza | en |
dc.subject | vedlejší efekt | en |
dc.subject | sekvenční bod | en |
dc.subject | Clang | cs |
dc.subject | LLVM | cs |
dc.subject | C language | cs |
dc.subject | undefined behavior | cs |
dc.subject | static analysis | cs |
dc.subject | side effect | cs |
dc.subject | sequence point | cs |
dc.title | Vyhledávání výrazů s nedefinovaným chováním v jazyce C | en |
dc.title.alternative | Detection of Expressions with Undefined Behavior in C Language | cs |
dc.type | Text | cs |
dc.type.driver | bachelorThesis | en |
dc.type.evskp | bakalářská práce | cs |
dcterms.dateAccepted | 2014-06-19 | cs |
dcterms.modified | 2020-05-10-16:11:31 | cs |
eprints.affiliatedInstitution.faculty | Fakulta informačních technologií | cs |
sync.item.dbid | 79729 | en |
sync.item.dbtype | ZP | en |
sync.item.insts | 2025.03.18 18:47:00 | en |
sync.item.modts | 2025.01.15 19:35:58 | en |
thesis.discipline | Informační technologie | cs |
thesis.grantor | Vysoké učení technické v Brně. Fakulta informačních technologií. Ústav inteligentních systémů | cs |
thesis.level | Bakalářský | cs |
thesis.name | Bc. | cs |