我看到在Ubuntu中使用"MiB"作为表示大小的单位。MiB代表什么?特别是那个"i"代表什么?
10⁰ = 1
10¹ = 10
10² = 100
10³ = 1000
2⁰ = 1
2¹ = 2
2² = 4
2³ = 8
Prefix Bytes Prefix Bytes
1 Byte = (2^10)^0 = 1 1 Byte = (10^3)^0 = 1
1 Kibibyte = (2^10)^1 = 1024 1 Kilobyte = (10^3)^1 = 1000
1 Mebibyte = (2^10)^2 = 1048576 1 Megabyte = (10^3)^2 = 1000000
1 Gibibyte = (2^10)^3 = 1073741824 1 Gigabyte = (10^3)^3 = 1000000000
1 Tebibyte = (2^10)^4 = 1099511627776 1 Terabyte = (10^3)^4 = 1000000000000
正如评论中的nealmcb发现的那样,有一个官方政策:
https://wiki.ubuntu.com/UnitsPolicy
简而言之,该政策提醒开发人员要么使用国际单位制(SI)前缀,要么使用IEC前缀,但绝不能混用。其中还提到:
对于文件大小,有两种可能性:
- 同时显示基于10进制和基于2进制(按照此顺序)。例如Linux内核:“2930277168 512字节硬件扇区:(1.50 TB/1.36 TiB)”
- 仅显示基于10进制,或者给用户选择在基于10进制和基于2进制之间进行切换的机会(默认必须是基于10进制)。