• čeština
    • English
    • русский
    • Deutsch
    • français
    • polski
    • українська
  • English 
    • čeština
    • English
    • русский
    • Deutsch
    • français
    • polski
    • українська
  • Login
View Item 
  •   Repository Home
  • Závěrečné práce
  • bakalářské práce
  • Fakulta informačních technologií
  • 2022
  • View Item
  •   Repository Home
  • Závěrečné práce
  • bakalářské práce
  • Fakulta informačních technologií
  • 2022
  • View Item
JavaScript is disabled for your browser. Some features of this site may not work without it.

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

Static Analysis Using Facebook Infer Focused on Errors in RCU-Based Synchronisation

Thumbnail
View/Open
review_145275.html (1.478Kb)
final-thesis.pdf (1.657Mb)
Posudek-Vedouci prace-25138_v.pdf (87.77Kb)
Posudek-Oponent prace-25138_o.pdf (90.06Kb)
Author
Marek, Daniel
Advisor
Vojnar, Tomáš
Referee
Malík, Viktor
Grade
A
Altmetrics
Metadata
Show full item record
Abstract
Read 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.
 
Read 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.
 
Keywords
Read Copy Update, RCU, Porušení RCU pravidel, Facebook/Meta Infer RCU analyzátor, Statický RCU analyzátor, RCU analyzátor, Read Copy Update, RCU, RCU rules violation, Facebook/Meta Infer RCU analyzer, Static RCU analyzer, RCU analyzer, RCU checker
Language
angličtina (English)
Study brunch
Informační technologie
Composition of Committee
prof. 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) Ing. Tomáš Martínek, Ph.D. (člen) Dr. Ing. Petr Peringer (člen)
Date of defence
2022-06-13
Process of 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 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)?
Result of the defence
práce byla úspěšně obhájena
Persistent identifier
http://hdl.handle.net/11012/207395
Source
MAREK, 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.
Collections
  • 2022 [309]
Citace PRO

Related items

Showing items related by title, author, creator and subject.

  • Porovnávání 3D multispektrálních snímků lidského těla 

    Šopák, Petr
    Táto práce se zabývá vytvoření nové aplikace RoScan Analyzer 2.0 vycházející z původní aplikace Roscan Analyzer pomocí jednoho z aktuálních herních platforem. Táto aplikace slouží pro vymodelování 3D modelu oskenované části ...
  • Dynamický signální analyzátor 

    Grohoľ, Stanislav
    Práca sa zaoberá určovaním prenosu dvojbranu pomocou vlastného dynamického signálneho analyzátora (DSA) a s tým spojenou problematikou. DSA pozostáva z prevodníkovej karty firmy National Instruments. V práci sú uvedené ...
  • Měření na vektorovém obvodovém analyzátoru 

    Lapčík, Josef
    Bakalářská práce je zaměřena na použití vektorového obvodového analyzátoru pro měření činitele odrazu, přenosu a rozptylových parametrů. V práci jsou popsány hlavní části vektorového obvodového analyzátoru a princip ...

Portal of libraries | Central library on Facebook
DSpace software copyright © 2002-2015  DuraSpace
Contact Us | Send Feedback | Theme by @mire NV
 

 

Browse

All of repositoryCommunities & CollectionsBy Issue DateAuthorsTitlesSubjectsThis CollectionBy Issue DateAuthorsTitlesSubjects

My Account

LoginRegister

Statistics

View Usage Statistics

Portal of libraries | Central library on Facebook
DSpace software copyright © 2002-2015  DuraSpace
Contact Us | Send Feedback | Theme by @mire NV