Der Martin: wie diesen Fatal Error abfangen?

Beitrag lesen

Hallo,

bedenke allerdings die MB != MiB-Problematik.
Wow, mit was alles ich mich auf einmal beschäftigen muss.

musst du nicht. Denn wie man im Manual zu memory_get_usage() nachlesen kann, gibt die Funktion den belegten Speicher in Bytes zurück. Die 1024/1000-Problematik ist hier also außen vor.

Ich dachte alle Systeme könnten korrekt von Bits bis nach TB umrechnen -.-

Können sie. Nur ist es bei den Programmierern jahrzehntelange Tradition, nicht die Anzahl 1000, sondern 1024 als "1k" zu bezeichnen, denn 1024 ist eine Zweierpotenz und lässt sich daher leichter verarbeiten; und die Werte sind ja hinreichend ähnlich.
Da sich mit zunehmenden Speichermengen der Fehler von ursprünglich 2.4% potenziert, wird er in manchen Fällen offensichtlich.

Die ersten, die mit der Konvention "1k=1024" bewusst gebrochen hatten, waren die Festplattenhersteller. Denn wenn das kB etwas größer ist, werden die Zahlen, die die Gesamtkapazität angeben, etwas kleiner. Das ist nicht verkaufsfördernd. So wurden dann teilweise 120MB-Festplatten (ja, das war Anfang der 90er Jahre noch üppig!) als 125MB-Modelle angepriesen, und man hatte zumindest im Werbeprospekt einen kleinen Vorsprung vor Konkurrenten, die noch die traditionellen MB verwendeten.

Heute sind es mehr die auf formale Korrektheit abfahrenden Theoretiker, die darauf bestehen, richtige SI-Präfixe zu verwenden. Das sind dann ungefähr dieselben Leute, die auch fordern, dass Monitorgrößen in cm statt in Zoll anzugeben sind, so dass die Kunden dann fragen: "Äh, 55cm[*] - wieviel Zoll sind denn das?"
Oder beim Autohändler.
Kunde:   Wieviel PS hat denn der Wagen?
Händler: Steht doch da: 88kW.
Kunde:   Ja, aber wieviel PS sind das?

Dadurch, dass man also so aufs Korinthenkacken besteht, schafft man Probleme, wo eigentlich gar keine sind.

Ciao,
 Martin

[*] Wobei ich die cm hier für einen Griff ins Klo halte; fast überall in der Technik wird in Meter oder Millimeter gemessen, Zentimeter sind völlig unüblich.

--
Der Klügere gibt solange nach, bis er der Dumme ist.