Jamie-Dee Zielke

System Administrator

Hardware Schrauber

Programmier Chaot

In love with Linux

Jamie-Dee Zielke

System Administrator

Hardware Schrauber

Programmier Chaot

In love with Linux

Blog Post

Bloat – Was ist das und ergeben minimal-bloat Systeme Sinn?

27. Februar 2024 Allgemein
Bloat – Was ist das und ergeben minimal-bloat Systeme Sinn?

“Bloat” bedeutet im Kontext der IT “aufgebläht”, das kann in verschiedenen Bereichen auftauchen:
Vom hohen Ressourcenverbrauch, langsame Performance diesbezüglich, bis hin zum simplen: “Datei ist zu groß”. Ich glaube, für GNU/Linux Nutzer muss ich den Begriff nicht groß erklären.
Doch warum ist “Bloat” bzw. sind “minimal-bloat” überhaupt relevant? Wann sollten solche Systeme minimal-bloat Systeme eingesetzt werden, wann ist der Bloat mehr oder weniger irrelevant? Beschäftigen wir uns erst mal mit der Frage:

“Bloat” beschreibt, wie schon angesprochen, diverse Sachen in der IT, die aber alle das gleiche Bedeuten. Unnötig große, überladene Programme, die nicht nur das Host-System massiv verlangsamen sondern auch unnötig “befüllen” können. Also grob beschrieben: Ein “Bloated” Programm verbraucht viel Speicherplatz und oder viele Ressourcen, auch wenn es nicht unbedingt nötig sein muss. “Minimal-Bloat” ist das genaue Gegenteil: Programme nur auf das nötigste reduziert, i.d.R. getrimmt auf Performance. Und diesen Ansatz kann man weiter verfolgen, z.B. indem man ein GUI Programm auf eine reine Konsolenanwendung “reduziert”.

Die Gründe warum Bloat entstehen kann, können verschiedener nicht sein. Von nicht optimierten oder clever geschriebenen Code, kompletter Überladung von Funktionen oder auch von zusätzlichen Dependencies, also benötigte Zusatzprogramme. All das kann sowohl den Speicherplatz als auch die Performance massiv beeinträchtigen.

Denken wir uns ein Beispiel aus. Nehmen wir an, wir benötigen einen simplen RSS Reader, der einfach nur den Feed ausgeben und neue Seiten einpflegen soll. Wir bauen ein simples GUI oder es bleibt bei einer einfachen Konsolenanwendung, wie “Newsboat”. Das Programm ist simple geschrieben und kann nur das, was der Nutzer / Programmierer auch wirklich wollte. Doch nun bauen wir noch mehr Funktionen ein, z.B. eine RSS Feed Suche direkt im Reader. Dann hübschen wir das GUI noch auf, bauen vielleicht noch einen Editor für das Aussehen ein. Eine Funktion um einen Beitrag sofort abzuspeichern? Eigentlich sinnbefreit, weil der Text ja trotzdem gespeichert ist, aber egal – wir können es, also machen wir es. Und so ist der einst simple Reader mit nur wenigen Funktionen schnell zu einer gigantischen Software mutiert, die viele Funktionen erfüllen kann, obwohl sie nie wirklich von Nöten waren. Nun ist unser Programm mal schnell doppelt so groß, der Ressourcenverbrauch schießt in die Höhe und auch die Performance ist nun unterirdisch. Wir haben so eben ein Programm “bloaty” gemacht.

Windows ist wohl das Erste, was den meisten beim Thema “Bloat” einfällt. Windows hat von Haus aus einen sehr großen Ressourcenverbrauch und auch sehr viele Programme die Standardgemäß vorinstalliert sind, wovon die Hälfte, von den meisten Benutzern, eh nie verwendet werden. So kann eine frische Windows-Installation gerne mal 30gb betragen und der RAM Verbrauch pegelt sich bei 2gb ein. Das System ist “frisch”, warum ist es schon so voll und frisst Ressourcen? Windows ist in erster Linie nicht auf “Schlankheit” getrimmt, es kommt mit fetten Paketen, damit es “out-of-the-box” so gut funktionieren kann, wie es nur geht. Codecs, Suites, Multimedia und auch Tools sind vorinstalliert, damit man das System in Gänze verwenden kann, ohne viel hinzu zu installieren. Doch damit wird Windows extrem bloaty – wer nach ressourcensparende Programme sucht, ist hier gänzlich falsch.

Das genaue Gegenteil, als Beispiel bleiben wir erst mal beim RSS Reader. Denn dieser ist mit dem GUI viel zu groß und verbraucht unnötig Ressourcen. Wir bleiben bei der Konsolenanwendung und ignorieren das GUI. Und warum soll das Programm nun auch Seiten einpflegen können? Diese Funktion fliegt raus, die Seiten werden nun mit Hilfe einer simplen Config Datei eingepflegt. Und nun haben wir das Programm nicht nur komplett ausgemistet, sondern es auf das nötigste Reduziert. Software, wie die “Suckless Software” ist genau darauf ausgelegt -> Auf das Nötigste reduziert. Das bedeutet nicht, dass sie schlecht oder gar unvollständig sind, es bedeutet lediglich, dass nur das vorhanden ist, was auch wirklich benötigt wird. Wer mehr will, kann sich gerne selbst daran beteiligen oder die Software wechseln. Wer hier dann bei reiner Free und Open-Source Software bleibt, kann einfach fröhlich weiter an den Programmen herumschrauben – die Modularität ist damit ja gegeben.

Überall da, wo Ressourcen knapp sind oder die Performance im Vordergrund liegt. Server, alte oder schwache Computer, zugeschnittene Systeme und Set-Ups / Rigs können sehr von minimal-bloat Software profitieren. Je mehr und je größer die Programme auf einem Server sind, desto größer ist die Gefahr eines Hacking-Angriffes oder auch von zu hoher Auslastung. Auf einem alten Thinkpad kann solche Software das Gerät so schnell machen, dass das Alter des Gerätes keine wirkliche Rolle spielt.
Ich selbst habe mein Notebook so minimal aufgesetzt, wie ich es nur wollte. Damit konnte ich den Verbrauch meiner sowieso schon knappen Komponenten drastisch reduzieren und auch meine Akkulaufzeit fast schon verdreifachen.

“Bloat” liegt gerne mal im Auge des Betrachters. Für absolute hardcore “Minimal-Setups” ist sogar schon eine 2mb große .log Datei “Bloat”. Nicht jeder muss sein System auf das nötigste abspecken, Funktionalität sollte immer an oberster Stelle stehen. Vor allem ist der “Bloat” oftmals nicht zu vermeiden, wer viel mit Photoshop arbeitet, muss sich mit Windows / MacOS_x und dem Adobe Bloat zurechtfinden. Es gibt nicht für alles FOSS oder minimal-bloat Alternativen und das ist auch überhaupt nicht schlimm. Jedoch hilft es schon sehr darauf zu achten, was man alles installiert und ob man nicht mal vielleicht das ein oder andere Programm auswechselt / deinstalliert – es wird euren Geräten gut tun!

Write a comment

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden.