Cookies für Statistik und Werbung
Wir setzen Cookies für Statistik und Werbung ein, beides geht an Google. Wenn du ablehnst, ändert sich für dich sichtbar nichts.Zur Datenschutzseite
1 MiB = 1024 KiB
Trag einen Wert ein, und die Umrechnung von Mebibyte nach Kibibyte läuft mit, während du tippst. Auf 1 MiB kommen 1024 KiB — ein Verhältnis, das per Definition feststeht und nicht gemessen wurde. Gerechnet wird auf deinem eigenen Gerät: Die Zahl, die du eintippst, wird nie Teil einer Anfrage — Werbung lädt die Seite drumherum wie jede andere.
700 MiB is 716800 KiB
— eine Audio-CD — daher stammt die Zahl.
8 MiB is 8192 KiB
— ein Speicherblock, wie ihn ein Programm anfordert.
0,5 MiB is 512 KiB
— ein halbes Mebibyte.
0,003906 MiB is 4 KiB
— eine Speicherseite auf den meisten Systemen.
| MiB | KiB |
|---|---|
| 1 | 1024 |
| 2 | 2048 |
| 5 | 5120 |
| 10 | 10240 |
| 50 | 51200 |
| 100 | 102400 |
| 500 | 512000 |
| 1000 | 1024000 |
MiB in KiB umrechnen
Ein Mebibyte sind 1.024 Kibibyte, also 1.048.576 Byte. Linux-Werkzeuge und Speicherangaben meinen in aller Regel das, auch wenn „MB" dasteht.
Ein Kibibyte sind exakt 1.024 Byte. Der Name wurde 1998 eingeführt, damit „Kilobyte" wieder 1.000 bedeuten kann — durchgesetzt hat sich die Gewohnheit nie ganz.
In dieser Richtung wird multipliziert, und zwar mit einer ganzen Zahl: ein Mebibyte sind 1.024 Kibibyte, exakt. 1.024 ist die Definition und keine Messung, die knapp danebenlag.
Damit ist es eine der wenigen Umrechnungen, die sich im Kopf lohnen, und das Ergebnis lässt sich prüfen: rechne zurück, und du musst exakt auf der Ausgangszahl landen, ohne Rest, den man wegerklären müsste.
Ein MiB sind 1.024 der Einheit darunter, ein MB sind 1.000. Auf dieser Seite ist das der Unterschied zwischen 1024 KiB und 976,5625 KiB — 4,9 % —, und der Abstand wächst mit jeder Stufe. Bei einem Foto ist er ein Rundungsfehler, bei einer Festplatte ein sichtbares Stück.
Darin besteht das Rätsel um den fehlenden Speicherplatz vollständig. Eine Platte, die als MB verkauft wird, enthält exakt das, was draufsteht; Windows teilt anschließend durch 1.024 statt durch 1.000, behält den dezimalen Namen bei und zeigt deshalb eine kleinere Zahl an. macOS rechnet seit Version 10.6 in den dezimalen Einheiten und zeigt die Zahl von der Verpackung — dieselbe Platte, zwei Rechner, zwei Größen, und verloren geht dabei nichts.
Auf einem gemieteten deutschen Root-Server sind ulimit -s, ulimit -v und die Spalten stack, data und as in /etc/security/limits.conf durchgängig in Kibibyte notiert, ohne dass das Feld selbst eine Einheit angibt. Wer den Server nach der Anbieter-Anleitung einrichtet und dort „8 MB Stack" liest, muss die Zahl selbst umrechnen — die Konfigurationsdatei nimmt nur eine ganze Zahl entgegen.
Das macht diese Umrechnung zu einer Schreiboperation, nicht zu einer Leseoperation. Man weiß, dass man einen 8-MiB-Stack oder eine 200-MiB-Speichergrenze will; das Feld will 8192 oder 204800; und die einzige Rückmeldung bei einem Fehler ist ein abgestürzter Prozess Wochen später, nicht eine Warnung beim Speichern.
Jede Mebibyte-Zahl mal 1.024 landet auf einem Vielfachen von 1.024, und jede Zweierpotenz in Mebibyte landet wieder auf einer Zweierpotenz: 8.192, 16.384, 65.536, 262.144. Wer eine Konfigurationsdatei liest und dort 8192 findet, sieht sofort, dass in Mebibyte gedacht wurde; steht dort 8000, hat jemand in Megabyte gerechnet, und das Feld ist 2,4 Prozent kleiner als beabsichtigt.
Auf einem einzelnen Server fällt das selten auf. Auf einer Flotte gleich konfigurierter Maschinen — wie sie deutsche Hosting-Kunden häufig über ein Ansible-Playbook oder ein Cloud-Init-Template ausrollen — wird aus der kleinen Differenz eine messbare Abweichung im Durchsatz, ohne dass irgendetwas offensichtlich fehlschlägt.
Wo ein Werkzeug einen Suffix akzeptiert, ist er der Multiplikation vorzuziehen: sort -S 512M, curl --limit-rate 200K, dd bs=4M lassen sich ein Jahr später noch lesen, sort -S 524288 nicht. Der Suffix überlebt auch, wenn jemand den Wert später verdoppeln will — eine von Hand ausmultiplizierte Zahl in der Regel nicht.
Die Ausnahme sind Felder, die von etwas anderem als dem Werkzeug selbst ausgewertet werden. Monitoring, Konfigurationsmanagement und ein Audit-Skript vergleichen diese Werte oft als reine Ganzzahlen, und eine Mischung aus 524288 und 512M über die Flotte hinweg macht den Vergleich unbrauchbar. Wo das zutrifft, ist die Ganzzahlform die bewusste Wahl, konsequent auf allen Maschinen.
Der Standard-Stack von 8 MiB steht in der Konfiguration als 8192, weil ulimit -s in Kibibyte zählt, und die Umrechnung lohnt sich, weil der Wert pro Thread gilt, nicht pro Prozess. Ein Tomcat oder ein anderer Java-Dienst mit mehreren hundert Threads reserviert diesen Adressraum entsprechend oft — auf einer 64-Bit-Maschine unproblematisch, weil nur tatsächlich benutzte Seiten echten Speicher belegen, aber auf einer knapp bemessenen virtuellen Maschine mit wenig Arbeitsspeicher trotzdem spürbar.
Wer den Wert senkt, um Speicher zu sparen, senkt ihn im Feld als Kibibyte-Zahl, nicht als Mebibyte-Kommentar. 512 KiB — im Feld also 512 — reicht für die meisten Anwendungen und nicht für rekursiven Code mit großen Stapelrahmen. Der Fehler zeigt sich dann als Segmentation Fault ohne jeden Hinweis auf die Ursache, weshalb sich die Mebibyte-Angabe als Kommentar neben der Kibibyte-Zahl lohnt.
GNU dd, wie es auf jedem deutschen Debian-Server vorinstalliert ist, unterscheidet bs=1K (1.024 Byte) ausdrücklich von bs=1KB (1.000 Byte). Nichts in der Syntax verrät, welches der beiden gemeint war, und ein dd-Lauf mit dem falschen Suffix kopiert dieselben Daten in leicht anders großen Blöcken — meist folgenlos, gelegentlich nicht, wenn das Ziel ein Blockgerät mit fester Blockgröße ist.
Als Faustregel gilt: Was eine Rate misst, ist eher dezimal, weil die Netzwerktechnik seit Langem in Zehnerpotenzen rechnet; was Speicher misst, ist eher binär. Eine 100-Mbit-Anbindung sind 100.000.000 Bit pro Sekunde, nicht 104.857.600 — eine Bandbreitengrenze, die aus dieser Angabe abgeleitet wird, gehört also erst dezimal berechnet und dann in die Kibibyte umgerechnet, die das Werkzeug am Ende erwartet.
1 MiB sind 1024 KiB. Das Verhältnis von Mebibyte zu Kibibyte ist per Definition festgelegt und nicht gemessen; gerundet wird allein die Anzeige, die nach zwölf signifikanten Stellen aufhört.
Nein. Die Rechnung läuft in deinem Browser. Du kannst die Verbindung trennen und weiterrechnen — das ist zugleich die einfachste Art, es nachzuprüfen.
Weil zwei verschiedene Einheiten denselben Namen tragen. Hersteller rechnen mit 1 GB = 1.000.000.000 Byte, Windows zeigt Gibibyte an, also 1.073.741.824 Byte, nennt sie aber „GB". Dieselbe Platte wirkt dadurch um etwa sieben Prozent kleiner. Verschwunden ist nichts.
Ein KiB sind 0,000976563 MiB. Es ist dasselbe Verhältnis rückwärts gelesen — ein Ergebnis von der einen Seite durch die andere geschickt muss also wieder dort landen, wo es losging.
Was diese Seite über Dateneinheiten behauptet, lässt sich nachprüfen — hier stehen die Dokumente, die es festlegen.
Der Faktor steht als Konstante in der Seite, und die Rechnung besteht aus vier Schritten. Es wird also nichts verschickt und auf nichts gewartet — was du eintippst, verlässt den Browser nie, weil es gar keine Anfrage gibt, in der es reisen könnte.