1

ファイル /proc/net/dev を見て、受信バイト値の単位変換について疑問に思っています。

私が考えているファイルの部分は次のとおりです。

Inter-|   Receive
 face |bytes
  eth0: 7060880392

ifconfig は /proc/net/dev を使用して以下を生成します。

eth0      Link encap:Ethernet 
          ...
          RX bytes:7060880392 (7.0 GB)

それは私が理解していないものです。値の単位が (ビットではなく) バイトであることを考えると、1024 の除算によって GB に変換されると予想されます。7060880392/1024/1024/1024 = 6.6GB。しかし明らかに、ifconfig は 1000 の分割を使用して B から GB に変換しています。

誰かがなぜ彼らがこれをしたのか説明できますか? 帯域幅は一般にビットで表されることは知っています。おそらく /proc/net/dev のラベル付けは、値の単位をバイトとして参照する際に間違っていますか? proc のマンページを確認しましたが、このファイルの詳細はあまりありません。

4

1 に答える 1

1

この用語GBは 10 塩基をGiB表し、2 塩基 (1024) を表します。ウィキペディアで詳細を読む:バイナリ プレフィックス。

関連する情報は、「コンピューター化された」計算に適合するための分割ではなく、送受信されたバイト数であるため、実装者が GiB の代わりに GB を使用することを選択したという知識に基づいた推測を行います。

于 2013-10-13T14:30:33.807 に答える