Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Aktuelle Entwicklungen beim Linux-Kernel

Ähnliche Präsentationen


Präsentation zum Thema: "Aktuelle Entwicklungen beim Linux-Kernel"—  Präsentation transkript:

1 Aktuelle Entwicklungen beim Linux-Kernel
Thorsten Leemhuis Aktuelle Entwicklungen beim Linux-Kernel

2 %pre

3 %pre | whoami Image: CC BY 2.0 – paurian,

4 %pre |

5 %pre |

6 %pre |

7 %pre | whoami @Fedora

8 %pre | whoami @Fedora

9 %pre | whoami @home Quelle: a / /

10 bin kein Kernel-Entwickler
%pre | whoami @linux bin kein Kernel-Entwickler

11 Überblick über das große Ganze
%pre | whoami @linux Überblick über das große Ganze

12 %pre | this talk und genau der folgt

13 1. jüngste Entwicklungen 2. wichtige Veränderungen 3. Dinge in Arbeit
%pre | this talk 1. jüngste Entwicklungen 2. wichtige Veränderungen 3. Dinge in Arbeit

14 Neuerungen der aktuellen und der nächste Kernel-Version
%pre | this talk - 1. jüngste Entwicklungen - Neuerungen der aktuellen und der nächste Kernel-Version

15 das wichtige aus den vergangenen 12 bis 18 Monaten
%pre | this talk - 2. wichtige Veränderungen - das wichtige aus den vergangenen 12 bis 18 Monaten

16 Glaskugelblick auf die nächsten Monate
%pre | this talk - 3. Dinge in Arbeit - Glaskugelblick auf die nächsten Monate

17 BTW: Ja, das geht in dem Tempo weiter (das hier ist bereits Slide #17)
%pre | this talk BTW: Ja, das geht in dem Tempo weiter (das hier ist bereits Slide #17)

18 %pre | this talk Fragen aufschreiben! Wir haben viel vor uns

19 Teil 1: jüngste Entwicklungen

20 Aktuelle Kernel-Version: Linux 4.4
status Aktuelle Kernel-Version: Linux 4.4

21 status | Linux 4.4 am 11. Januar erschienen

22 Linux 4.4 ist ein "Longterm kernel"
status | Linux 4.4 Linux 4.4 ist ein "Longterm kernel"

23 wird zwei Jahre mit Korrekturen versorgt (wahrscheinlich sogar länger)
status | Linux 4.4 wird zwei Jahre mit Korrekturen versorgt (wahrscheinlich sogar länger)

24 Fedora 23 bekommt ihn dieser Tage als Update
status | Linux 4.4 Fedora 23 bekommt ihn dieser Tage als Update

25 vermutlich nutzt Ubuntu 16.04 LTS diese Kernel-Versionsreihe
status | Linux 4.4 vermutlich nutzt Ubuntu 16.04 LTS diese Kernel-Versionsreihe

26 Nächste Kernel-Version: Linux 4.5
status Nächste Kernel-Version: Linux 4.5

27 Hauptentwicklungsphase vor 4½ Wochen zu Ende gegangen
status | Linux 4.5 Hauptentwicklungsphase vor 4½ Wochen zu Ende gegangen

28 status | Linux 4.5 ETA ist der 14. März (+/- eine Woche)

29 Linux 4.4 Das ist neu in Linux 4.4

30 Verbesserungen am Treiber Virtio-Gpu ermöglichen Virgl 3D
Linux 4.4 Verbesserungen am Treiber Virtio-Gpu ermöglichen Virgl 3D

31 ermöglicht Hardware- Beschleunigung in VMs
Linux 4.4 | Virgl 3D ermöglicht Hardware- Beschleunigung in VMs (2D und 3D)

32 Nur für Linux (Wirt und Gast)
Linux 4.4 | Virgl 3D Nur für Linux (Wirt und Gast)

33 Erfordert Qemu 2.5 und Mesa 11.1
Linux 4.4 | Virgl 3D Erfordert Qemu 2.5 und Mesa 11.1

34 Linux 4.4 drm/vc4

35 Grafiktreiber für den Raspberry Pi
Linux 4.4 | drm/vc4 Grafiktreiber für den Raspberry Pi (alle Ausführungen)

36 (statt auf den proprietären Treiber in der Firmware zurückzugreifen)
Linux 4.4 | drm/vc4 erledigt alles selbst (statt auf den proprietären Treiber in der Firmware zurückzugreifen)

37 Linux 4.4 | drm/vc4 kann noch kein 3D

38 Linux 4.4 Log für MDRAID 5/6

39 Linux 4.4 | MDRAID Log verhindert Daten- Verfälschungen, falls das System beim Schreiben abstürzt

40 die Methode ähnelt einem Dateisystemjournal
Linux 4.4 | MDRAID Log die Methode ähnelt einem Dateisystemjournal

41 das Ganze erfordert einen Datenträger für das Log
Linux 4.4 | MDRAID Log das Ganze erfordert einen Datenträger für das Log

42 beseitigt das "write hole"
Linux 4.4 | MDRAID Log beseitigt das "write hole"

43 Linux 4.4 TCP-Verbesserungen

44 Linux 4.4 | TCP improvements
vor zwei Jahren: ~ SNYs pro Sekunde

45 Linux 4.4 | TCP improvements
jetzt: über SYNs pro Sekunde möglich

46 Linux 4.4 | TCP improvements
bessere Performance und DDoS-Attacken sind schwerer

47 Polling-Unterstützung im Block Layer
Linux 4.4 Polling-Unterstützung im Block Layer

48 mehr Durchsatz & niedrigere Latenzen bei High-End-SSDs
Linux 4.4 | Blk polling mehr Durchsatz & niedrigere Latenzen bei High-End-SSDs

49 vermeidet Interrupts unter Last (ähnliches Konzept wie bei NAPI)
Linux 4.4 | Blk polling vermeidet Interrupts unter Last (ähnliches Konzept wie bei NAPI)

50 bei Bedarf zuschaltbar
Linux 4.4 | Blk polling bei Bedarf zuschaltbar

51 mehr Details zu 4.4 hier: Linux 4.4 heise.de/-3053832
kernelnewbies.org/Linux_4.4 lwn.net/Kernel/Index/#Releases-4.4

52 Linux 4.5 Was Linux 4.5 bringen wird

53 (den in 4.4 integrierten Raspi-Grafiktreiber)
Linux 4.5 3D für drm/vc4 (den in 4.4 integrierten Raspi-Grafiktreiber)

54 3D-Treiber steckt in Mesa 11.1
Linux 4.5 | 3D for vc4 3D-Treiber steckt in Mesa 11.1

55 neuer Raspi- Grafiktreiberstack braucht noch viel Finetuning
Linux 4.5 | 3D for vc4 neuer Raspi- Grafiktreiberstack braucht noch viel Finetuning (im neuesten Rasbian schon testbar)

56 PowerPlay-Unterstützung in drm/amdgpu
Linux 4.5 PowerPlay-Unterstützung in drm/amdgpu

57 Linux 4.5 | amdgpu PowerPlay
R9 285, 380, Fury, Nano & andere GCN-1.2-GPUs (Codename "Volcanic Island")

58 Linux 4.5 | amdgpu PowerPlay
Reclocking und Power- Management bei den neuesten Radeon-GPUs von AMD

59 Linux 4.5 | amdgpu PowerPlay
verbessert 3D-Performance

60 Linux 4.5 | amdgpu PowerPlay
standardmäßig deaktiviert :-/ (fürs Erste)

61 Linux 4.5 | amdgpu PowerPlay
bei Kernel-Konfiguration aktivieren und mit amdgpu.powerplay=1 booten

62 Linux 4.5 SOCK_DESTROY

63 offene TCP-Verbindungen bei Bedarf schließen
Linux 4.5 | SOCK_DESTROY offene TCP-Verbindungen bei Bedarf schließen

64 etwa beim Wechsel der Internet-Anbindung
Linux 4.5 | SOCK_DESTROY etwa beim Wechsel der Internet-Anbindung

65 vermeidet Unterbrechungen von Videos- Streams
Linux 4.5 | SOCK_DESTROY vermeidet Unterbrechungen von Videos- Streams

66 Linux 4.5 cgroup v2

67 Control Groups revamped
Linux 4.5 | cgroup2 Control Groups revamped

68 Neubau behebt Probleme des alten Ansatzes
Linux 4.5 | cgroup2 Neubau behebt Probleme des alten Ansatzes

69 Systemd wird das transparent unterstützen
Linux 4.5 | cgroup2 Systemd wird das transparent unterstützen

70 bislang nur Controller für Memory und IO
Linux 4.5 | cgroup2 bislang nur Controller für Memory und IO

71 Linux 4.5 ARM multiplatform

72 Linux 4.5 | arm multiplatform
ein Kernel-Image bootet auf vielen verschiedenen ARM- Platformen/Boards (ARM v6 & v7)

73 Linux 4.5 | arm multiplatform
vor 5 Jahren begonnen

74 Linux 4.5 | arm multiplatform
wichtige Plattformen schon seit einer Weile fertig

75 Linux 4.5 | arm multiplatform
jetzt sind auch viele alte und weniger wichtige multiplatform-tauglich

76 das war Teil 1

77 next up

78 Teil 2: wichtige Veränderungen

79 wichtige Entwicklungen der vergangenen 12 bis 18 Monate
important changes wichtige Entwicklungen der vergangenen 12 bis 18 Monate

80 important changes eBPF

81 Extended Berkeley Packet Filter
changes | eBPF Extended Berkeley Packet Filter

82 changes | eBPF Berkeley Packet Filter/BPF: Was tcpdump nutzt, um nur die relevanten Pakete vom Kernel zu bekommen (vermeidet Overhead)

83 BPF wurde zu einer flexiblen VM umgearbeitet
changes | eBPF BPF wurde zu einer flexiblen VM umgearbeitet

84 VM == "abstract computing machine"
changes | eBPF VM == "abstract computing machine" (denkt an die Java VM und nicht an KVM/XEN/VMware/...)

85 das macht den eBPF schneller und flexibler
changes | eBPF das macht den eBPF schneller und flexibler

86 was den eBPF für neue Aufgaben interessant gemacht hat
changes | eBPF was den eBPF für neue Aufgaben interessant gemacht hat

87 changes | eBPF darunter: network traffic control, performance monitoring, tracing, ...

88 endlich Dtrace-ähnlicher Funktionsumfang unter Linux?
changes | eBPF endlich Dtrace-ähnlicher Funktionsumfang unter Linux?

89 important changes UEFI ESRT

90 Firmware-Updates über standardisierte UEFI- Mechanismen
important changes Firmware-Updates über standardisierte UEFI- Mechanismen

91 Firmware-Updates werden zu normalen Updates
changes | UEFI ESRT Firmware-Updates werden zu normalen Updates (grob gesagt)

92 von Fedora 23 unterstützt; kompatible Hardware kommt jetzt im Handel
changes | UEFI ESRT von Fedora 23 unterstützt; kompatible Hardware kommt jetzt im Handel

93 important changes userfaultfd

94 Post-copy Live Migration für Qemu/KVM
changes | userfaultfd Post-copy Live Migration für Qemu/KVM

95 Teile des Speicherinhalts werden erst *nach* Live Migration übertragen
changes | userfaultfd Teile des Speicherinhalts werden erst *nach* Live Migration übertragen

96 ermöglicht Live Migration auch unter hoher Last
changes | userfaultfd ermöglicht Live Migration auch unter hoher Last

97 (der Grafiktreiber für einige aktuelle und viele ältere GPUs von AMD)
important changes drm/radeon (der Grafiktreiber für einige aktuelle und viele ältere GPUs von AMD)

98 viele Verbesserungen in den letzten zwei Jahren
changes | radeon viele Verbesserungen in den letzten zwei Jahren

99 changes | radeon 3D Performance, Video-Beschleunigung, PM, DP MST, HiDPI, HDMI & DP Audio, ...

100 die Userland-Treiber sind auch viel besser geworden
changes | radeon die Userland-Treiber sind auch viel besser geworden (Mesa und LLVM)

101 (aka persistent memory)
important changes NVM/pmem (aka persistent memory)

102 neue Frameworks samt passender Treiber entstanden
important changes neue Frameworks samt passender Treiber entstanden

103 persistenter Speicher wird langsam alltagstauglich
changes | drivers persistenter Speicher wird langsam alltagstauglich

104 neue Versionen alle 9 Wochen
important changes (meta) neue Versionen alle 9 Wochen

105 man kann fast darauf wetten
changes | pace man kann fast darauf wetten manchmal 1 Woche weniger, manchmal 1 oder 2 mehr

106 ein neuer Longterm Kernel jeden Januar
important changes (meta) ein neuer Longterm Kernel jeden Januar

107 Longterm = min. 2 Jahre Support
changes | Longterm bessere Planbarkeit Longterm = min. 2 Jahre Support

108 jede Woche meist ein oder zwei Sicherheitslücken :-/
important changes (meta) jede Woche meist ein oder zwei Sicherheitslücken :-/

109 pro Jahr sind einige davon wirklich kritisch
changes | security pro Jahr sind einige davon wirklich kritisch

110 stellt euch also darauf ein!
changes | security stellt euch also darauf ein!

111 es werden mehr Tools eingesetzt, um Bugs zu finden
important changes (meta) es werden mehr Tools eingesetzt, um Bugs zu finden

112 changes | tools against bugs
fuzzing Trinity, Syzkaller

113 changes | tools against bugs
CI kbuild test robot aka "0-day", kernelci.org

114 Probleme bei der Entwicklung?
important changes (meta) Probleme bei der Entwicklung?

115 changes | development alternde Entwickler? zu wenig Beitragende? Review-Staus? rauer Umgangston?

116 schwieriges, komplexes Thema; die Kurzantwort:
changes | development schwieriges, komplexes Thema; die Kurzantwort:

117 vieles ist deutlich besser als vor 5 oder 10 Jahren
changes | development vieles ist deutlich besser als vor 5 oder 10 Jahren

118 aber ja, manche Dinge könnten oder sollten besser sein
changes | development aber ja, manche Dinge könnten oder sollten besser sein (wie so oft)

119 nichts wirklich außergewöhnliches #imho
changes | development nichts wirklich außergewöhnliches #imho

120 das war Teil 2

121 next up

122 Teil 3: Dinge in Arbeit (aka "WIP")

123 was die nächsten Monate bringen könnten
things in the works was die nächsten Monate bringen könnten

124 Kdbus auf jeden Fall nicht
WIP Kdbus auf jeden Fall nicht

125 Kdbus wurde aufgegeben
WIP | kdbus Kdbus wurde aufgegeben

126 Kernel-seitiger Ersatz für den D-Bus-Daemon
WIP | kdbus Kernel-seitiger Ersatz für den D-Bus-Daemon (der Dienst, der D-Bus-Nachrichten verteilt)

127 neuer Plan: ein universeller IPC-Mechanismus
WIP | kdbus neuer Plan: ein universeller IPC-Mechanismus IOW: eignet sich für mehr als nur das D-Bus-Protokoll

128 things in the works Btrfs

129 schon Jahre im Orbit und es scheint nicht mehr viel zu passieren
WIP | Btrfs schon Jahre im Orbit und es scheint nicht mehr viel zu passieren

130 Letzteres ist etwas gutes!
WIP | Btrfs Letzteres ist etwas gutes!

131 Entwickler stabilisieren das Dateisystem
WIP | Btrfs Entwickler stabilisieren das Dateisystem

132 ist es jetzt also endlich stabil?
WIP | Btrfs ist es jetzt also endlich stabil?

133 eine Frage wie "kann ich hier ins Wasser gehen?"
WIP | Btrfs eine Frage wie "kann ich hier ins Wasser gehen?"

134 die Antwort hängt von den eigenen Schwimmfähigkeiten ab
WIP | Btrfs die Antwort hängt von den eigenen Schwimmfähigkeiten ab

135 und von den jeweils aktuellen Bedingungen
WIP | Btrfs und von den jeweils aktuellen Bedingungen

136 sicher genug für Facebook, Suse und mich
WIP | Btrfs sicher genug für Facebook, Suse und mich

137 WIP | Btrfs aber: anderer Ansatz mit Ecken & Kanten, die Einarbeitungs-Bereitschaft erfordern

138 außerdem: Lohnt sich nur, wenn man Features von Btrfs braucht
WIP | Btrfs außerdem: Lohnt sich nur, wenn man Features von Btrfs braucht

139 things in the works ZFS

140 things in the works ZFS (wichtig: damit verlassen wir kurzzeitig die Kernel- Entwicklung bei Kernel.org)

141 Ubuntu 16.04 unterstützt ZFS von Haus aus
WIP | ZFS Ubuntu unterstützt ZFS von Haus aus (ZFS-Modul ein Teil des Kernel-Pakets)

142 WIP | ZFS Legal? Gute Frage!

143 allein deswegen würde ich es meiden #imho
WIP | ZFS Graubereich allein deswegen würde ich es meiden #imho

144 außerdem ist es "drangeklatscht" an den Kernel
WIP | ZFS außerdem ist es "drangeklatscht" an den Kernel (umgeht u.a. den Pagecache #afaik)

145 aber es gibt womöglich sinnvolle Einsatzgebiete
WIP | ZFS aber es gibt womöglich sinnvolle Einsatzgebiete (Know-How nötig afaics! Und vielleicht Btrfs-Umstieg gleich einplanen?)

146 Kernel Live Patching (KLP)
things in the works Kernel Live Patching (KLP)

147 Basis-Funktion jetzt eine Weile im Kernel
WIP | KLP Basis-Funktion jetzt eine Weile im Kernel

148 kann ~90% der typischen Sicherheitslücken stopfen
WIP | KLP kann ~90% der typischen Sicherheitslücken stopfen

149 mehr erst nach tiefgreif- enden, vieldiskutierten Umbauarbeiten
WIP | KLP mehr erst nach tiefgreif- enden, vieldiskutierten Umbauarbeiten (sucht nach "Compile-time stack validation")

150 things in the works Netzwerk

151 iptables-Nachfolger nft/nftables macht sich langsam
WIP | network iptables-Nachfolger nft/nftables macht sich langsam

152 Herausforderung: 100 GBit/s
WIP | network Herausforderung: 100 GBit/s

153 WIP | network Herausforderung: Layering in einer Welt mit SDN, OpenStack, Containern & Co.

154 Cluster-Support für MDRAID 1
things in the works Cluster-Support für MDRAID 1

155 bereits in Mainline und nähert sich Fertigstellung
WIP | Mdadm cluster bereits in Mainline und nähert sich Fertigstellung

156 things in the works richacls

157 flexiblere und konsistente ACLs
WIP | richacls flexiblere und konsistente ACLs (für NFS, Samba & Co.)

158 things in the works vulkan

159 OpenGL-Alternative bzw. - Nachfolger sowie Direct3D-12-Konkurrent
WIP | vulkan OpenGL-Alternative bzw. - Nachfolger sowie Direct3D-12-Konkurrent

160 Kürzlich fertiggestellt, wichtig für Games
WIP | vulkan Kürzlich fertiggestellt, wichtig für Games

161 3D-Support in Nouveau für Nvidias Maxwell-2.0-GPUs
things in the works 3D-Support in Nouveau für Nvidias Maxwell-2.0-GPUs

162 also der neuesten Nvidia-GPU-Generation
WIP | nouveau also der neuesten Nvidia-GPU-Generation

163 Sicherheitstechnik verhinderte bislang 3D-Beschleunigung
WIP | nouveau Sicherheitstechnik verhinderte bislang 3D-Beschleunigung

164 Lösung vielleicht schon in Linux 4.6
WIP | nouveau Lösung vielleicht schon in Linux 4.6 (Performance vermutlich wie gewohnt dürftig)

165 HSA = Heterogeneous System architecture
things in the works HSA on AMD HSA = Heterogeneous System architecture

166 (that's the long story really short)
WIP | HSA on AMD CPU oder GPU? Einfach den Prozessor nutzen, der die jeweilige Arbeit am besten erledigt (that's the long story really short)

167 things in the works year 2038

168 Kernel-Unterstützung dieses Jahr?
WIP | year 2038 Kernel-Unterstützung dieses Jahr? (Userland braucht wohl noch ein wenig länger…)

169 things in the works tinification

170 Eignung von Linux für das IoT verbessern
WIP | tinification Eignung von Linux für das IoT verbessern

171 aka "Kernel Self Protection Project"
things in the works Kernel-Hardening aka "Kernel Self Protection Project"

172 Selbstschutz, damit Sicherheitslücken weniger Auswirkungen haben
WIP | kernel hardening Selbstschutz, damit Sicherheitslücken weniger Auswirkungen haben Unfälle passieren halt :-/

173 Sicherheitstechniken verbessern
WIP | kernel hardening Sicherheitstechniken verbessern und dazu u.a. einige Funktionen von Grsecurity (PAX) einbauen

174 Realtime-Unterstützung (aka PREEMT_RT)
things in the works Realtime-Unterstützung (aka PREEMT_RT)

175 Weiterentwicklung und Pflege wirkten vorübergehend gefährdet
WIP | realtime Weiterentwicklung und Pflege wirkten vorübergehend gefährdet

176 WIP | realtime Gefahr ausgeräumt durch ein im Herbst gegründetes Collaboration-Project der LF

177 WIP | realtime Realtime KVM

178 selbst VMs sollen Echtzeitfähig werden
WIP | realtime selbst VMs sollen Echtzeitfähig werden

179 das war Teil 3

180 next up

181 %post

182 %post mehr Details?

183 zu all dem Kram gibt es Artikel, Präsentation und Videos im Web
%post | more details use the web, Luke! zu all dem Kram gibt es Artikel, Präsentation und Videos im Web

184 fragt mich, wenn ihr bei einer Internet-Suche nichts passendes findet
%post | more details fragt mich, wenn ihr bei einer Internet-Suche nichts passendes findet

185 %post | while I got you here
BTW schnell noch zwei Sachen!

186 %post | while I got you here
Leute, helft den Kernel zu testen

187 insbesondere, wenn Ihr Hardware abseits des Mainstreams habt
%post | testing insbesondere, wenn Ihr Hardware abseits des Mainstreams habt (das gilt noch mehr für alte oder exotische Hardware)

188 wenn ihr die nicht testet, macht es sonst keiner
%post | testing wenn ihr die nicht testet, macht es sonst keiner

189 Fehler fallen erst auf, wenn sie alt sind
%post | testing Fehler fallen erst auf, wenn sie alt sind

190 das erschwert Finden und Beseitigen der Ursache!
%post | testing das erschwert Finden und Beseitigen der Ursache!

191 %post | while I got you here
Feedback bitte

192 Ich mach das wieder, wenn ihr mir nicht sagt, wie schlecht ich war
%post | feedback Ich mach das wieder, wenn ihr mir nicht sagt, wie schlecht ich war

193 und die Veranstalter lassen mich, wenn Ihr es ihnen nicht sagt
%post | feedback und die Veranstalter lassen mich, wenn Ihr es ihnen nicht sagt

194 %post | feedback

195 %post Das wars! Fragen? (BTW: dies ist Slide #199)

196 Thorsten Leemhuis mailto: GPG Key: 4C583D2D irc: plus.google.com/ThorstenLeemhuis #EOF


Herunterladen ppt "Aktuelle Entwicklungen beim Linux-Kernel"

Ähnliche Präsentationen


Google-Anzeigen