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)。阅读更多维基百科:二进制前缀。

我会做出有根据的猜测,实施者选择使用 GB 而不是 GiB,因为相关信息是发送/接收的字节数,而不是它们的划分以适应“计算机化”计算。

于 2013-10-13T14:30:33.807 回答