SC(8): MirageOS und Linux als Unikernel
1 Stunde 1 Minute
Podcast
Podcaster
Beschreibung
vor 3 Jahren
In dieser achten Sendung des SystemCalls beschäftigen wir uns mit
dem Thema Unikernels. Unter Unikernels versteht man auf die
Zielanwendung optimierte, oftmals im Cloud-Bereich eingesetzte
Images für virtuelle Maschinen. Durch die zielgenaue Anpassung an
die Anwendung soll nur Code enthalten sein, der wirklich
gebraucht wird, was die Kosten dieser VMs im Gegensatz zu einem
Standard-Linux deutlich senkt, Bootzeiten erheblich verkürzt und
Angriffsfläche reduziert. Dadurch sollen physische Server besser
mit virtuellen Maschinen ausgenutzt werden, weil nicht jede
virtuelle Maschine, die effektiv ohnehin nur eine einzige Aufgabe
in der Cloud hat, ein volles Linux und den vollen Userspace
mitbringen muss.
Stefan stellt den "Großvater" der Unikernel vor - MirageOS
(ASPLOS'13), was die Idee in einem clean-slate Ansatz erarbeitet
hat. Mirage wurde in OCaml geschrieben, einer typsicheren
funktionalen/objektorientierten Programmiersprache. Basierend auf
der Idee der Bibliotheksbetriebesysteme (Library OS) ist das
gesamte System, in ein Image für den Xen-Hypervisor
zusammengelinkt. Betriebssystemfunktionalität kann so von der
Anwendung wie eine normale Bibliothek verwendet werden. So kann
die OCaml Toolchain das gesamte System, also
Betriebssystemfunktionalität und die Anwendung durchoptimieren
(Whole-System-Optimization), d.h. nur Code im VM Image
einschließen, der wirklich von der Anwendung gebraucht wird.
Configurationsoptionen werden hier auch als Code gesehen, der dem
Compiler zur Optimierung zur Verfügung steht. Wir besprechen
neben einigen Grunddaten von MirageOS, vor allem die
durchgeführte Evaluation.
Im zweiten Thema beschreibt Florian den nächsten Schritt in
Richtung Linux' Dominanz (HotOS'19). Die Autoren beschreiben in
dem Paper die Entwicklung eines prototypischen Linux-Targets, bei
dem die Anwendung zusammen mit dem Kernel gebunden wird und die
Unterscheidung zwichen Kernel- und Userspace eingerissen wird.
Dazu wurden die Systemrufe durch Funktionsaufrufe überarbeitet
und das main-Symbol für den Startpunkt der Anwendung eingefügt.
In einer ersten Evaluation konnte die Latenz eines Echo-Servers
halbiert werden.
Links
unikernel.org
Unikernels: Library Operation Systems for the Cloud
Anil Madhavapeddy, Richard Mortier, Charalampos Rotsos, David
Scott, Balraj Singh, Thomas Gazagnaire, Steven Smith, Steven Hand
and Jon Crowcroft (2012). Unikernels: Library Operating Systems
for the Cloud ACM SIGARCH Computer Architecture News 41.1. DOI:
10.1145/2490301.2451167
ACM
unikernel.org
Unikernels: The Next Stage of Linux's Dominance
Ali Raza, Parul Sohal, James Cadden, Jonathan Appavoo, Ulrich
Drepper, Richard Jones, Orran Krieger, Renato Mancuso, and Larry
Woodman (2019). Unikernels: The Next Stage of Linux's Dominance.
In Proceedings of the Workshop on Hot Topics in Operating Systems
(HotOS '19). DOI: 10.1145/3317550.3321445
ACM
Authors Copy
Intro-/Outrotheme
the_emergent
Weitere Episoden
50 Minuten
vor 1 Monat
1 Stunde 8 Minuten
vor 2 Jahren
50 Minuten
vor 2 Jahren
52 Minuten
vor 2 Jahren
1 Stunde 13 Minuten
vor 3 Jahren
In Podcasts werben
Kommentare (0)