Statická analýza v nástroji Facebook Infer zaměřená na chyby v RCU synchronizaci

but.committeeprof. Ing. Tomáš Vojnar, Ph.D. (předseda) doc. Ing. Ondřej Ryšavý, Ph.D. (místopředseda) Ing. František Grézl, Ph.D. (člen) doc. Ing. Tomáš Martínek, Ph.D. (člen) Dr. Ing. Petr Peringer (člen)cs
but.defenceStudent 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 A. Otázky u obhajoby: V práci popisujete niekoľko rôznych typov chýb pri práci s RCU, ktoré ste odhalili pri analýze danej technológie. Existujú podľa Vás ďalšie typy chýb, ktoré Váš zoznam nepokrýva? Z popisu "less-or-equal" operátoru vyplýva, že na porovnanie dvoch abstraktných kontextov stačí, že obsahujú rovnaké zložky. Akým spôsobom sa zohľadňujú jednotlivé vlastnosti týchto zložiek (napr. skóre u post-conditions)?cs
but.jazykangličtina (English)
but.programInformační technologiecs
but.resultpráce byla úspěšně obhájenacs
dc.contributor.advisorVojnar, Tomášen
dc.contributor.authorMarek, Danielen
dc.contributor.refereeMalík, Viktoren
dc.date.created2022cs
dc.description.abstractRead Copy Update (RCU) je synchronizační mechanismus, který se primárně používa v jádře Linuxu. Mezi jeho vyhledávané vlastnosti patří téměř nulová režie a vysoká rychlost při čtení sdílené paměti. RCU má soubor pravidel používaní, která je potřeba dodržovat, aby synchronizace fungovala správně. Náš výzkum ukázal, že neexistuje žádný analyzátor, který by pořádně kontroloval dodržování pravidel používaní RCU. K překonání tohoto problému jsme navrhli nový analyzátor, který se zaměřuje na porušování pravidel používaní RCU. Analyzátor je založen na statické analýze a implementován jako modul pro nástroj pro statickou analýzu Facebook/Meta Infer. Tato platforma byla vybrána, protože poskytuje škálovatelnost, která je potřebná při práci s tak rozsáhlým softwarem, jakým je Linuxové jádro. Navržený analyzátor je schopen detekovat více porušení pravidel používaní RCU, z nichž každé vede buď na race condition, nebo uváznutí. Je také schopen generovat varování pro situace, kdy je použito volání zastaralé funkce nebo když jsou detekována nekompatibilní primitiva RCU čtecího a zapisovacího procesu. Analyzátor je první svého druhu a může se stát základem pro budoucí vývoj analyzátorů v oblasti Read Copy Update. Kromě toho může být použit jako testovací nástroj v cyklu vývoje jádra Linuxu.en
dc.description.abstractRead Copy Update (RCU) is a synchronization mechanism, found mostly in the Linux kernel. Its sought-after features include almost zero overhead and high speed when reading shared memory. RCU has a set of rules of use, which need to be followed in order for the synchronization to work properly. To the best of our knowledge, there is no analyzer that sufficiently verifies if the RCU rules of use are adhered to. To overcome this, we propose a new analyzer, with the focus on finding violations in the use of RCU rules. The analyzer is based on static analysis and implemented as a module for the static analysis framework Facebook/Meta Infer. This platform was chosen because it provides scalability, which is needed when dealing with such an extensive software as the Linux kernel. The designed analyzer is capable of detecting multiple different ways in which the RCU usage rules can be broken, each causing either a race condition or a deadlock. It is also capable of generating warnings for situations when a deprecated function call is used or when the use of incompatible RCU reader and writer primitives is detected. The analyzer is the first of its kind. It may become a basis for future analyzer development in the field of Read Copy Update. Furthermore, it may be used as a test tool in the Linux kernel development cycle.cs
dc.description.markAcs
dc.identifier.citationMAREK, D. Statická analýza v nástroji Facebook Infer zaměřená na chyby v RCU synchronizaci [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2022.cs
dc.identifier.other145275cs
dc.identifier.urihttp://hdl.handle.net/11012/207395
dc.language.isoencs
dc.publisherVysoké učení technické v Brně. Fakulta informačních technologiícs
dc.rightsStandardní licenční smlouva - přístup k plnému textu bez omezenícs
dc.subjectRead Copy Updateen
dc.subjectRCUen
dc.subjectPorušení RCU pravidelen
dc.subjectFacebook/Meta Infer RCU analyzátoren
dc.subjectStatický RCU analyzátoren
dc.subjectRCU analyzátoren
dc.subjectRead Copy Updatecs
dc.subjectRCUcs
dc.subjectRCU rules violationcs
dc.subjectFacebook/Meta Infer RCU analyzercs
dc.subjectStatic RCU analyzercs
dc.subjectRCU analyzercs
dc.subjectRCU checkercs
dc.titleStatická analýza v nástroji Facebook Infer zaměřená na chyby v RCU synchronizacien
dc.title.alternativeStatic Analysis Using Facebook Infer Focused on Errors in RCU-Based Synchronisationcs
dc.typeTextcs
dc.type.driverbachelorThesisen
dc.type.evskpbakalářská prácecs
dcterms.dateAccepted2022-06-13cs
dcterms.modified2022-06-20-10:23:14cs
eprints.affiliatedInstitution.facultyFakulta informačních technologiícs
sync.item.dbid145275en
sync.item.dbtypeZPen
sync.item.insts2025.03.18 19:42:50en
sync.item.modts2025.01.16 00:51:05en
thesis.disciplineInformační technologiecs
thesis.grantorVysoké učení technické v Brně. Fakulta informačních technologií. Ústav inteligentních systémůcs
thesis.levelBakalářskýcs
thesis.nameBc.cs
Files
Original bundle
Now showing 1 - 4 of 4
Loading...
Thumbnail Image
Name:
final-thesis.pdf
Size:
1.66 MB
Format:
Adobe Portable Document Format
Description:
final-thesis.pdf
Loading...
Thumbnail Image
Name:
Posudek-Vedouci prace-25138_v.pdf
Size:
87.77 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Vedouci prace-25138_v.pdf
Loading...
Thumbnail Image
Name:
Posudek-Oponent prace-25138_o.pdf
Size:
90.07 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Oponent prace-25138_o.pdf
Loading...
Thumbnail Image
Name:
review_145275.html
Size:
1.48 KB
Format:
Hypertext Markup Language
Description:
file review_145275.html
Collections