`df`がバイトの省略形として「Bi」を使用するのはなぜですか?


8

どうやらdf各サイズの大文字の後に「i」を付けているようです。これは、キロバイト/キビバイト、ギガバイト/ギビバイト、およびメビバイト(これが "Mi"の意味する場合)には意味があります。しかし、なぜバイトに「Bi」を使用するのでしょうか。

たとえば、私の結果の一部df -hは次のとおりです。

map auto_home           0Bi    0Bi    0Bi   100%       0          0  100%   /home

1
の結果はdf -H何ですか?RTM- hオプション出力がベース2であり、Hオプションの出力はベース10である
fd0と

回答:


9

これは、10進数値と2進数プレフィックスの違いです。 この場合、0バイナリバイトを使用していることを示しています。

違いは何ですか?

例として「ギガ」を使用すると、何かの1000 3(つまりギガヘルツ)を意味します。

コンピューターでは、興味深い問題が発生します。

ギガバイトは1000 3バイトです。ただし、バイトは8(バイナリ)ビットです。つまり、技術的には1024 3バイトです。これを説明するために、異なる表記法を使用します。

  • ギガは10進数(基数10)
  • Gibiはバイナリ(base 2)

出力は、バイナリ単位を使用していることを示しています。

「人間が読める10進表記」で出力を取得する場合は、大文字の「H」を使用します。

$ df -H
/dev/disk2      1.1T   413G   706G    37% 100935848 172431606   37%   
map auto_home     0B     0B     0B   100%         0         0  100%   /home

最後に、これは実際にはAppleの規約ではなく、BSDの規約です(BSDコマンドです)。詳細については、manページ(man df)を参照してください。


8
これが質問にどのように答えるかはわかりません。OPは、それは彼らが違いを知っていることが明らかになります1GB1GiB。質問です:どのような違いである1Biとは1B?なぜ2つの異なるシンボルなのですか?
フェデリコポローニ2017年

5
「ギガバイトは1000 ^ 3バイトですが、1バイトは8(バイナリ)ビットです。つまり、技術的には1024 ^ 3バイトです。」-8ビットのバイトが1000 ^ 3ではなく1024 ^ 3を意味するギガバイトにどのようにつながるかわかりません...
marcelm

@marcelmギガバイト= 1024メガバイト。メガバイト= 1024キロバイト。キロバイト= 1024バイト。1024 = 2 ^ 10。
ドミトリーKudriavtsev

3
@marcelm正解です、それは不平等ではありません。メモリ(RAM)は、チップの製造方法により、常に2の累乗で測定されます。回転するディスク上のスペースは、物理的な表面積とビット密度に依存するため必ずしも必要ではありません。ディスクメーカーは、ボックスの数値をより見栄えよくするために1000の累乗を使用することを選択しました。「Gibi」と同様の接頭辞は、それらを区別しようとする遡及的な作成でしたが、明らかにそれらは物事をより厄介にするだけです。
BradC 2017年

1
10進数のプレフィックスが以前の2 ^ xの数値に使用された本当の理由は、2 ^ 10〜10 ^ 3です。
クラノマ

5

Biは、1000 0バイトではなく、1024 0バイト単位であることを意味します。

つまり、それらは同じ単位ですが、ゼロ以外の指数を意味するより大きなプレフィックスはありません。df2のべき乗モードのときに一貫性を保つための方法として、それはただの見た目です。

これは作り上げの慣例です。メトリックまたはIEC「Bi」単位はなく、「i」で終わる2文字のIECプレフィックスのみがあり、ビットまたはバイトの量で使用します。(例えば、メビバイトまたはメビビットのMi。)そして、いいえ、あなたは決してまっすぐな顔で皮肉にも大声でそれを言うとは思われません。

「iB」の方が理にかなっているかもしれません(接頭辞のないバイナリバイト)。


2
では「iB」にすべきではないでしょうか?;)
Cai

1024 ^ 0は1000 ^ 0(= 1)とまったく同じなので、説明はありません。(バイトは本質的にバイナリを意味するため)バイナリバイトを示す用語/記号はないため、例としてギガを使用しました。2進数の0と10進数の0は等しく、混乱を招く可能性があるため、0を示すのはさらに困難です。
Allan、

@Cai:私がチェックしたところ、IECの接頭辞には常に「i」と接頭辞が含まれており、「iB」基本単位については言及していません。更新された回答を参照してください。しかし、はい、それはより一貫しているだろうと同意しました。もちろん、この文脈(FreeBSD / OS X df出力)では、それが意味します。
Peter Cordes

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