Libyang - modul pro Python 3
Loading...
Date
Authors
Sedlák, David
ORCID
Advisor
Referee
Mark
C
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
Abstract
Bakalářská práce se zabývá interakcí jazyků C a Python 3. Hlavním cílem bylo vytvoření uživatelsky přívětivého Python 3 rozhraní pro knihovnu libyang2, která své základní rozhraní poskytuje v jazyce C. Výsledné Python 3 rozhraní je vytvořené s využitím CFFI balíčku, ten umožňuje jednoduché použití v rámci jazyka Python 3 a adekvátním způsobem využívá jeho možností. Součástí práce je také srovnání několika vybraných přístupů a nástrojů, které interakci mezi jazyky C a Python 3 umožňují, včetně měření a porovnávání režie spojené s jejich použitím. Implementované rozhraní poslouží ke zjednodušení integrace podpory modelovacího jazyka YANG do síťových aplikací a zařízení.
This bachelor thesis deals with interaction between C and Python 3 languages. The main goal was to provide user friendly Python 3 binding for libyang2 library which provides interface for C language. Final Python 3 interface is created with help of CFFI package, is simply usable in Python 3 and adequately uses rich features of Python 3 language. Comparison of few approaches and tools to interact with C library from Python code is also covered in the thesis, including measurements of call overhead caused by them. Implemented Python 3 interface will help with integration of YANG modeling language in network applications and devices.
This bachelor thesis deals with interaction between C and Python 3 languages. The main goal was to provide user friendly Python 3 binding for libyang2 library which provides interface for C language. Final Python 3 interface is created with help of CFFI package, is simply usable in Python 3 and adequately uses rich features of Python 3 language. Comparison of few approaches and tools to interact with C library from Python code is also covered in the thesis, including measurements of call overhead caused by them. Implemented Python 3 interface will help with integration of YANG modeling language in network applications and devices.
Description
Citation
SEDLÁK, D. Libyang - modul pro Python 3 [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2020.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
doc. Ing. Richard Růžička, Ph.D., MBA (předseda)
doc. RNDr. Dana Hliněná, Ph.D. (místopředseda)
Ing. Bohuslav Křena, Ph.D. (člen)
Ing. Zbyněk Křivka, Ph.D. (člen)
doc. Ing. Michal Španěl, Ph.D. (člen)
Date of acceptance
2020-08-27
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: V části 3.3 (Porovnání výkonnosti přístupů k implementaci) píšete, že jste prováděl "větší množství opakování měřeného případu" a z tohoto množství pak vybíral výsledek. O kolik opakování se jednalo? Jak rychlé vaše rozhraní je? (viz. např. testy v sekci 3.2. - práce s binárním stromem, předání textového řetězce atd) Prováděl jste měření pouze nad binárním stromem? Jak lze interpretovat pokrytí kódu 90%?
Result of defence
práce byla úspěšně obhájena
Document licence
Standardní licenční smlouva - přístup k plnému textu bez omezení