<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Diet_libc</id>
	<title>Diet libc - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Diet_libc"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Diet_libc&amp;action=history"/>
	<updated>2026-05-28T18:03:22Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Diet_libc&amp;diff=67775&amp;oldid=prev</id>
		<title>imported&gt;Phzh: Form, typo</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Diet_libc&amp;diff=67775&amp;oldid=prev"/>
		<updated>2025-09-13T22:14:53Z</updated>

		<summary type="html">&lt;p&gt;Form, typo&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{SEITENTITEL:diet libc}}&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name                 = diet libc&lt;br /&gt;
|Logo                 = &lt;br /&gt;
|Screenshot           = &lt;br /&gt;
|Beschreibung         = &lt;br /&gt;
|Maintainer           = &lt;br /&gt;
|Programmiersprache   = &lt;br /&gt;
|Hersteller           = [[Felix von Leitner]], Olaf Dreesen et al.&amp;lt;ref&amp;gt;[https://www.fefe.de/dietlibc/credits.html Vollständige Übersicht der freiwilligen Beitragenden], abgerufen am 11. Juli 2025.&amp;lt;/ref&amp;gt;&lt;br /&gt;
|AktuelleVersion      = 0.35&lt;br /&gt;
|AktuelleVersionFreigabeDatum = 31. Oktober 2024&lt;br /&gt;
|AktuelleVorabVersion = &lt;br /&gt;
|AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
|Betriebssystem       = [[Linux]] (Architekturen: x86, ARM, SPARC, Alpha, PowerPC, MIPS, HPPA, S/390)&lt;br /&gt;
|Kategorie            = [[Laufzeitbibliothek]]&amp;lt;br /&amp;gt;[[Standardbibliothek]]&lt;br /&gt;
|Lizenz               = [[GNU General Public License|GPLv2]]&lt;br /&gt;
|Website              = [https://www.fefe.de/dietlibc/ www.fefe.de/dietlibc/]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;diet libc&amp;#039;&amp;#039;&amp;#039; ({{enS|diet}} ‚[[Diät]]‘) ist eine [[C-Standard-Bibliothek]] für [[Linux]]-Betriebssysteme. Mit diet libc soll es ermöglicht werden, für Linux besonders kompakte [[Binärdatei]]en zu erstellen. Die Bibliothek wurde von [[Felix von Leitner]] unter Mithilfe von bisher über 100 Freiwilligen&amp;lt;ref&amp;gt;[http://www.fefe.de/dietlibc/credits.html diet libc – credits]&amp;lt;/ref&amp;gt; entwickelt. Die Bibliothek unterliegt der [[GNU General Public License|GPL]]-Lizenz, Version 2, es sind jedoch beim Autor auch Lizenzen zum [[Linker (Computerprogramm)|Linken]] mit proprietärem Code erhältlich.&amp;lt;ref name=&amp;quot;book&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Fachöffentlichkeit vorgestellt wurde die Bibliothek unter anderem in Vorträgen von Leitners auf dem 8. Internationalen Linux-Kongress 2001&amp;lt;ref&amp;gt;[http://www.linux-kongress.org/2001/abstracts.html Vortrag vom 28. November 2001]&amp;lt;/ref&amp;gt; und den [[Chemnitzer Linux-Tage]]n 2002.&amp;lt;ref&amp;gt;[http://chemnitzer.linux-tage.de/2002/vortraege/detail.html?x=leitner1&amp;amp;zeit=14%3A00&amp;amp;datum=10.%20M%26auml%3Brz%202002&amp;amp;raum=113 diet libc: eine neue libc für Linux]. Vortrag vom 10. März 2003.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Funktionsumfang ==&lt;br /&gt;
Eine [[C-Standard-Bibliothek]] beinhaltet normalerweise etwa 200 [[Funktion (Programmierung)|Funktionen]], die von vielen in [[C (Programmiersprache)|C]] geschriebenen Programmen benötigt werden. Die unter Linux normalerweise verwendete [[GNU-C-Bibliothek|glibc]] geht zum einen deutlich über diesen Funktionsumfang hinaus und besteht außerdem aus einigen wenigen größeren [[Maschinensprache|Codeblöcken]], die von einem Programm, das auch nur eine dieser Funktionen nutzt, geladen werden müssen.&lt;br /&gt;
&lt;br /&gt;
Die diet libc wurde dagegen von Grund auf neu geschrieben und beschränkt sich auf die wichtigsten Funktionen der Standard-C-Bibliothek, zudem ist der Programmcode auf Geschwindigkeit und geringen Umfang optimiert. Der Name spielt dabei bereits auf die primäre Zielsetzung einer &amp;#039;&amp;#039;schlanken libc&amp;#039;&amp;#039; an, was zu einer Größe des [[Paketverwaltung|Programmpaketes]] von derzeit knapp 420 kB&amp;lt;ref&amp;gt;[http://packages.ubuntu.com/trusty/dietlibc-dev dietlibc in Ubuntu Packages]&amp;lt;/ref&amp;gt; gegenüber etwa 4,5 MB bei der glibc&amp;lt;ref&amp;gt;[http://packages.ubuntu.com/precise/libc6 Ubuntu – Informationen über Paket libc6]&amp;lt;/ref&amp;gt; führt. Die gesamte Bibliothek ist dabei modular aufgebaut, so dass jeweils nur die Funktionen geladen werden müssen, die tatsächlich in dem Programm genutzt werden.&amp;lt;ref name=&amp;quot;linuxmag&amp;quot;&amp;gt;[http://www.linux-magazin.de/Heft-Abo/Ausgaben/2006/07/Zuegig-abnehmen &amp;#039;&amp;#039;Zügig abnehmen&amp;#039;&amp;#039;]. Linux-Magazin 2006/07&amp;lt;/ref&amp;gt;&lt;br /&gt;
Gegenüber der glibc gibt dies einen deutlichen Gewinn an Geschwindigkeit&amp;lt;ref name=&amp;quot;book&amp;quot;&amp;gt;Karim Yaghmour: [http://books.google.de/books?id=yz-BwCDLH3wC&amp;amp;pg=PA139&amp;amp;lpg=PA139&amp;amp;dq=diet+libc&amp;amp;source=bl&amp;amp;ots=mWGiOLVZTk&amp;amp;sig=xFeFDxFqAgMRDCEFmxPPF0g5Gkk&amp;amp;hl=de&amp;amp;ei=zH_oSv6NAsyNsAazmMySDg&amp;amp;sa=X&amp;amp;oi=book_result&amp;amp;ct=result&amp;amp;resnum=3&amp;amp;ved=0CBMQ6AEwAjgU#v=onepage&amp;amp;q=diet%20libc&amp;amp;f=false &amp;#039;&amp;#039;Building embedded Linux systems&amp;#039;&amp;#039;]. O’Reilly Media, Inc., 2003, S. 139ff.&amp;lt;/ref&amp;gt; und die kompilierten Programme werden wesentlich kleiner.&amp;lt;ref&amp;gt;[http://bwachter.lart.info/projects/dietlinux/codesize.html Some thoughts about codesize]&amp;lt;/ref&amp;gt; Ein vollständiger Ersatz der glibc ist auf Grund des Umfanges dieser bisher noch nicht möglich, wobei jedoch mit jeder neuen Version der diet libc weitere Funktionen zu dieser hinzugefügt werden. Darüber hinaus gibt es eine Reihe von [[Patch (Software)|Patches]], mit denen insbesondere [[Kommandozeile]]nprogramme und [[Server (Software)|Server]] an die diet libc angepasst werden können.&amp;lt;ref&amp;gt;[http://www.t2-project.org/packages/dietlibc.html Reihe von Patches, um einige Linux-Programme diet libc-kompatibel zu machen]&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Webarchiv |url=http://page.mi.fu-berlin.de/~dreesen/diet_it/ |text=Ein weiteres Patcharchiv |wayback=20050910061934}}&amp;lt;/ref&amp;gt; Programme müssen für die Verwendung der diet libc zudem generell neu kompiliert werden.&lt;br /&gt;
&lt;br /&gt;
== Entwicklungsgeschichte ==&lt;br /&gt;
Die Anfänge der Entwicklung der diet libc sind nur schlecht nachvollziehbar, da die ältesten Versionen undatiert sind; die älteste noch öffentlich zugängliche Version ist die &amp;#039;&amp;#039;0.7&amp;#039;&amp;#039; vom 16. Januar 2001, die Changelogs reichen bis zu einer Version &amp;#039;&amp;#039;0.5.9&amp;#039;&amp;#039; zurück.&amp;lt;ref&amp;gt;[http://www.fefe.de/dietlibc/oldnews.html diet libc – old news]&amp;lt;/ref&amp;gt; Inzwischen liegt die Bibliothek in der Version &amp;#039;&amp;#039;0.35&amp;#039;&amp;#039; vor, die am 31. Oktober 2024 erschienen ist.&lt;br /&gt;
&lt;br /&gt;
== Verwendung ==&lt;br /&gt;
Verwendung findet die diet libc vor allem für [[freie Software]] im Bereich von [[Eingebettetes System|eingebetteten Systemen]].&amp;lt;ref name=&amp;quot;book&amp;quot; /&amp;gt; Die GPL erlaubt kein Linken bei [[proprietär]]en Programmen, daher wird hier die unter der [[LGPL]] stehende [[uClibc]] bevorzugt. Zudem unterstützt die uClibc noch mehr Architekturen, ist jedoch wie die normale glibc nicht modular. Beide Bibliotheken werden auch von [[T2 SDE]]&amp;lt;ref&amp;gt;[http://www.t2-project.org/targets/embedded/ T2 SDE Embedded]&amp;lt;/ref&amp;gt; unterstützt. Der Autor bietet selbst auch kommerzielle Lizenzen für die diet libc an, wenn Interessierte das Projekt sponsern oder einen signifikanten Beitrag geleistet haben.&lt;br /&gt;
&lt;br /&gt;
Die diet libc wird auch für [[Linux-Distribution]]en eingesetzt, deren Ziel eine besondere Kompaktheit und geringe Größe ist.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://bwachter.lart.info/projects/dietlinux/doc.html#Introduction |titel=DietLinux -- Documentation |abruf=2025-07-11}}&amp;lt;/ref&amp;gt; Auch in den während des [[Bootvorgang]]s benutzten [[initrd]]- beziehungsweise [[initramfs]]-Systemen diverser konventioneller Linux-Distributionen wird diet libc aus Platz- und Geschwindigkeitsgründen verwendet.&amp;lt;ref name=&amp;quot;linuxmag&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hauptsächlich wird diet libc für [[Linker (Computerprogramm)|statische Linkungen]] verwendet, also den Fall, in dem die benötigten Funktionen der Bibliothek in dem Programm selbst enthalten sind, statt als eine weitere Datei auf dem System vorliegen zu müssen. Hierbei wird durch die Wahl der diet libc, zu einem kleineren Teil aber auch durch die statische Linkung selbst, Speicherplatz gespart.&amp;lt;ref name=&amp;quot;book&amp;quot; /&amp;gt; Diese Lösung wird auch vom Autor präferiert, eine dynamische Linkung wird nur unter [[IA-32|i386]] und bei neueren Versionen unter [[ARM-Architektur|ARM]] überhaupt unterstützt.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[musl]]&lt;br /&gt;
* [[Newlib]]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:C-Bibliothek]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Phzh</name></author>
	</entry>
</feed>