<?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=Large_File_Support</id>
	<title>Large File Support - 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=Large_File_Support"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Large_File_Support&amp;action=history"/>
	<updated>2026-05-17T12:05:59Z</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=Large_File_Support&amp;diff=530079&amp;oldid=prev</id>
		<title>imported&gt;BrunoBoehmler: /* Verwandte Probleme */ Datumsformat, Language, Kleinkram</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Large_File_Support&amp;diff=530079&amp;oldid=prev"/>
		<updated>2023-01-30T19:41:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Verwandte Probleme: &lt;/span&gt; Datumsformat, Language, Kleinkram&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Large File Support&amp;#039;&amp;#039;&amp;#039; (englisch für „Unterstützung großer Dateien“) ist eine Eigenschaft von [[Betriebssystem]]en oder [[Dateisystem]]en, sehr große Dateien öffnen und bearbeiten zu können. Häufig gibt das verwendete System diesen Grenzwert vor, bei einigen (älteren) [[Linux]]-Versionen sind dies z.&amp;amp;nbsp;B. 2 [[Gibibyte|GiB]] oder bei [[FAT32]] 4 GiB. Große [[Datenbank]]en auf Servern, [[Bildbearbeitung]] oder [[Videoschnitt]] benötigen aber häufig große Dateien (engl. &amp;#039;&amp;#039;Large Files&amp;#039;&amp;#039;), die deutlich umfangreicher sind, so dass eine solche Anwendung von einer kleinen Größenbeschränkung für Dateien nicht betroffen sein darf.&lt;br /&gt;
&lt;br /&gt;
== Beschreibung ==&lt;br /&gt;
Das Problem liegt bei den über Jahrzehnte sehr verbreiteten [[32-Bit]]-Betriebssystemen in der Größenbeschränkung von [[Integer (Datentyp)|Integer-Zahlen]]. Eine 32-Bit-Integer-Zahl kann nur Werte bis 2 GiB (mit [[Vorzeichen (Zahl)|Vorzeichen]]) oder 4 GiB (ohne Vorzeichen) darstellen. Zur Unterstützung sehr großer Dateien muss daher in 32-Bit-Programmen ein neuer [[Datentyp]] und zugehörige Betriebssystemfunktionen eingeführt werden, was ein Umschreiben alter Programme erforderlich macht. Ältere Versionen und insbesondere nicht mehr gewartete Programme können daher selbst bei Existenz eines &amp;#039;&amp;#039;Large File Support&amp;#039;&amp;#039; nur Dateien mit einer maximalen Größe von 2 oder 4 GiB verarbeiten.&lt;br /&gt;
&lt;br /&gt;
Die Entwicklung einer API mit 64-Bit Eigenschaften kam durch die Entwicklung der [[Festplatten]] zustande, die Anfang der 1990er Jahre die Gigabyte-Grenze durchbrachen. Anschließend entwickelte Dateisysteme stellten sich darauf ein – darunter das FreeBSD [[Unix File System|UFS2]], das Linux [[ext2]] (1993) und Windows [[NTFS]] (1993). Die Funktionalität des Betriebssystemkerns wurde dabei in verschiedener Art an die Applikationen durchgereicht, bis man sich im Unix-Umfeld beim herstellerübergreifenden „Large File Summit“ von 1996 auf eine gemeinsame API einigte.&amp;lt;ref&amp;gt;{{cite web|url=http://www.opengroup.org/platform/lfs.html|title=Adding Large File Support to the Single UNIX® Specification|publisher=The Open Group|date=1996-08-14}}&amp;lt;/ref&amp;gt; Diese wurde mit [[Single UNIX Specification]] Version 2 (UNIX 98) festgeschrieben.&lt;br /&gt;
&lt;br /&gt;
Die Arithmetik in den zugehörigen [[C (Programmiersprache)|C Compilern]] wurde als neuer 64-Bit „long long“ [[Datentypen in C#Datenmodell|Datentyp in C]] mit der [[Varianten der Programmiersprache C#C99|Standardisierung für C99]] (ab 1995) hinzugefügt. Dies folgte aus der Entwicklung der Betriebssysteme für [[32-Bit-Architektur]]en zur Nutzung eines ILP32-Programmiermodells, bei der die traditionellen Datentypen „int“, „long“, „pointer“ jeweils 32-Bit lang sind. Die traditionellen Funktionen „ftell“ und „fseek“ waren damit auf 32 Bit beschränkt. Für Posix „ftello“ / „fseeko“ sowie Windows „_ftelli64“ / „_fseeki64“ führten die Hersteller einen 64-Bit-Datentyp ein – anfangs mit unterschiedlicher Benennung.&lt;br /&gt;
&lt;br /&gt;
== Umsetzung ==&lt;br /&gt;
Die Übernahme der LFS API in 32-Bit Programme blieb lange unvollständig. Eine Untersuchung aus dem Jahre 2002 zeigte, dass auch Basisbibliotheken des Betriebssystems noch ohne LFS Unterstützung ausgeliefert wurden, und damit indirekt zahlreiche Anwendungen beschränkten.&amp;lt;ref&amp;gt;http://ac-archive.sourceforge.net/largefile/distros.html&amp;lt;/ref&amp;gt; Die vielgenutzte [[zlib]] Bibliothek unterstützte den 64-Bit Zusatz auf 32-Bit Plattformen erst ab 2006.&amp;lt;ref&amp;gt;https://www.zlib.net/ChangeLog.txt&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Im Bereich der PC/Workstations erledigte sich das Problem letztlich dadurch, dass nur noch [[64-Bit-Architektur]]en eingesetzt wurden. Microsoft Windows Server 2008 war die letzte Server-Version, die in 32 Bit ausgeliefert wurde.&amp;lt;ref&amp;gt;{{cite web|url=https://www.pcwelt.de/news/Windows-Server-2008-Microsofts-letztes-32-Bit-Betriebssystem-fuer-Server-334946.html|title=Windows Server 2008: Microsofts letztes 32-Bit-Betriebssystem für Server|publisher=PC Welt|date=2007-05-28|author= Panagiotis Kolokythas}}&amp;lt;/ref&amp;gt; [[Red Hat Enterprise Linux#Red Hat Enterprise Linux 7.x|Redhat Enterprise Linux 7]] wurde bei der Erstveröffentlichung 2014 nur noch als 64-Bit Betriebssystem bereitgestellt.&amp;lt;ref&amp;gt;{{cite web|url=https://access.redhat.com/solutions/509373|title=Are 32-bit applications supported in RHEL 7 or later releases?|publisher=Red Hat|date=2014-02}}&amp;lt;/ref&amp;gt; Das Ubuntu Linux stoppte 2019 die Auslieferung als 32-Bit Betriebssystem.&amp;lt;ref&amp;gt;{{cite web|url=https://discourse.ubuntu.com/t/intel-32bit-packages-on-ubuntu-from-19-10-onwards/11263|title=Intel 32bit packages on Ubuntu from 19.10 onwards|date=2019-06-02|publisher=Canonical|author=Will Cooke}}&amp;lt;/ref&amp;gt; Nvidia stoppte die Entwicklung von 32-Bit Treibern 2018 und liefert seit Januar 2019 auch keine Updates mehr.&amp;lt;ref&amp;gt;{{cite web|url=https://windowsreport.com/nvidia-32-bit-windows-end-support/|title=Nvidia discontinues support for 32-bit Windows platforms|publisher=Windows Report|author=Matthew Addams|date=2018-04-12}}&amp;lt;/ref&amp;gt; Mac OS von Apple stoppte 2018 die Entwicklung von 32-Bit, sodass [[macOS Mojave]] nur noch als 64-Bit Betriebssystem zur Verfügung steht.&amp;lt;ref&amp;gt;{{cite web|url=https://appleinsider.com/articles/18/06/05/mojave-is-apples-last-version-of-macos-to-support-32-bit-apps|title=Mojave is Apple&amp;#039;s last version of macOS to support 32-bit apps|publisher=Apple Insider|author=Steven Silver|date=2018-06-05}}&amp;lt;/ref&amp;gt; Mit [[Microsoft Windows 10]] wird die 32-Bit Unterstützung auf dem Desktop noch bis 2025 gepflegt, da es Anfang 2020 überhaupt erst die letzten Altversionen (Windows-7, Windows-8) ersetzt hat, die teils noch auf i386 Architekturen eingesetzt wurden.&amp;lt;ref&amp;gt;{{cite web|url=https://support.microsoft.com/de-de/help/4057281/windows-7-support-ended-on-january-14-2020|title=Der Support für Windows 7 endet am 14. Januar 2020|publisher=Microsoft|accessdate=2020-02-09}}&amp;lt;/ref&amp;gt; [[Microsoft Windows 11]] wird jedoch seit der Erstveröffentlichung 2021 nur als 64-Bit Betriebssystem bereitgestellt.&amp;lt;ref&amp;gt;{{cite web|url=https://www.heise.de/news/Systemvoraussetzungen-fuer-Windows-11-Wann-laeuft-es-woran-kann-es-scheitern-6118431.html|title=Systemvoraussetzungen für Windows 11: Wann läuft es, woran kann es scheitern|publisher=Heise|date=2021-06-25|author=Florian Müssig}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Im Bereich der mobilen Geräte fordert Google die native Unterstützung von 64-Bit durch Applikationen seit August 2019,&amp;lt;ref&amp;gt;{{cite web|url=https://www.golem.de/news/google-auf-dem-weg-zum-reinen-64-bit-android-1901-138792.html|title=Auf dem Weg zu reinen 64-Bit-Android-Apps|publisher=Golem|author=Andreas Sebayang|date=2019-01-17}}&amp;lt;/ref&amp;gt; sodass eine Abkündigung der 32-Bit Unterstützung in [[Android (Betriebssystem)|Android]] vorbereitet wird.&amp;lt;ref name=itmagazine2014&amp;gt;{{cite web|url=https://www.itmagazine.ch/Artikel/68830/Google_kuendigt_Ende_von_32-Bit-Android-Apps_per_2021_an.html|title=Google kündigt Ende von 32-Bit-Android-Apps per 2021 an|publisher=IT Magazin|author=mw|date=2019-01-17}}&amp;lt;/ref&amp;gt; Die Umstellung auf 64-Bit begann 2014, als alle neueren Prozessoren nur noch in 64-Bit angekündigt wurden, und mit [[Android (Betriebssystem)#Versionen|Android 5]] („Lollipop“) ein passendes Betriebssystem in diesem Jahr bereitgestellt wurde.&amp;lt;ref&amp;gt;{{cite web|url=https://www.android-user.de/64-bit-android-diese-prozessoren-gibt-es-diese-veraenderungen-kommen/|title=64-Bit-Android: Diese Prozessoren gibt es, diese Veränderungen kommen|date=2014-08-26|publisher=Android User}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=itmagazine2014 /&amp;gt; Apple hatte die Umstellung schon vorher mit dem 64-Bit [[Apple A7]] begonnen, der 2013 vorgestellt wurde. Google lieferte den Entwicklerarbeitsplatz unter Linux dann ab 2015 nur noch für 64-Bit aus.&amp;lt;ref&amp;gt;{{cite web |url=https://issuetracker.google.com/issues/37074522 |title=Platform-tools 23.1.0 Linux changed to 64-bit without notice |publisher=Android Public Tracker |date=2015-12-11 |quote=It turns out the android-sdk-linux/platform-tools content is 32-bit ELF in 23.0.1 but 64-bit ELF in 23.1_rc1 and 23.1.0. […] I set ANDROID_EMULATOR_FORCE_32BIT=true […] 23.0.1 is the last 32-bit Linux build.}}&amp;lt;/ref&amp;gt; Im Mai 2019 lag die Verbreitung von Android-Versionen unterhalb 5 noch bei etwa zehn Prozent.&amp;lt;ref&amp;gt;{{cite web|url=https://de.statista.com/statistik/daten/studie/180113/umfrage/anteil-der-verschiedenen-android-versionen-auf-geraeten-mit-android-os/|title=Anteile der verschiedenen Android-Versionen an allen Geräten mit Android OS weltweit im Zeitraum 01. bis 07. Mai 2019|publisher=Statista|author=F. Tenzer|date=2019-11-14}}&amp;lt;/ref&amp;gt; Für den [[Google Play]] [[App Store]] wurde verfügt, dass ab August 2019 immer auch 64-Bit Versionen der Apps bereitgestellt werden müssen, ausgenommen davon waren Spiele, für die diese Anforderung ab August 2021 gilt.&amp;lt;ref&amp;gt;{{cite web|url=https://www.itmagazine.ch/artikel/68830/Google_kuendigt_Ende_von_32-Bit-Android-Apps_per_2021_an.html|title=Google kündigt Ende von 32-Bit-Android-Apps per 2021 an|date=2019-01-17|publisher=IT Magazine}}&amp;lt;/ref&amp;gt; Da [[Mobile App|App]]-Entwickler sich auf ein [[Ausführbare Datei|Kompilat]] konzentrieren, haben viele Hersteller ab Mitte 2019 die Version 5 als Mindestversion angesetzt, beispielsweise Niantic.&amp;lt;ref&amp;gt;{{cite web|url=https://www.nau.ch/news/games/ingress-und-pokemon-go-brauchen-bald-mindestens-android-5-65541520|title=Ingress und Pokémon Go brauchen bald mindestens Android 5|author=Elia Del Favero|date=2019-06-10}}&amp;lt;/ref&amp;gt; Eine 32-Bit Version war anschließend nur noch schwer erhältlich.&amp;lt;ref&amp;gt;{{cite web|url=https://www.reddit.com/r/TheSilphRoad/comments/dm6c51/why_is_32bit_01590_version_apk_still_not_available/|title=Why is 32bit 0.159.0 version apk still not available?|publisher=Reddit TheSilphRoad/|date=2019-12}}&amp;lt;/ref&amp;gt; Die Vorabversionen von Android 12 ab 2020 boten keinen 32-bit Emulator für Entwickler mehr an.&amp;lt;ref&amp;gt;{{cite web|url=https://developer.android.com/about/versions/12/get|title=Get Android 12|publisher=Google|quote=Note that 32-bit Android emulator system images are not supported in Android 12.}}&amp;lt;/ref&amp;gt; Android 12 wurde im Oktober 2021 veröffentlicht, der Marktanteil von Android-Versionen bis Version 4 war bis April 2021 auf unter 2 % gefallen.&amp;lt;ref&amp;gt;{{cite web|url=https://de.statista.com/statistik/daten/studie/180113/umfrage/anteil-der-verschiedenen-android-versionen-auf-geraeten-mit-android-os/|title=Anteile der verschiedenen Android-Versionen an der Internetnutzung von Geräten mit Android OS weltweit im April 2021|publisher=Statista|date=2021-05-03}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Außer für [[Eingebettetes System#Plattformen|Embedded-Plattformen]] mit ihren spezialisierten Programmen, schwindet die Beachtung des Large File Support im Programmcode damit ab 2020.&lt;br /&gt;
&lt;br /&gt;
== Verwandte Probleme ==&lt;br /&gt;
Insbesondere das [[Jahr-2038-Problem]] zeigt auf, dass die traditionelle Darstellung von Zeitstempeln als 32-Bit „long“ zu Problemen führen kann. Diese werden sich mit dem Übergang zu reinen 64-Bit Systemen ebenfalls überholen. Zwischenzeitlich wurde begonnen, auch auf 32-Bit Systemen einen 64-Bit Zeitstempel verfügbar zu machen. In der Win32 API führte das dazu, dass neue Funktionen mit 64-Bit Zeitstempel das Suffix „64“ bekamen, und entsprechend die 64-Bit Dateilängen durch ein angehängtes Suffix „i64“ markiert wurden – durchaus auch in allen vier Kombinationen (findfirst32, findfirst64, findfirst32i64, findfirst64i32).&amp;lt;ref&amp;gt;{{cite web |url=https://docs.microsoft.com/de-de/cpp/c-runtime-library/reference/findfirst-functions?view=vs-2019 |title=CTF Funktionsreferenz findfirst |language=de |publisher=Microsoft |accessdate=2020-02-10}}&amp;lt;/ref&amp;gt; Die UNIX98 API dagegen führt mit „_LARGEFILE64_SOURCE“ zusätzliche Funktionen mit dem Suffix „64“ ein.&lt;br /&gt;
&lt;br /&gt;
Mit der large-file API verwandt sind Blockzähler für Massenspeicher, die durch eine übliche Größe der [[Datenblock|Datenblöcke]] von 512 Bytes erst später an die Begrenzung der 32-Bit Zahlen führte. Als Festplatten die Größe von 2 Terabyte erreichten (um 2010) musste daher der [[Master Boot Record]] als [[Partitionstabelle]] durch die [[GUID Partition Table]] ersetzt werden, der für die LBA ([[Logical Block Addressing|linear block address]]) dann 64-Bit Zähler definierte. Die in unixoiden System verwendeten [[inode]]-Zähler mussten ebenfalls aufgeweitet werden, ebenso wie andere Dateizähler (beispielsweise mit den Funktionen stat64 / setrlimit64). Die Überarbeitung des [[Linux (Kernel)|Linux Kernels]] erfolgte um 2001 zur Version 2.4, zusammen mit der Einführung der LFS Unterstützung, die dann von der glibc übernommen wurde.&amp;lt;ref name=lfs&amp;gt;{{cite web|url=https://users.suse.com/~aj/linux_lfs.html|title=Large File Support in Linux|publisher=SUSE GmbH|date=2015-02-15|author=Andreas Jaeger}}&amp;lt;/ref&amp;gt; Da die Umstellung zeitgleich erfolgte, werden bei der [[GNU-C-Bibliothek]] für Linux mit der Aktivierung von 64-Bit LFS in 32-Bit-Architekturen auch die inode-Blockzähler und verwandte Funktionen auf 64-Bit umgestellt.&amp;lt;ref&amp;gt;linux/bits/stat.h: /* Note stat64 has the same shape as stat for x86-64.  */ &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Dateisystem [[ext3]] von 2001 übernahm dann im Treiber einige 64-Bit Werte, blieb aber auf dem Massenspeicher weiter auf 32-Bit Blockzähler begrenzt.&amp;lt;ref name=lfs /&amp;gt; Da man hier meist im [[Advanced Format]] von 4 Kilobyte Blöcken arbeitet, liegt das Maximum hier typisch bei 8 oder 16 Terabyte.&amp;lt;ref name=lfs /&amp;gt; Größere Massenspeicher im Bereich dutzender Terabyte mussten dann mit [[XFS (Dateisystem)|XFS]] formatiert werden, die 64-Bit inodes auch im Datenformat unterstützen, und somit bis in den Exabyte-Bereich vordringen.&amp;lt;ref&amp;gt;{{cite web|url=https://www.mjr19.org.uk/sw/inodes64.html|title=The 64 bit inode problem|author=MJ Rutter|accessdate=2020-02-10}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=ext4&amp;gt;{{cite web|url=https://ext4.wiki.kernel.org/index.php/Ext4_Howto|title=Ext4 Howto|publisher=kernel.org|date=2019-02-11|quote=Although very large fileystems are on ext4&amp;#039;s feature list, current e2fsprogs currently still limits the filesystem size to 2^32 blocks (16TiB for a 4KiB block filesystem). Allowing filesystems larger than 16T is one of the very next high-priority features to complete for ext4.}}&amp;lt;/ref&amp;gt; Die ersten 16 Terabyte Festplatten wurden ab Mitte 2019 ausgeliefert. Als [[Solid-State-Drive]] gab es Massenspeicher mit 32 TiB schon ab 2016, und für 2020 wurden diese jenseits 100 TiB angekündigt.&amp;lt;ref&amp;gt;{{cite web|url=https://www.elektormagazine.de/news/samsungs-32-tb-ssd-der-anfang-vom-ende-der-festplatte|title=Samsungs 32-TB-SSD: Der Anfang vom Ende der Festplatte|publisher=Elektor|date=2016-08-15|author=Thomas Scherer}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Broadcast Wave Format|RF64]] als 64-bit Erweiterung von [[RIFF WAVE]] Audiodateien&lt;br /&gt;
* [[File Allocation Table#FAT32+|FAT32+]] als rückwärtskompatible Erweiterung des FAT Dateisystems (bis 256 GiB)&lt;br /&gt;
* [[ext4]] als 48-bit Erweiterung des ext3 Dateisystems (&amp;gt;16 TiB ab e2fsprogs Version 1.42)&amp;lt;ref name=ext4 /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.unix.org/version2/whatsnew/lfs20mar.html Adding Support for Arbitrary File Sizes to the Single UNIX Specification]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Betriebssystemtheorie]]&lt;br /&gt;
[[Kategorie:Dateisystem]]&lt;/div&gt;</summary>
		<author><name>imported&gt;BrunoBoehmler</name></author>
	</entry>
</feed>