Verwechslung mit Speicherkapazität (Potenzen von 10 und 2) [duplizieren]

23

Ich habe mir eine Festplatte angesehen und ein Dokument gefunden (von Toshiba, Link: 2,5-Zoll-SATA-Festplatte mq01abdxxx ), in dem steht:

Ein Gigabyte (1 GB) bedeutet 10 ^ 9 = 1.000.000.000 Byte mit Zehnerpotenzen. Ein Computerbetriebssystem gibt jedoch Speicherkapazität mit Zweierpotenzen für die Definition von 1 GB = 2 ^ 30 = 1.073.741.824 Byte an und zeigt daher weniger Speicher an Kapazität."

Dann sind Potenzen von 10 größer als Potenzen von 2, OK.

Beispiel 10 ^ 2 = 100 und 2 ^ 2 = 4.

Aber ich verstehe das Dokument nicht, das für die gleiche Speicherkapazität sagt:

1 GB entspricht 1.000.000.000 Bytes (Potenzen von 10) und 1.073.741.824 Bytes (Potenzen von 2). In diesem Fall ist die Speicherkapazität geringer (Potenzen von 2). Warum ist es weniger? Wenn ich für 1 GB mehr Speicherkapazität in Potenzen von 2 als in Potenzen von 10 sehe.

lernprogrammieren
quelle
13
"Warum ist es weniger? Wenn ich für 1 GB mehr Speicherkapazität in Potenzen von 2 als in Potenzen von 10 sehe." Ihre Höhe in Zoll gibt die kleinere Zahl als die gleiche Höhe in Zentimetern an, nur weil in Zoll mehr "Längenkapazität" als in Zentimeter vorhanden ist. Für den festen Wert gilt also: Je größer die Einheit, desto niedriger die Zahl.
Kamil Maciorowski
4
Es ist nicht weniger, es ist der gleiche Wert, dargestellt durch zwei verschiedene Basen.
Ramhound
2
Sie können nicht einfach sagen, dass 10 ^ 2 - 100 und 2 ^ 2 = 4. Sie müssen berechnen, was 100 in Basis 2 wäre.
Ramhound
4
"Ein Computer-Betriebssystem" - Meins nicht ... Oder tatsächlich verwendet es MB (base10) in der GUI, aber MiB (base2) in der CLI. Nur um die Dinge interessant zu halten.
März
2
Sie sagen, dass "Potenzen von 10" kleiner sind als die Potenzen von 2 gleicher Größe. Zum Beispiel 1000 (10 ^ 3) <1024 (2 ^ 10). Und 1000000 (10 ^ 6) <1048576 (2 ^ 20). Einem Laufwerkhersteller zufolge hat Ihre 1-Terabyte-Festplatte (mindestens) 1.000.000.000 Bytes (und sogar ein bisschen mehr), während ein Betriebssystemdienstprogramm, das Speicherplatz für 1 Terabyte meldet, 1.099.511.627.776 Bytes hat. Das Betriebssystem meldet Ihre 1-TB-Festplatte also als 931 GB oder etwas mehr. (Oder vielleicht auch nicht, siehe @ marcelm oben.)
Davidbak

Antworten:

58

Der historische Grund für die Verwendung von Potenzen von 2 ist, dass die CPU über einen Adressraum, der aus Zeilen im Binärcode besteht, auf Speicher und Festplatte zugreift. Hardware-Hersteller haben die Namen folgendermaßen festgelegt:

2^10 = 1024 and as it's almost 1000 then call it 1 Kilobyte

2^20 = 1048576 bytes and as it's almost 1000000 then call it 1 Megabyte

Für den normalen Benutzer ist es Unsinn und umständlich. Außerdem stehen die Präfixe "kilo", "mega" usw. in Konflikt mit dem Standard des Internationalen Einheitensystems (SI), wobei "1 kiloWatt" 10 ^ 3 oder 1000 Watt bedeutet.

Um das Problem zu lösen, schlug die Internationale Elektrotechnische Kommission (IEC) im Jahr 2000 ein Notationsschema für die Einheiten in Zweierpotenzen vor, das auf der Norm ISO / IEC 80000-13 basiert .

Die neuen Namen wurden durch Ersetzen der zweiten Silbe im alten Namen durch 'bi' (mit Bezug auf '2') erstellt. Ein Kilobyte muss jetzt ein Kibibyte sein und so weiter. Die neuen Einheiten erhielten auch entsprechende Symbole, sodass "10 Kibibyte" jetzt als 10 KiB anstelle von 10 kB geschrieben wird . Dies ist die Entsprechungstabelle:

Notation      Symbol    Value
1 kilobyte    1 kB      10^3  = 1000 bytes
1 megabyte    1 MB      10^6  = 1000000 bytes
1 gigabyte    1 GB      10^9  = 1000000000 bytes
1 terabyte    1 TB      10^12 = 1000000000000 bytes


1 kibibyte    1 KiB     2^10 = 1024 bytes
1 mebibyte    1 MiB     2^20 = 1048576 bytes
1 gibibyte    1 GiB     2^30 = 1073741824 bytes
1 tebibyte    1 TiB     2^40 = 1099511627776 bytes

16 Jahre später beziehen sich viele Hard- und Softwareanbieter immer noch auf die Basis-2-Einheiten mit ihren SI- Namen. Ein "Megabyte" kann entweder 1000000 Bytes oder 1048576 Bytes bedeuten.

Wenn Sie eine 100-GB-Festplatte kaufen, beträgt die Kapazität 100 x 10 ^ 9 oder 10 ^ 11 Byte. Aber, und das ist das große, aber das Betriebssystem wird nur das Laufwerk mit einer Kapazität von 93 GB melden (10^11)/(2^30). Sie haben ein 100- Gigabyte- Laufwerk gekauft, was einem 93- Gigabyte- Laufwerk entspricht. Das Betriebssystem verwendet die falsche Schreibweise.

Laufwerkshersteller verbergen dieses Problem mit Haftungsausschlüssen und Erklärungen, die immer zu der Schlussfolgerung führen, dass die tatsächlich formatierte Kapazität möglicherweise geringer ist.

jcbermu
quelle
1
Kommentare sind nicht für eine längere Diskussion gedacht. Diese Unterhaltung wurde in den Chat verschoben .
Geselle Geek
21

Kurzum: Es ging nur um Marketing.

jcbermu hat es gut erklärt, aber ich stimme den Gründen dafür nicht zu.

Während jedes Informatiksystem das Binärsystem verwendet, werden die Bits und Bytes als ^ 2 geschrieben, was normal ist. Es ist also nicht das Betriebssystem oder die Software, die für die Verwirrung verantwortlich sind. Hier ist alles binär.

Es ist die Schuld der Festplattenhersteller, die Festplattenkapazitäten im ^ 10-System anzugeben, was Ihnen einige praktische GB raubt. Eine 20-GB-Festplatte kann tatsächlich 18 GB speichern und so weiter. Ein 1-TB-Laufwerk hat tatsächlich ~ 930 GB. Der Bibyte-Spott wurde erfunden, um einiges an Verwirrung zu verhindern, aber er konnte praktisch nicht angewendet werden.

Overmind
quelle
10
Dies liegt daran, dass die Bytes auf der Festplatte nach dem Versand abgerechnet wurden.
Davidbak
2
Wahr. Ich habe noch nie jemanden sagen hören "Ich habe auf 16 gibi RAM aufgerüstet". Ich glaube nicht, dass die Hersteller für das Chaos verantwortlich sind, aber sie profitieren mit Sicherheit davon. In den 80er und 90er Jahren wussten Computerbenutzer, was der Unterschied zwischen Kilogramm und Kilobyte ist und warum. Wer weiß heutzutage, dass Computer mit Binärarithmetik arbeiten?
Crowley
4
Es geht nicht um Marketing und war es auch nie. Festplatten und Disketten wurden immer mit dem echten SI-Präfix verkauft, da es nie Sinn machte, eine andere Basis zu verwenden.
Pipe
1
-1, schrecklich. It's the fault of HDD manufacturers to state the HDD capacities in ^10 system, which robs you of quite some practical GB.Nein, keines dieser Dinge ist wahr. HD-Hersteller sind diejenigen, die es die ganze Zeit richtig gemacht haben und die tatsächliche, korrekte Definition der Einheiten verwenden. Es ist nicht ihre Schuld, dass Entwickler, Speicherhersteller und andere Personen die SI-Einheiten ungenau eingesetzt haben. Und in welcher Einheit der Speicherplatz gemessen wird, "raubt Ihnen natürlich keine praktischen GB" oder ändert die Kapazität in irgendeiner Weise.
HopelessN00b
1
@pipe: Eine 720-KB-Diskette enthält genau 1.440 Blöcke mit jeweils 512 Byte. Ebenso bei anderen Größen in KB. Soweit ich das beurteilen kann, war die häufigste Bedeutung von "MB" bei Magnetspeichermedien 1.024.000 Byte, was eine 1,44-MB-Diskette genau doppelt so groß wie eine 720-KB-Diskette macht.
Supercat
16

jcbermus Antwort ist gut, aber ich möchte das aus einem anderen Blickwinkel betrachten.

1 GB entspricht 1.000.000.000 Bytes (Potenzen von 10) und 1.073.741.824 Bytes (Potenzen von 2). In diesem Fall ist die Speicherkapazität geringer (Potenzen von 2). Warum ist es weniger? Wenn ich für 1 GB mehr Speicherkapazität in Potenzen von 2 als in Potenzen von 10 sehe.

Ein Speichermedium - jedes Speichermedium - kann eine bestimmte Anzahl von zugreifbaren Bits speichern. In der Regel wird es beim Allzweck-Computing in Bytes oder einem Vielfachen von Bytes ausgedrückt. Wenn Sie sich jedoch beispielsweise mit Speicher-ICs (integrierte Schaltkreise, Chips) befassen, wird deren Speicherkapazität in Form von zugreifbaren Bits ausgedrückt.

Eine Festplatte speichert eine bestimmte Anzahl von Bits oder Bytes, die aus technischen Gründen in Bezug auf Sektoren angesprochen werden. Beispielsweise kann ein 4-TB-Laufwerk 7.814.037.168 Sektoren mit jeweils 512 Bytes aufweisen, was einer Speicherkapazität von 4.000.787.030.016 Bytes entspricht. Das bekommen Sie tatsächlich. (In der Praxis verlieren Sie dann einen Teil davon an die Buchhaltungsinformationen des Computers: Dateisystem, Journal, Partitionierung usw.) Die Bytes sind jedoch immer noch vorhanden. Sie können sie nur nicht zum Speichern von Dateien verwenden, da sie zum Speichern benötigt werden die Daten, mit denen Sie die Dateien effektiv speichern können.)

Natürlich ist die Zahl 4.000.787.030.016 etwas unhandlich. Aus diesem Grund möchten wir diese Informationen auf andere Weise darstellen. Aber wie jcbermu illustriert, wählen wir zwei verschiedene Möglichkeiten: Zehnerpotenzen oder Zweierpotenzen.

In Zehnerpotenzen sind 4.000.787.030.016 Bytes 4.000787030016 * 10 ^ 12 Bytes, was sehr gut rundet; Mit vier signifikanten Stellen wird für die SI-Definition von "tera" auf 4,001 TB gerundet: 10 ^ 12. Unsere Festplatte kann mehr als 4 * 10 ^ 12 Bytes speichern. In SI-Begriffen handelt es sich also um ein 4-Terabyte-Speichergerät.

In Zweierpotenzen sind 4.000.787.030.016 Bytes 3.638694607 * 2 ^ 40 Bytes, was nicht ganz so schön rund ist. Es sieht auch nach einer kleineren Menge aus, denn 3.639 ist weniger als 4.001, und das ist schlecht für das Marketing (wer möchte ein 3,6-TB-Laufwerk kaufen, wenn der Hersteller nebenan ein 4,0-TB-Laufwerk zum gleichen Preis verkauft?). Dies ist das binäre Präfix 3.6 "Tebibyte", wobei "bi" angibt, dass es sich um eine Basis-Zwei-Größe handelt.

In Wirklichkeit ist es jedoch genau die gleiche Anzahl von Bytes. die nummer wird nur anders ausgedrückt! Wenn Sie erneut rechnen, wird 3.638694607 * 2 ^ 40 = 4.000787030016 * 10 ^ 12 angezeigt, sodass Sie am Ende dieselbe Speicherkapazität erhalten.

ein CVn
quelle
1
Schön erklärt, aber die Anzahl der Sektoren (wie in [...] Ihrem Beispiel 7,8) wird vom Hersteller so gewählt, dass die Kapazität den gewünschten Wert erreicht. Sie könnten nur 8 Milliarden Sektoren schaffen, 8589934592 oder jede andere Zahl, um einen echten Kapazitätswert zu erzielen, aber das ist nicht gut für das Geschäft. Da der Unterschied technisch möglich ist, würde ich als Hersteller einen großen Markthit erzielen: ein Logo TrueCapacity (R) oder TrueSpace (R) und es ist garantiert, dass der Umsatz aufgrund dieses Marketing-Manövers steigen würde und der anderer Hersteller folgen müssen (und dazu unvorbereitet wären).
Overmind
@Overmind: Das ist eine mögliche Marketing-Technik. Ähnlich wie bei Aerial Communications, bei dem die Abrechnung pro Sekunde erfolgte (bevor T-Mobile sie aufgekauft hat). Wenn Sie für die Vermarktung eines Speichermedienherstellers verantwortlich wären, würde ich vermuten, dass Sie sich für eine Strategie entscheiden, die Sie verfolgen möchten.
TOOGAM
Ich habe diese Antwort gefunden, um (vielleicht) die größtmögliche Klarheit zu schaffen. Also, es gibt keine wirkliche Notwendigkeit, dass es eine Potenz von 2 ist? Die meisten Speichermediengrößen haben nichts Besonderes an Zweierpotenzen?
Abdul
1
@Abdul Most (Verbraucher) Speichergeräte haben den Benutzer zugänglichen Kapazitäten, die nicht im Sinne von Bytes (oder implizit auch Bits), eine Zweierpotenz ist . Wie bereits erwähnt, können die exakten Kapazitäten von Festplatten weitgehend zufällig ausgewählt werden, sofern sie den Markierungsanforderungen entsprechen. SSDs tendieren dazu, näher an 2 ^ n zu sein, weil Flash-Speicherchips in Größen hergestellt werden, die oft ganze Zweierpotenzen haben (weil sie Adressleitungen haben und solche Dinge, die das zu einem Vorteil machen), aber aufgrund von Überprovisionierung nicht die gesamte Flash-Kapazität Der Zugriff erfolgt über eine externe Software für den integrierten Flash-Controller.
ein Lebenslauf vom
5

Andere Antworten haben den historischen Grund für den Unterschied angesprochen, aber es scheint mir, als würden Sie nach dem Unterschied gemäß der Mathematik fragen.

Sie haben Recht, dass eine Potenz von 10 größer als eine Potenz von 2 ist und umgekehrt ein Gigabyte (10 ^ 9 Bytes) kleiner als ein Gibibyte (2 ^ 30 Bytes) ist.

Die Größenumkehrung erklärt sich aus der Tatsache, dass ein Gibibyte (30 Potenzen) mehr Potenzen enthält als ein Gigabyte (9 Potenzen). Es stellt sich heraus, dass die Anzahl der Kräfte einen größeren Einfluss auf die endgültige Größe hat als die Größe jeder einzelnen Kraft.

Inwieweit die gemeldete Größe einer Festplatte in Gibibyte (2 ^ 30) kleiner ist als in Gigabyte (10 ^ 9), ist es normal, dass eine größere Maßeinheit bei der Messung einer festen Größe eine kleinere Zahl ergibt . Betrachten Sie beispielsweise die Höhe in Zoll im Vergleich zur Höhe in Zentimetern. Da ein Zoll größer als ein Zentimeter ist, misst dieselbe Höhe weniger Zoll (z. B. 72 Zoll) als Zentimeter (z. B. 183 Zentimeter). Die Höhe ist in beiden Fällen die gleiche physikalische Entfernung, aber jede Messung gibt nur eine andere Zahl entsprechend der Maßeinheit.

Edward Peek
quelle