<div class="csl-bib-body">
<div class="csl-entry">Garber, F. (2025). <i>Rust in the Linux Kernel: Analyzing Rust Implementations of Device Drivers</i> [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2025.127963</div>
</div>
-
dc.identifier.uri
https://doi.org/10.34726/hss.2025.127963
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/219628
-
dc.description
Arbeit an der Bibliothek noch nicht eingelangt - Daten nicht geprüft - Link noch nicht aktiv
-
dc.description
Abweichender Titel nach Übersetzung der Verfasserin/des Verfassers
-
dc.description.abstract
In dieser Arbeit wird die Leistung und der Energieverbrauch von Rust- und C-basierten virtuellen GPIO-Treibern im Linux-Kernel untersucht. Als Versuchsplattform wird ein Raspberry Pi 4 Model B verwendet. Die Forschung zielt darauf ab, die Auswirkungen der Integration von Rust, einer Sprache, die für ihre Speichersicherheitsfunktionen bekannt ist, in der Linux-Kernelentwicklung zu bewerten. Die Ergebnisse zeigen, dass Rust-basierte Treiber zwar mehr Sicherheit und Zuverlässigkeit bieten, aber im Vergleich zu ihren C-Pendants längere Laufzeiten und einen höheren Energieverbrauch haben. Konkret zeigte sich, dass das Rust-Modul eine um 8% längere Ausführungszeit für die Basisvariante, um 11% längere Ausführungszeit mit der Verwendung einer Warteschlange und eine um 14,3% längere Ausführungszeit bei der Verwendung einer Warteschlange und einem Spinlock aufweist. Messungen des Energieverbrauchs ergaben, dass Rust-Module in der Basisvariante 46,15% mehr Energie verbrauchten, 27,68% mehr mit einer Warteschlange und 33,86% mehr mit einer Warteschlange und einem Spinlock. Obwohl das Rust-basierte Modul langsamer war als das C-Äquivalent, könnte Rust immer noch eine brauchbare Alternative zu C sein, da das Debugging im Vergleich zu C einfacher und schneller ist, was auf lange Sicht zu sicherer und stabiler Software führt.
de
dc.description.abstract
This thesis investigates the comparative performance and energy consumption of Rust and C-based virtual General Purpose Input Output (GPIO) drivers in the Linux kernel. For the experimental platform a Raspberry Pi 4 Model B is used. The research aims to evaluate the implications of integrating Rust, a language known for its memory safety features, into the Linux kernel development. The findings reveal that Rust-based drivers, while offering enhanced safety and reliability, have longer execution times and higher energy consumption compared to their C counterparts. Specifically, Rust modules demonstrated an approximate 8% increase in execution time for the basic variant, 11% with the inclusion of a wait queue, and 14.3% with both a wait queue and a spinlock. Energy consumption measurements showed that Rust modules consumed 46.15% more energy in the basic variant, 27.68% more with a wait queue, and 33.86% more with both a wait queue and a spinlock. Although the Rust based module performed slower than the C equivalent, Rust might still be a viable alternative to C, because of easier and quicker debugging compared to C, which in the long run leads to safer and more stable software.
en
dc.language
English
-
dc.language.iso
en
-
dc.rights.uri
http://rightsstatements.org/vocab/InC/1.0/
-
dc.subject
Rust
en
dc.subject
Linux
en
dc.subject
Kernel
en
dc.subject
Device Driver
en
dc.title
Rust in the Linux Kernel: Analyzing Rust Implementations of Device Drivers
en
dc.title.alternative
Rust im Linux Kernel: Analyse von Rust Implementierungen von Device Drivers
de
dc.type
Thesis
en
dc.type
Hochschulschrift
de
dc.rights.license
In Copyright
en
dc.rights.license
Urheberrechtsschutz
de
dc.identifier.doi
10.34726/hss.2025.127963
-
dc.contributor.affiliation
TU Wien, Österreich
-
dc.rights.holder
Fabian Garber
-
dc.publisher.place
Wien
-
tuw.version
vor
-
tuw.thesisinformation
Technische Universität Wien
-
tuw.publication.orgunit
E191 - Institut für Computer Engineering
-
dc.type.qualificationlevel
Diploma
-
dc.identifier.libraryid
AC17654169
-
dc.description.numberOfPages
55
-
dc.thesistype
Diplomarbeit
de
dc.thesistype
Diploma Thesis
en
dc.rights.identifier
In Copyright
en
dc.rights.identifier
Urheberrechtsschutz
de
tuw.advisor.staffStatus
staff
-
item.languageiso639-1
en
-
item.grantfulltext
open
-
item.openairetype
master thesis
-
item.openaccessfulltext
Open Access
-
item.mimetype
application/pdf
-
item.openairecristype
http://purl.org/coar/resource_type/c_bdcc
-
item.cerifentitytype
Publications
-
item.fulltext
with Fulltext
-
crisitem.author.dept
E384-01 - Forschungsbereich Software-intensive Systems