ストレージ容量との混乱(10と2の累乗)[複製]


23

私はHDDを見ていて、次のような文書(東芝のリンク:2.5インチSATA HDD mq01abdxxx)を見つけました。

「1ギガバイト(1GB)は、10の累乗を使用して10 ^ 9 = 1,000,000,000バイトを意味します。ただし、コンピューターのオペレーティングシステムは、1GB = 2 ^ 30 = 1,073,741,824バイトの定義に対して2の累乗を使用してストレージ容量を報告するため、より少ないストレージを示します容量。"

その場合、10の累乗は2の累乗より大きくなります。

例10 ^ 2 = 100および2 ^ 2 = 4。

しかし、私は同じストレージ容量について述べている文書を理解していません:

1GBは1,000,000,000バイト(10の累乗)および1,073,741,824バイト(2の累乗)です。したがって、ストレージ容量が少なくなります(2の累乗)。なぜ少ないのですか?1の場合、10の累乗よりも2の累乗の方がストレージ容量が多くなります。


13
「なぜ小さいのですか?1ギガバイトの場合、10の累乗よりも2の累乗のほうがストレージ容量が多くなります。」インチ単位の身長は、センチメートル単位よりもインチ単位の「長さの許容量」が大きいため、センチメートル単位の同じ高さよりも小さい数値になります。したがって、固定値を表すには、単位が大きいほど数値が小さくなります。
カミルマシオロウスキ16年

4
少なくとも2つの異なるベースで表される同じ値です。
ラムハウンド

2
10 ^
2-100

4
「コンピューターのオペレーティングシステム」-私はしません...または、実際には、GUIではMB(base10)を使用しますが、CLIではMiB(base2)を使用します。面白くするためだけに。
-marcelm

2
彼らは、「10の累乗」は、2の同様の大きさの累乗よりも小さいと言っています。たとえば、1000(10 ^ 3)<1024(2 ^ 10)。そして1000000(10 ^ 6)<1048576(2 ^ 20)。ドライブメーカーにとって、1テラバイトのハードドライブには(少なくとも)1,000,000,000バイト(実際にはもう少し)がありますが、オペレーティングシステムのユーティリティでは、1テラバイトは1,099,511,627,776バイトです。そのため、OSは1Tbハードドライブを931Gbまたはそれ以上として報告します。(または、そうでない場合は、上記の@marcelmを参照してください。)
davidbak

回答:


58

2のべき乗を使用する歴史的な理由は、バイナリコード上の行で構成されるアドレス空間を使用してCPUがメモリとハードディスクにアクセスするためです。ハードウェアプロデューサーは、この方法で名前を決定しました。

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

通常のユーザーにとっては、それはナンセンスで面倒です。さらに、接頭辞「kilo」、「mega」などは、国際単位系と矛盾します、「1キロワット」が10 ^ 3または1000ワットを意味する(SI)標準と矛盾します。

この問題を解決するために、2000年に国際電気標準会議(IEC)は、ISO / IEC 80000-13基準の2の累乗に基づくユニットの表記法を提案しました。

新しい名前は、古い名前の2番目の音節を「bi」(「2」を参照)に置き換えることで作成されました。キロバイトは今でなければなりませんキビバイトのように。新しいユニットにも対応するシンボルが追加されたため、「10キビバイト」は10 kBではなく10 KiBと表記されるようになりました。これは対応表です。

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年後も、多くのハードウェアおよびソフトウェアベンダーは、SIでベース2ユニットを参照しています。名ます。「メガバイト」とは、1000000バイトまたは1048576バイトを意味します。

100 GBのハードドライブを購入する場合、容量は100x10 ^ 9または10 ^ 11バイトです。しかし、これは大きなことですが、オペレーティングシステムはドライブの容量が93 GBであるとのみ報告し(10^11)/(2^30)ます。100 ギガバイトのドライブを購入しました。これは93 ギガバイトに相当しますドライブを。オペレーティングシステムは、間違った表記を使用しているものです。

ドライブの製造元は、この問題を免責事項と説明で隠しており、常に「実際のフォーマット済み容量は少ない可能性がある」という結論に至ります。


1
コメントは詳細なディスカッション用ではありません。この会話はチャットに移動さました
ジャーニーマンオタク

21

要するに、マーケティングがすべてでした。

jcbermuはうまく説明しましたが、その背後にある理由には同意しません。

インフォマティクスシステムはバイナリシステムを使用しますが、ビットとバイトは^ 2として書き込まれますが、これは正常です。したがって、混乱の原因になっているのはオペレーティングシステムやソフトウェアではありません。ここではすべてがバイナリです。

HDDの容量を^ 10システムで述べるのはHDDメーカーのせいです。これにより、実用的なGBがかなり失われます。20GBのHDDは実際には18GBなどを保存できます... 1TBのドライブは実際には〜930GBです。「バイバイト」のock笑は、混乱の一部を防ぐために発明されましたが、実際に採用されることはまったくありませんでした。


10
これは、ディスク上のバイトが「出荷後に解決」されたためです。
-davidbak

2
本当です。「16 gibi RAMにアップグレードしました」と言っている人はいません。メーカーが混乱に責任があるとは思いませんが、確かに利益を得ています。80年代と90年代に、コンピューターユーザーは、キログラムとキロバイトの違いとその理由を知っていました。最近、コンピューターがバイナリー演算で実行されることを誰が知っていますか?
クローリー

4
それはマーケティングに関するものではなく、そうではありませんでした。別のベースを使用することは理にかなっていないため、ハードドライブとフロッピーは常に本物のSIプレフィックスを使用して販売されています。
パイプ

1
-1、ひどい。 It's the fault of HDD manufacturers to state the HDD capacities in ^10 system, which robs you of quite some practical GB.いいえ、どちらも真実ではありません。HDメーカーは、ユニットの実際の正しい定義を使用して、ずっとずっとそれを行ってきました。開発者、メモリメーカー、その他のSIユニットを不正確に使用しているのは彼らのせいではありません。そして、もちろん、ストレージスペースがどの単位で測定されるかは、「実用的なGBを奪う」ことも、実際に容量を変更することもありません。
HopelessN00b

1
@pipe:720KBのフロッピーには、それぞれ512バイトの1,440ブロックが正確に保持されていました。KBで測定される他のサイズでも同様です。私が知る限り、磁気記憶メディアでの「MB」の最も一般的な意味は1,024,000バイトで、1.44MBフロッピーは720KBのちょうど2倍の大きさでした。
supercat

16

jcbermuの答えは良いですが、これに別の角度からアプローチしたいと思います。

1GBは1,000,000,000バイト(10の累乗)および1,073,741,824バイト(2の累乗)です。したがって、ストレージ容量が少なくなります(2の累乗)。なぜ少ないのですか?1の場合、10の累乗よりも2の累乗のほうがストレージ容量が多くなります。

ストレージメディア- 任意ストレージメディア)は、特定の数のアクセス可能なビットを格納できます。通常、汎用コンピューティングでは、バイトまたはバイトの倍数として表されますが、たとえばメモリIC(集積回路、チップ)を見ると、メモリ容量はアクセス可能なビットで表されます。

ハードディスクには、特定の数のビットまたはバイトが格納されますが、これらは技術的な理由により、セクターの観点から対処されます。たとえば、4 TBドライブには、それぞれ512バイトの7,814,037,168セクターがあり、4,000,787,030,016バイトのストレージ容量になります。それが実際に得られるものです。(実際には、ファイルシステム、ジャーナル、パーティションなど、コンピューターの簿記情報の一部が失われます。ただし、バイトはまだ存在します。ファイルを効果的に保存できるデータ。)

もちろん、4,000,787,030,016という数字はやや扱いにくいです。そのため、この情報を他の方法で表すことを選択しますしかし、jcbermuが示すように、10の累乗または2の累乗という2つの異なる方法で選択します。

10の累乗では、4,000,787,030,016バイトは4.000787030016 * 10 ^ 12バイトで、非常にうまく丸められます。有効桁数が4桁の場合、SIの「テラ」の定義では10 ^ 12になり、4.001 TBに丸められます。私たちのハードディスクは4 * 10 ^ 12バイト以上を保存できるので、SIの用語では、4テラバイトのストレージデバイスです。

2の累乗では、4,000,787,030,016バイトは3.638694607 * 2 ^ 40バイトであり、これはそれほどうまく丸められません。それはまた見える3.639は4.001未満であるため、数量少ないようにが、はマーケティングには不適切です(隣のメーカーが4.0 TBドライブを同じ価格で販売しているときに3.6 TBドライブを購入したい人はいますか?)。これは、バイナリプレフィックス3.6「テビバイト」です。「bi」は、2を基数とすることを示します。

ただし、実際には、まったく同じバイト数です。番号は異なるようにしか表現されていません!再度計算すると、3.638694607 * 2 ^ 40 = 4.000787030016 * 10 ^ 12と表示されるため、最終的に同じストレージ容量が得られます。


1
わかりやすく説明していますが、セクターの数(例では7,8 [...]など)は、容量が目的の値になるようにメーカーによって選択されます。80億のセクター、8589934592、またはその他の任意の数のセクターを作成して、真のキャパシティー値を得ることができますが、それはビジネスには適していません。技術的には違いがあるため、メーカーとして大きな市場ヒットを狙います。ロゴTrueCapacity(r)またはTrueSpace(r)で、このマーケティング手法と他のメーカーによって売上が増加することが保証されています。従わなければならない(そうする準備ができていない)。
オーバーマインド

@Overmind:それは可能なマーケティング手法の1つです。1秒ごとの請求があった(T-Mobileが買収する前の)Aerial Communicationsと同様です。もしあなたがストレージデバイスメーカーのマーケティングを担当していたら、その戦略はあなたが追求を検討することを決定したものになると思います。
TOOGAM

私はこの答えを見つけて、最も明快なものにした(おそらく)。それで、2のべき乗である必要は実際にありませんか?ほとんどの記憶媒体サイズが2のべき乗であることについて特別なことはありませんか?
アブドル

1
@Abdulほとんどの(消費者)ストレージデバイスには、ユーザーのアクセス可能な容量がありません。これは、バイト数(または含意ではビット数)で2のべき乗ではありません。上記のOvermindのように、HDDの正確な容量は、マーキング要件を満たしている限り、ほぼランダムに選択できます。SSDは2 ^ nに近くなる傾向があります。これは、フラッシュメモリチップのサイズが2のべき乗であることが多いためです(アドレスラインなどが利点となるため)が、すべてのフラッシュ容量ではありません内蔵フラッシュコントローラの外部ソフトウェアからアクセスできます。
からCVn

5

他の答えは違いの歴史的な理由に対処しましたが、数学による違いについて尋ねているように思えます。

10の1の累乗は2の1の累乗より大きく、逆に1ギガバイト(10 ^ 9バイト)は1ギビバイト(2 ^ 30バイト)より小さいことは正しいです。

サイズの反転は、1ギガバイトのパワー(9乗)よりも1ギビバイトのパワー(30乗)が多いという事実によって説明されます。パワーの数は、個々のパワーのサイズよりも最終的なサイズに大きな影響を与えることがわかります。

報告されたディスクのサイズがギガバイト(2 ^ 30)で測定した場合、ギガバイト(10 ^ 9)で測定した場合よりも小さい理由については、測定単位が大きいほど小さい数値が得られるのは一定量を測定した場合よりも自然です。たとえば、インチ単位の高さとセンチメートル単位の高さを考慮します。1インチは1センチメートルよりも大きいため、同じ高さではセンチメートル(たとえば183センチメートル)よりも少ないインチ(たとえば72インチ)が測定されます。高さはどちらの場合も同じ物理的距離ですが、各測定値は測定単位に応じて異なる数値を示します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.