为什么 Ubuntu 将不再以字节、兆字节、千兆字节等来衡量文件大小单位?

Ces*_*sar 13 filesystem

我在某处读到Ubuntu 将不再使用我们现在都知道的熟悉的文件大小单位(kB、MB、GB、TB)并切换到不同的 IEC 标准(KiB、MiB、GiB、TiB)。如果这是真的,我想知道此更改背后的原因是什么,以及此更改的影响(如果有),尤其是对于多平台应用程序或使用 Wine 运行的应用程序。

jbo*_*tie 60

简短的回答是肯定的,前缀会发生变化。但这并没有真正的区别。

推理

一直存在混淆,因为 KB、MB、GB 等十进制单位用于二进制数据 - KB 意味着 1024 字节,而不是预期的 1000 字节。当然,世界各地的许多人在日常生活中都使用公制系统下的实际十进制前缀。

网络工程师和长期计算机用户当然接受过培训以了解差异,但持续的混乱意味着应用程序的使用不一致;一个应用程序可能使用 MB 表示 1,000,000 字节(使用十进制前缀),而另一个可能表示 1,048,576 字节(使用二进制解释)。

这导致 Ubuntu 最终采用了新的单位政策

影响

影响实际上只是一个显示问题。文件大小和网络带宽将使用十进制前缀显示,因此 5kB 文件实际上是 5000 字节。这实际上符合许多(大多数?)人们的期望。

内存使用情况和一些低级实用程序将使用二进制前缀(KiB、MiB、GiB、TiB)显示大小。这可能会导致一些最初的混乱,但实际上比我们有一个前缀意味着两个不同的东西的现状要好。

由于 Windows 仍然使用旧的临时系统,Wine 应用程序可能会为同一文件显示略有不同的文件大小。然而,由于舍入方法,我至少经常看到不同的尺寸显示,所以我不相信这是一个主要问题。

也可以看看:

  • 只要 1kB 是 1024 字节,我就不会感到困惑。 (3认同)
  • 呵呵。为什么不让策略在所有情况下都只使用 1MB 来表示 1024?如果人们购买“2GB”驱动器(实际上是2GiB驱动器),然后在Ubuntu中打开它,则会报告为2.2GB左右。我的理解是,曾经使用 MB 表示 1,000 总是错误的,KB、GB 等也是如此。 (2认同)
  • @mlissner:实际上,使用 MB 来表示 1024×1024 字节一直是错误的,即使它是常用的,这就是为什么新的、基于二进制的前缀在 11(!)年前被标准化的原因。所以 Ubuntu 只是在实施一个 11 年前的 IEC 标准和 2 年前的 ISO 标准(现在称为 ISO/IEC 80000)。 (2认同)