(Dies ist der dritte Teil eines vierteiligen Beitrags, der 10 GB/s ins rechte Licht rückt. Im ersten Teil haben wir beschrieben, was ein hypothetischer Roboter, der sich Filme ansieht, mit einer SSD mit 10 GB/s tun könnte. In Teil 2 wurden die in der Computertechnologie verwendeten Standardmaßeinheiten – Bits und Bytes – definiert. In diesem Abschnitt wird versucht, ein besonders verwirrendes Problem im Zusammenhang mit Speicherung und Daten zu erklären: zwei häufig verwendete Definitionen für dieselben Einheiten-Präfixe.)
Haben Sie schon einmal ein Computersystem mit einem 500-GB-Speichergerät gekauft, aber als Sie es zum ersten Mal hochgefahren haben, hat Ihr Betriebssystem nur 465 GB angezeigt? In Teil 2 haben wir gesehen, dass „Giga“ eigentlich „Milliarde“ bedeutet. Ein 500-GB-Laufwerk sollte also eine Kapazität von 500 Milliarden Bytes haben – und nicht 465 Milliarden. Richtig?
Richtig!
Und auch nicht richtig.
Wenn Sie der Diskrepanz auf den Grund gegangen sind, haben Sie wahrscheinlich festgestellt, dass die fehlenden 35 GB gar nicht fehlten. Es ist nur so, dass „Giga“ nicht immer so verwendet wird, wie man es sich vorstellt. So wie viele Bäcker das Wort Dutzend für 13 halten, wird in manchen Kreisen Giga- für 1.073.741.824 verwendet! Für viele von uns, die mit dem Verständnis aufgewachsen sind, dass eine Milliarde eine 1 mit neun nachfolgenden 0en ist, ist diese „andere“ Definition vielleicht erklärungsbedürftig.
A Trip Down Memory Lane
Computer verwenden Informationen und Anweisungen, die in Datendateien enthalten sind. Diese Datendateien befinden sich in einem modernen Computersystem an zwei Stellen: im Primärspeicher und im Sekundärspeicher. Der Primärspeicher, heute meist ein Arbeitsspeicher (RAM), enthält Daten, auf die die Computerprozessoren sofort zugreifen können. Beim Sekundärspeicher handelt es sich hauptsächlich um längerfristigen Speicher wie Festplattenlaufwerke (HDDs) und Solid State Drives (SSDs). Daten, die sich im Sekundärspeicher befinden, müssen zunächst in den Arbeitsspeicher verschoben werden, bevor ein Computer sie nutzen kann. Die Situation ist vergleichbar mit dem Schreibtisch eines Büros und seinem Aktenschrank: Dokumente auf dem Büroschreibtisch sind wie Dateien im Arbeitsspeicher, da sie die einzigen sind, auf die Sie – wie ein Computerprozessor – sofort zugreifen, sie lesen und Maßnahmen ergreifen können; Sie können auch Dokumente im Aktenschrank oder Sekundärspeicher verwenden, aber erst, nachdem Sie sie aus dem Schrank geholt und auf den Schreibtisch gelegt haben.
Die Größe einer Datei, wo auch immer sie zu finden ist, wird üblicherweise in Bytes angegeben. Und wie bereits in Teil 2 dieses Beitrags erwähnt, werden diese Größen nur selten ohne spezielle Präfixe angegeben, da sie in der Regel in die Tausende, Millionen oder sogar Milliarden von Bytes gehen. Das Problem besteht darin, dass die Hersteller von Sekundärspeichern seit jeher die traditionellen Präfix-Definitionen zur Messung der Speicherkapazitäten ihrer Laufwerke verwenden, während die Hersteller von Arbeitsspeichern und CPU-Chips für dieselben Präfixe andere Definitionen gewählt haben!
Eine Geschichte von zwei Systemen
Die meisten Computer- und Elektronikunternehmen verwenden das metrische oder dezimale Präfix-System. Seine heutige Form wurde 1960 vom Internationalen Einheitensystem (SI) standardisiert. Das metrische Präfixsystem hat als Basis die Zahl 10, so dass die Präfixe Zahlen entsprechen, die ganzzahlige Potenzen von 10 sind. Kilo ist zum Beispiel 103, also 10 dreimal mit sich selbst multipliziert – oder 1.000. Nachfolgende Vorsilben in diesem System lassen sich leicht als Potenzen von 1.000 ausdrücken. Die Vorsilbe Mega- zum Beispiel ist 1.0002 (1.000.000) und Giga- ist 1.0003 (1.000.000.000). Die Speicherindustrie verwendet das metrische Präfixsystem, um die Kapazität von sekundären Speichergeräten zu beschreiben.
Das binäre Präfixsystem kommt ins Spiel, wenn es um Primärspeicher geht. Das binäre Präfixsystem hat als Basis die Zahl 2, so dass seine Präfixe Zahlen entsprechen, die ganzzahlige Potenzen von 2 sind. Wenn Daten in den Primärspeicher gelangen, wird jeder Information eine eindeutige Adresse zugewiesen, die es dem Prozessor ermöglicht, die Daten bei Bedarf zu finden. Mitte der 1960er Jahre wurde ein binäres Adressierungsschema zum Standard in Computerarchitekturen, weil ein binäres System die effizienteste Anordnung der binären Daten im Speicher ermöglicht, so dass alle gültige Adressen haben.
Zunächst wurden die Hauptspeicherkapazitäten in absoluten Zahlen ausgedrückt, aber als die ersten Computerfachleute die Notwendigkeit sahen, größere Speicherkapazitäten auszudrücken, fanden sie auch die Notwendigkeit, Präfixe zu verwenden, um sie zu beschreiben. Die Speicherindustrie hatte bereits das SI-basierte metrische Präfixsystem eingeführt. Der Einfachheit halber beschlossen diese Fachleute, das Präfixsystem ebenfalls zu übernehmen… mit einigen Änderungen. Sie stellten fest, dass die Zahl 1.024 bzw. 210 (binär) ungefähr gleich 1.000 bzw. 103 (dezimal) war, und begannen, die Vorsilbe Kilo nicht für 1.000, sondern für 1.024 zu verwenden! Nachfolgende Präfixe im System können als Potenzen dieser 1.024 ausgedrückt werden. Aus Mega- wurde beispielsweise 1.0242 und aus Giga- 1.0243.
Die folgende Tabelle erweitert die in Teil 2 dieses Beitrags vorgestellte Tabelle, indem sie nicht nur die Bedeutung der einzelnen Präfixe, sondern auch den genauen Wert der Präfixe beider Systeme enthält.
Man darf jedoch nicht vergessen, dass die Gesamtkapazität unserer hypothetischen SSD immer noch 500.000.000.000 Bytes beträgt. Wenn man diese Zahl durch ein Gigabyte teilt, erhält man zwei verschiedene Werte, weil es zwei verschiedene Definitionen von Gigabyte gibt. Wenn Sie ein Gigabyte als 1.0003 (oder 1.000.000.000) Byte definieren, wie es das Internationale Einheitensystem und die Speicherhersteller tun, dann sind 500.000.000.000 Byte dasselbe wie 500 GB. Definiert man ein Gigabyte als 1.0243 (oder 1.073.741.824) Byte, wie es die Hersteller von Arbeitsspeichern und einige große Betriebssysteme tun, dann sind 500.000.000.000 Byte gleich 465 GB.In der Anfangszeit war dies kein Problem – der Unterschied in der Annäherung war vernachlässigbar. Schließlich beträgt die Abweichung zwischen einem metrischen Kilobyte und einem binären Kilobyte nur 2,4 %. Außerdem wusste jeder, der jemals von KB sprach, bereits, ob es sich um 1.000 Byte Speicher oder 1.024 Byte Speicher handelte. Im Laufe der Zeit stiegen jedoch die Kapazitäten sowohl des Arbeitsspeichers als auch des Speichers an. Mit zunehmender Kapazität werden die relativen Unterschiede zwischen den dezimalen und binären Werten desselben Präfixes immer deutlicher. So beträgt die Diskrepanz zwischen dem binären und dem metrischen Kilo vielleicht nur 2,4 %, aber der Unterschied zwischen einem Giga- in den beiden Interpretationen wächst auf 7,4 % und auf 12,6 %, wenn es sich um ein Peta- handelt!
Aufgrund des Problempotenzials dieser Diskrepanz begann in den späten 1990er Jahren in wissenschaftlichen Kreisen eine Bewegung zur formellen Festlegung einer neuen, eindeutigen Namenskonvention für Präfixe großer Binärzahlen. Die daraus resultierenden binären Präfixe wurden 1998 von den Normungsgremien der Internationalen Elektrotechnischen Kommission (IEC), der Internationalen Organisation für Normung (ISO) und des National Institute of Standards and Technology (NIST) angenommen und werden nun als „IEC-Präfixe“ bezeichnet. Die Präfixe in diesem System sollen eine eindeutige Unterscheidung zwischen den beiden Systemen ermöglichen und werden als Abkürzungen gebildet, indem die ersten beiden Buchstaben der SI-Präfixe mit den Buchstaben bi (kurz für binär) kombiniert werden. Die folgende Tabelle enthält eine Liste der Präfixe und ihrer Bedeutungen.
Auch wenn die Folgen der irrtümlichen Verwendung eines Präfixes, wenn man eigentlich das andere verwenden sollte, nicht so dramatisch sind wie die Verwechslung, die 1999 zum berüchtigten Verglühen des Mars Climate Orbiter der NASA führte, als die Software die Kraft der Schubdüsen in „Pfund“ berechnete, aber eine andere Software die Daten in der Annahme aufnahm, dass es sich um die metrische Einheit „Newton“ handelte, kann das Verständnis des Unterschieds zwischen diesen Systemen Sie vor Überraschungen bewahren – oder zumindest vor Verwirrung.Leider haben noch nicht alle Computer-, Software- und Speicherhersteller damit begonnen, die standardisierten wissenschaftlichen Definitionen zu verwenden, so dass Sie wahrscheinlich immer noch dasselbe Präfix sowohl für metrische als auch für binäre Interpretationen verwenden werden. Bei den Verbrauchern kann es immer noch zu Verwirrung kommen, wenn das von ihnen installierte Speichergerät eine bestimmte Kapazität unter Verwendung von Standardpräfixen angibt, das Betriebssystem, das die Kapazitäten von Primär- und Sekundärspeicher in binären Präfixen ausdrücken kann, jedoch eine andere Kapazität anzeigt, die wie eine andere aussieht. Um die Verwirrung zu mildern, geben die meisten Speicherhersteller heute auf ihren Produkten und in der Literatur Erklärungen ab, die den genauen Wert des verwendeten Präfixes definieren.
Im nächsten Teil dieses Beitrags geht es um die Übertragungsraten und die besonderen Erwägungen, die bei der Darstellung von Daten angestellt werden.