|
20.
07.
2012
Go Channels on L4Re
Daniel Müller
TU Dresden
Verteidigung der Belegarbeit
Googles Programmiersprache Go als eine neue, typsichere und kompilierte
Sprache soll schnelle Anwendungsentwicklung mit performanter Ausführung
verbinden und stellt dabei auch Konzepte für Nebenläufigkeit bereit.
Speziell bietet Go Kanäle als Sprachmittel an, welche zur
Synchronisation und Datenübertragung zwischen nebenläufigen Aktivitäten
genutzt werden können. Da Kommunikation zwischen Prozessen in
mikrokernbasierten Systemen häufig auftritt, habe ich die Einsetzbarkeit
von Go und Kanälen auf L4 untersucht.
Der Vortrag stellt die Integration von Go in das L4 Runtime Environment
(L4Re) vor. Hierbei gehe ich insbesondere auf die Implementierung von
durch L4 bereitgestellten Kommunikationsprimitiven in Go ein und
erläutere darauf aufbauend die Anpassung von Go-Kanälen zur Nutzung von
Interprozesskommunikation (IPC) auf einem Mikrokern der L4-Familie
(Fiasco.OC). Erläutert wird das grundlegende Design, ausgewählte Details
der Implementierung und aufgetretene Probleme.
|