dc.contributor.advisor | Desnoyers, Peter | |
dc.creator | Aschenbrenner, Vojtěch | |
dc.date.accessioned | 2023-05-11T14:27:45Z | |
dc.date.available | 2023-05-11T14:27:45Z | |
dc.date.issued | 2023 | |
dc.identifier.uri | http://hdl.handle.net/20.500.11956/180121 | |
dc.description.abstract | Ačkoliv je implementace ovladače blokového zařízení v uživatelském prostoru mo- derního operačního systému možná, je velmi neobvyklá a často dosahuje velmi nízkého výkonu. Možnost snadno implementovat vysoce výkonný ovladač bloko- vého zařízení v uživatelském prostoru by dovolila rychlejší ověřování vědeckých poznatků z oblasti datových úložišť a umožnila by navrhovat bloková zařízení, která fungují velmi odlišně od těch tradičních. V této práci představujeme "Block Device in Userspace" (BUSE), což je linuxový modul a komunikační protokol, který umožňuje vývoj vysoce výkonného ovla- dače blokového zařízení v uživatelském prostoru. V porovnání s dosud existují- cími přístupy BUSE výborně škáluje na moderních vícejádrových architekturách, poskytuje nejméně 7x vyšší propustnost a nabízí výrazně jednodušší nastavení. Modul komunikuje s ovladačem v uživatelském prostoru přes sdílenou paměť, což eliminuje nadbytečné kopírování paměti. BUSE dále řeší případné konziste- nční problémy typu zápis po zápisu či čtení po zápisu, které jsou způsobeny více frontami bez synchronizace v příslušné části operačního systému. Tím je výrazně usnadněna implementace ovladače v uživatelském prostoru, která se může plně věnovat problémové doméně. Jako demonstraci použití BUSE práce dále představuje "Block Device in S3" (BS3). Jedná... | cs_CZ |
dc.description.abstract | Implementation of block device drivers in userspace of modern general-purpose operating systems, although possible, is fairly uncommon, poorly supported and usually achieves only low performance. Being able to implement high- performance drivers in userspace with ease would allow for faster iterations in storage research and would make it possible to design block devices which operate in radically different ways. In this thesis, we present Block Device in Userspace (BUSE), a Linux ker- nel module and communication protocol which makes it easy to develop userspace block-device drivers. Compared to the existing approaches, BUSE can scale on modern multicore architectures and provides at least 7x higher throughput with significantly simpler setup. Furthermore, the kernel module communicates with the userspace driver through shared memory, eliminating an extraneous memory copy. BUSE also solves the write-after-write and read- after-write consistency issues which stem from the use of multiple hardware queues in the Linux storage stack, allowing the implementation to focus on the domain of the problem. As a proof-of-concept, we implemented Block Device in S3 (BS3), a userspace block device implementation backed by Amazon S3 (or any other S3-compatible storage) on top of BUSE. BS3 can be used as a generic disk... | en_US |
dc.language | English | cs_CZ |
dc.language.iso | en_US | |
dc.publisher | Univerzita Karlova, Matematicko-fyzikální fakulta | cs_CZ |
dc.subject | linux|device|driver | en_US |
dc.subject | linux|zařízení|ovladač | cs_CZ |
dc.title | BUSE: Block Device in Userspace | en_US |
dc.type | rigorózní práce | cs_CZ |
dcterms.created | 2023 | |
dcterms.dateAccepted | 2023-04-19 | |
dc.description.department | Katedra softwarového inženýrství | cs_CZ |
dc.description.department | Department of Software Engineering | en_US |
dc.description.faculty | Matematicko-fyzikální fakulta | cs_CZ |
dc.description.faculty | Faculty of Mathematics and Physics | en_US |
dc.identifier.repId | 247788 | |
dc.title.translated | BUSE: Blokové zařízení v uživatelském prostoru | cs_CZ |
thesis.degree.name | RNDr. | |
thesis.degree.level | rigorózní řízení | cs_CZ |
thesis.degree.discipline | Softwarové systémy | cs_CZ |
thesis.degree.discipline | Software Systems | en_US |
thesis.degree.program | Informatika | cs_CZ |
thesis.degree.program | Computer Science | en_US |
uk.thesis.type | rigorózní práce | cs_CZ |
uk.taxonomy.organization-cs | Matematicko-fyzikální fakulta::Katedra softwarového inženýrství | cs_CZ |
uk.taxonomy.organization-en | Faculty of Mathematics and Physics::Department of Software Engineering | en_US |
uk.faculty-name.cs | Matematicko-fyzikální fakulta | cs_CZ |
uk.faculty-name.en | Faculty of Mathematics and Physics | en_US |
uk.faculty-abbr.cs | MFF | cs_CZ |
uk.degree-discipline.cs | Softwarové systémy | cs_CZ |
uk.degree-discipline.en | Software Systems | en_US |
uk.degree-program.cs | Informatika | cs_CZ |
uk.degree-program.en | Computer Science | en_US |
thesis.grade.cs | Uznáno | cs_CZ |
thesis.grade.en | Recognized | en_US |
uk.abstract.cs | Ačkoliv je implementace ovladače blokového zařízení v uživatelském prostoru mo- derního operačního systému možná, je velmi neobvyklá a často dosahuje velmi nízkého výkonu. Možnost snadno implementovat vysoce výkonný ovladač bloko- vého zařízení v uživatelském prostoru by dovolila rychlejší ověřování vědeckých poznatků z oblasti datových úložišť a umožnila by navrhovat bloková zařízení, která fungují velmi odlišně od těch tradičních. V této práci představujeme "Block Device in Userspace" (BUSE), což je linuxový modul a komunikační protokol, který umožňuje vývoj vysoce výkonného ovla- dače blokového zařízení v uživatelském prostoru. V porovnání s dosud existují- cími přístupy BUSE výborně škáluje na moderních vícejádrových architekturách, poskytuje nejméně 7x vyšší propustnost a nabízí výrazně jednodušší nastavení. Modul komunikuje s ovladačem v uživatelském prostoru přes sdílenou paměť, což eliminuje nadbytečné kopírování paměti. BUSE dále řeší případné konziste- nční problémy typu zápis po zápisu či čtení po zápisu, které jsou způsobeny více frontami bez synchronizace v příslušné části operačního systému. Tím je výrazně usnadněna implementace ovladače v uživatelském prostoru, která se může plně věnovat problémové doméně. Jako demonstraci použití BUSE práce dále představuje "Block Device in S3" (BS3). Jedná... | cs_CZ |
uk.abstract.en | Implementation of block device drivers in userspace of modern general-purpose operating systems, although possible, is fairly uncommon, poorly supported and usually achieves only low performance. Being able to implement high- performance drivers in userspace with ease would allow for faster iterations in storage research and would make it possible to design block devices which operate in radically different ways. In this thesis, we present Block Device in Userspace (BUSE), a Linux ker- nel module and communication protocol which makes it easy to develop userspace block-device drivers. Compared to the existing approaches, BUSE can scale on modern multicore architectures and provides at least 7x higher throughput with significantly simpler setup. Furthermore, the kernel module communicates with the userspace driver through shared memory, eliminating an extraneous memory copy. BUSE also solves the write-after-write and read- after-write consistency issues which stem from the use of multiple hardware queues in the Linux storage stack, allowing the implementation to focus on the domain of the problem. As a proof-of-concept, we implemented Block Device in S3 (BS3), a userspace block device implementation backed by Amazon S3 (or any other S3-compatible storage) on top of BUSE. BS3 can be used as a generic disk... | en_US |
uk.file-availability | V | |
uk.grantor | Univerzita Karlova, Matematicko-fyzikální fakulta, Katedra softwarového inženýrství | cs_CZ |
thesis.grade.code | U | |
uk.publication-place | Praha | cs_CZ |
uk.thesis.defenceStatus | U | |