Warum misst Ubuntu die Dateigröße nicht mehr in Byte, Megabyte, Gigabyte usw.?


13

Ich habe irgendwo gelesen, dass Ubuntu nicht mehr die bekannten Dateigrößeneinheiten verwenden wird (kB, MB, GB, TB) und zu einem anderen IEC-Standard wechseln wird (KiB, MiB, GiB, TiB). Wenn dies zutrifft, würde ich gerne wissen, was die Gründe für diese Änderung sind und welche Auswirkungen (falls vorhanden) diese Änderung hat, insbesondere bei Anwendungen mit mehreren Plattformen oder Anwendungen, die mit Wine ausgeführt werden.


3
Ein Byte ist ein Byte. Schlechtes Beispiel.
Nathan Osman

2
Meines Wissens ist die Verwendung von KiB, MiB ... usw. in Ubuntu bereits vorhanden. Also "Ubuntu wird nicht mehr .." sollte "Ubuntu ist nicht mehr .." sein
Weboide

Antworten:


60

Die kurze Antwort lautet: Ja, die Präfixe ändern sich. Aber es macht keinen großen Unterschied.

Argumentation

Es gab immer Verwirrung, weil Einheiten im Dezimalstil wie KB, MB, GB mit Binärdaten verwendet wurden - KB bedeutete 1024 Bytes, nicht 1000 Bytes, wie zu erwarten war. Und natürlich verwenden viele Menschen auf der ganzen Welt die tatsächlichen Dezimalpräfixe in ihrem täglichen Leben nach dem metrischen System.

Netzwerktechniker und langjährige Computerbenutzer sind natürlich geschult, um den Unterschied zu verstehen, aber die anhaltende Verwirrung bedeutete, dass Anwendungen in ihrer Verwendung inkonsistent waren. Eine Anwendung könnte MB verwenden, um 1.000.000 Bytes (unter Verwendung des Dezimalpräfix) zu bedeuten, während eine andere möglicherweise 1.048.576 Bytes (unter Verwendung der binären Interpretation) bedeutet.

Dies führte dazu, dass Ubuntu schließlich eine neue Einheitenrichtlinie einführte .

Einschlag

Die Auswirkung ist wirklich nur ein Anzeigeproblem. Dateigröße und Netzwerkbandbreite werden mit den Dezimalpräfixen angezeigt, sodass eine 5-KB-Datei tatsächlich 5000 Byte groß ist. Dies entspricht genau dem, was viele (die meisten?) Menschen erwarten.

Die Speichernutzung und einige Hilfsprogramme auf niedriger Ebene zeigen die Größen mit den binären Präfixen (KiB, MiB, GiB, TiB) an. Dies kann anfänglich zu Verwirrung führen, ist jedoch tatsächlich besser als der Status Quo, bei dem ein Präfix zwei verschiedene Bedeutungen hat.

Da Windows immer noch das alte Ad-hoc-System verwendet, werden in einer Wine-Anwendung möglicherweise geringfügig unterschiedliche Dateigrößen für dieselbe Datei angezeigt. Allerdings werden aufgrund von Rundungsmethoden ohnehin oft unterschiedliche Größen angezeigt, sodass ich nicht davon überzeugt bin, dass dies ein großes Problem ist.

Siehe auch:


2
Huh. Warum verwenden Sie in der Richtlinie nicht einfach 1 MB, um in allen Fällen 1024 zu bedeuten? Wenn Leute ein "2GB" -Laufwerk (das eigentlich ein 2GiB-Laufwerk ist) kaufen und es dann in Ubuntu öffnen, wird es als 2,2GB oder so gemeldet. Ich habe verstanden, dass die Verwendung von MB für 1.000 immer falsch war, ebenso für KB, GB usw.
mlissner

Ein 200 GB-Laufwerk ist Action 200 GB, nicht 200 GB
txwikinger

2
@mlissner: Eigentlich war die Verwendung von MB für 1024 × 1024 Bytes immer falsch, auch wenn es allgemein verwendet wurde. Deshalb wurden neue, binärbasierte Präfixe vor 11 (!) Jahren standardisiert. Daher implementiert Ubuntu gerade einen 11 Jahre alten IEC-Standard und einen 2 Jahre alten ISO-Standard (jetzt bekannt als ISO / IEC 80000).
20.

2
Ich war nie verwirrt, solange 1kB 1024 Byte war.
burli

-1

ES IST SOOOO ... EINFACH !!!

Vor ein paar Jahren gab es kaum Verwirrung. Weil die Notation

  • 1 KB = 1024 Byte
  • 1 MB = 1024 KB

wurde über viele Jahre an allen Universitäten und in fast der gesamten Industrie (Software und Hardware) auf der ganzen Welt gelehrt, gelernt und eingesetzt.

Die blöde Idee, zur Basis 1000 zu zählen (nicht einmal zur Basis 10), ist nur ein weiteres Symptom für die Dummheit unserer Zeit und unseres modernen Lebens.

Was die Sache noch viel schlimmer macht, ist die dummere Idee, die alte Notation für die unpraktischen 1000-Basis-Einheiten herzustellen (und weiter zu machen). Das hat die ganze Verwirrung verursacht. Wenn sie die Konvention nur so angenommen hätten

  • 1 KB = 1000 Byte
  • 1 MiB = 1000 Bytes

dann würde es viel weniger Verwirrung geben und das Problem würde viel kleiner sein.

Sie hätten versuchen sollen, das herauszufinden

1KB = 1024 bytes
1MB = 1024 KB

and

1 Ikb or ikb or Kib = 1000 bytes
1 IMb or imb or Mib  = 10^6 bytes

Es ist absolut nicht erforderlich, Base-1000-Einheiten zu verwenden. Wahrscheinlich ist die Idee in einem eigensinnigen Kopf entstanden, der sagte: "Oh, nein, wenn Kilo 1000 und Mega 1.000.000 sind, werden wir Kilo und Mega in Base-1000 für Informationseinheiten verwenden (Base 2!)." Das alles nur, weil eines Tages, aber das war viel länger her, jemand die unglückliche Idee hatte (obwohl nicht so schlimm), Kilobyte (kb) ein Bündel von 1024 Bytes zu nennen. Wenn er k2b und m2b gewählt hätte und sie Kitwo-Bytes und Mitwo-Bytes (oder Kookie-Bytes , Mookie-Bytes und Gookie-Bytes) genannt hätte), zum Beispiel, würde all diese verzögerte Idee, base-1000 für alle Anwendungen und ein ganzes Betriebssystem zu verwenden und es als die normale Art und Weise, über Maßnahmen in HW und SW zu sprechen, der Bevölkerung aufzuerlegen, nicht passieren, was macht die Dinge noch viel schlimmer.


3
Eigentlich machen wir es logischer. Sehen Sie, zum Beispiel benutzen wir km, wenn wir 1000 Meter meinen. Warum sollte das anders sein? Der Grund für k = 1024 ist Leistung und Einfachheit. Es ist wirklich schnell, diese Bits zu verschieben, anstatt echte Divisionen durchzuführen. Heutzutage jedoch wird durch immer größere Zahlen die Diskrepanz zwischen 1024 ^ n und 1000 ^ n . Das war zwar kein Problem, weil sie praktisch gleich waren, aber es beginnt wirklich verwirrend zu werden.
Georg Schölly

1
wurde über viele Jahre an allen Universitäten und in fast der gesamten Industrie (Software und Hardware) auf der ganzen Welt gelehrt, gelernt und eingesetzt. Nein, war es nicht. Dies ist ein Mythos, der von Programmierern propagiert wird, um ihre Faulheit zu rechtfertigen. "Megabyte" bedeutete in den 1960er Jahren "1.000.000 Bytes" und "Kilobyte" "1000 Bytes". Microsoft ist hauptsächlich für die unsinnigen und unpraktischen 1024-basierten Einheiten verantwortlich.
Endolith

-2

Es ist in der Tat verwirrend, was 1998 in Bezug auf die Änderung der Größenbezeichnung geschah, und es wäre viel einfacher gewesen, wenn sie einfach eine neue Menge in Zehnerpotenzen als neue Bezeichnung hinzugefügt hätten, was sie aber leider aufgrund der Überlegungen am nicht taten Im Zentrum der Zeit stand die Korrektur der Etymologie des verwendeten Wortes "Kilo", sodass alle Originalgrößen, die auf Potenzen von 2 (1024) basierten, neue Namen und neue Bezeichnungen erhielten und die neue Potenz von 10 Zahlen das ursprüngliche Etikett aus der Zeit vor 1998 annahmen Namen.

Also lasst die Verwirrung beginnen:

Vor 1998 bedeutete ein Kilobyte 1024 Bytes und wurde als K oder KB bezeichnet.

Nach 1998 wurde das ursprüngliche Kilobyte vor 1998 in Kibibyte umbenannt und mit der neuen Bezeichnung K oder KiB versehen. Es wurde ein brandneues Kilobyte nach 1998 erstellt, das 1000 Byte lang ist und die Kurzbezeichnung KB hat, sodass wir heute Folgendes haben:

1 KB = 1000 Bytes (KB kann nicht auf K gekürzt werden) 1 KiB = 1000 Bytes (KiB kann auf K gekürzt werden)

Die Bezeichnungen wurden alle so geändert, dass KB die offizielle Abkürzung ist, die sich auf das aktuelle Kilobyte (1000) bezieht, während K und KiB offiziell die offizielle Abkürzung für Kibibyte (1024) sind.

Es wird besonders verwirrend, weil die meisten von uns, die in den frühen Tagen vor 1998 aufgewachsen waren, gewohnt waren, Kilobytes als 1024 Bytes zu bezeichnen und entweder KB oder K als Kurzbezeichnung zu schreiben, aber heute ist das falsch und wir alle beziehen uns darauf zu "Kibibytes", wenn wir "Kilobytes" sagen und oft die falsche Bezeichnung gemäß den offiziell in Kraft gesetzten Weltstandards verwenden, die von der IEC bereits 1998 festgelegt wurden Menschen, die immer noch nicht erkennen, dass K und KB NICHT gleich und völlig verschieden sind.

Es gibt also tatsächlich einen Unterschied zwischen "K" (1024) und "KB" (1000)!

Dies ist übrigens auch genau der Grund, warum Festplatten immer viel weniger Speicherplatz zu haben scheinen als angegeben, aber die Festplattenhersteller sind diejenigen, die korrekt sind und die heutigen Standards anwenden, wenn sie "Terabyte" auf die Verpackung schreiben, wenn die Die Person, die das Laufwerk kauft, denkt jedoch tatsächlich in Bezug auf Tebibytes und erwartet Speicherplatz als solchen.

Übrigens ist der Unterschied zwischen einem 2-TB-Laufwerk (Terabyte) und einem 2-T- oder 2-TiB-Laufwerk (Tebibyte) sehr groß, und zwar 199.023.255.552 Byte kleiner als ein 2-T- oder 2-TiB-Laufwerk etwas mehr als 185 G oder GiB (Gibibytes), woran die meisten Leute ironischerweise am häufigsten denken, wenn sie "Gigabyte" sagen, wenn auch irrtümlich.

Dies ist einer der merkwürdigsten Nebeneffekte, die in der Computerwelt bekannt sind. Dies ist eine gute Fußnote, um einige der merkwürdigen Diskrepanzen zu erklären, die viele Menschen heutzutage oft gar nicht kennen.

Viele Leute denken und sagen den Namen "Kilobyte" (1000), wenn sie tatsächlich an die Einheit "Kibibyte" (1024) denken, und es wird verwirrender, wenn Leute die Kurzschrift austauschbar schreiben, aber dies ist falsch, das moderne Kilobyte sollte es sein markiert mit "KB" und sollte nirgendwo in einer Dokumentation oder einem Programm "K" oder "KiB" sein, die sich, wie gerade erklärt, tatsächlich auf Kibibyte (1024) bezieht.

Die Kurzbezeichnungen K (1024) und KB (1000) sind nicht mehr dasselbe, und im Fall von Kibibyte kann entweder K oder KiB verwendet werden, jedoch nicht KB.

Das ist dein Hirn, das ist dein Hirn auf Kibibytes - schon gebraten?

LOL


"Vor 1998 bedeutete ein Kilobyte 1024 Bytes und wurde als K oder KB bezeichnet." Das ist ein Mythos. Zum Beispiel enthielt der Shugart SA 400 109.375 Bytes und wurde 1976 als "109,4 Kbytes" vermarktet . Die CDC 9746 enthielt 60.000.000 Bytes und wurde 1974 als "60 M Bytes" vermarktet .
Endolith
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.