Почему Ubuntu больше не будет измерять размер файла в байтах, мегабайтах, гигабайтах и ​​т. Д.?


13

Я где- то читал, что Ubuntu больше не будет использовать знакомые единицы размера файлов, которые мы все знаем (кБ, МБ, ГБ, ТБ), и переключаться на другой стандарт IEC (KiB, MiB, GiB, TiB). Если это правда, я хотел бы знать, в чем причина этого изменения, и влияние (если таковое имеется) это изменение, особенно с многоплатформенными приложениями или приложениями, запущенными с Wine.


3
Байт - это байт. Плохой пример.
Натан Осман

2
Насколько мне известно, в Ubuntu уже используется KiB, MiB ... и т. Д. Так что «Ubuntu больше не будет ..» должно быть «Ubuntu больше не ..»
Weboide

Ответы:


60

Короткий ответ - да, префиксы меняются. Но это не имеет значения.

аргументация

Всегда была путаница, потому что в двоичных данных использовались десятичные единицы, такие как KB, MB, GB - KB означал 1024 байта, а не 1000 байтов, как можно было ожидать. И, конечно же, многие люди по всему миру используют фактические десятичные префиксы в своей повседневной жизни в рамках метрической системы.

Сетевые инженеры и давние пользователи компьютеров, конечно, обучены понимать разницу, но продолжающаяся путаница означала, что приложения были непоследовательны в их использовании; одно приложение может использовать MB для обозначения 1 000 000 байтов (с использованием десятичного префикса), а другое - для 1 048 576 байтов (с использованием двоичной интерпретации).

Это привело к тому, что Ubuntu в конечном итоге приняла новую политику единиц .

Влияние

Воздействие на самом деле просто проблема отображения. Размеры файлов и пропускная способность сети будут отображаться с использованием десятичных префиксов, поэтому размер файла 5 КБ будет на самом деле 5000 байтов. Это на самом деле соответствует тому, что ожидают многие (большинство?) Людей.

Использование памяти и некоторые низкоуровневые утилиты будут отображать размеры с использованием двоичных префиксов (KiB, MiB, GiB, TiB). Это может вызвать некоторую первоначальную путаницу, но на самом деле это лучше, чем статус-кво, где у нас есть один префикс, означающий две разные вещи.

Поскольку Windows по-прежнему использует старую специальную специальную систему, приложение Wine может отображать немного разные размеры файла для одного и того же файла. Однако, по крайней мере, я часто вижу разные размеры, отображаемые в любом случае из-за методов округления, поэтому я не уверен, что это главная проблема.

Смотрите также:


2
Да. Почему бы не сделать так, чтобы политика просто использовала 1 МБ, чтобы означать 1024 во всех случаях? Если люди купят диск объемом 2 ГБ (который на самом деле является диском объемом 2 ГБ), а затем откроют его в Ubuntu, он будет равен 2,2 ГБ или около того.
Насколько

Диск на 200 ГБ
txwikinger

2
@mlissner: на самом деле, использование MB для обозначения 1024 × 1024 байта всегда было неправильным, даже если это было обычное использование, и именно поэтому новые двоичные префиксы были стандартизированы 11 (!) лет назад. Таким образом, Ubuntu только внедряет 11-летний стандарт IEC и 2-летний стандарт ISO (теперь известный как ISO / IEC 80000).
JanC

2
Меня никогда не смущало, пока 1kB составлял 1024 байта.
Берли

-1

ЭТО ТАК ... ПРОСТО !!!

Несколько лет назад было очень мало путаницы по этому поводу. Потому что запись

  • 1 КБ = 1024 байта
  • 1 МБ = 1024 КБ

в течение многих лет преподавался, изучался и использовался во всех университетах и ​​почти во всех отраслях промышленности (программное и аппаратное обеспечение) по всему миру.

Глупая идея подсчета в базе 1000 (даже не в базе 10) является лишь еще одним признаком глупости нашего времени и современной жизни.

Что делает вещи намного хуже, так это более глупая идея попытаться установить (и продолжать это делать) старую нотацию для непрактичных 1000-базовых юнитов. ТО, ЧТО СОЗДАЛ ВСЕ СМЕШЕНИЯ. Если бы они только приняли конвенцию, которая

  • 1 КиБ = 1000 байт
  • 1 МиБ = 1000 байт

тогда было бы намного меньше беспорядка, и проблема была бы намного меньше.

Они должны были попытаться установить, что

1KB = 1024 bytes
1MB = 1024 KB

and

1 Ikb or ikb or Kib = 1000 bytes
1 IMb or imb or Mib  = 10^6 bytes

Абсолютно нет необходимости использовать базовые 1000 единиц. Вероятно, идея возникла в упрямом уме, который сказал: «О, нет, если килограмм равен 1000, а мега - 1 000 000, мы будем использовать килограмм и мегапиксель в базе 1000 для информационных единиц (база 2!)». Все это только потому, что однажды, но это было намного дольше, у кого-то возникла неудачная идея (хотя и не так уж и плохо) назвать килобайты (кб) кучей 1024 байта. Если бы он выбрал k2b и m2b и назовет их kitwo bytes и mitwo bytes (или kookie bytes , mookie bytes и gookie байт), например, всей этой запоздалой идеи использования base-1000 для всех приложений и всей операционной системы и навязывания ее как нормального способа говорить о мерах в HW и SW для людей, не было бы, что делает вещи намного хуже.


3
На самом деле, мы делаем это более логичным. Смотрите, например, мы используем км, когда мы имеем в виду 1000 метров. Почему это должно быть иначе? Причиной k = 1024 является производительность и простота. Очень быстро просто сдвинуть эти биты вместо того, чтобы делать реальные деления. Однако сегодня, когда все больше и больше, расхождение между 1024 ^ n и 1000 ^ n . Хотя это не было проблемой, потому что они были практически одинаковыми, это начинает сбивать с толку.
Георг Шолли

1
в течение многих лет преподавался, изучался и использовался во всех университетах и ​​почти во всех отраслях промышленности (программное и аппаратное обеспечение) по всему миру. Нет, не было. Это миф, распространяемый программистами, чтобы оправдать свою лень. «мегабайт» в 1960-х означал «1 000 000 байтов», а «килобайт» означал «1000 байтов». Microsoft главным образом виновата в бессмысленных и непрактичных устройствах на основе 1024.
эндолит

-2

Это действительно сбивает с толку то, что произошло с изменениями в обозначении размеров еще в 1998 году, и было бы намного проще, если бы они просто добавили новый набор в степени 10 в качестве нового обозначения, но, к сожалению, они этого не сделали, потому что рассуждения на время было сосредоточено вокруг исправления этимологии используемого слова «килограмм», поэтому всем оригинальным размерам, основанным на степенях 2 (1024), были даны новые имена и новые обозначения, а затем новая степень 10 чисел приняла первоначальный ярлык до 1998 года имена.

Итак, начнем путаницу:

До 1998 года килобайт занимал 1024 байта и обозначался как K или KB.

После 1998 года первоначальный килобайт до 1998 года был переименован в Кибибайт и получил новое обозначение K или KiB, а также был создан новый пост килобайта 1998 года, который составляет 1000 байтов и имеет сокращенное обозначение KB, поэтому сегодня мы имеем следующее:

1 КБ = 1000 байт (КБ не может быть сокращено до К) 1 КБ = 1000 байт (КБ может быть сокращено до К)

Все обозначения были изменены таким образом, что KB является официальным сокращением, которое относится к текущему килобайту (1000), в то время как K и KiB официально являются официальными сокращенными обозначениями для Kibibyte (1024).

Это становится особенно запутанным, потому что большинство из нас, кто был в первые дни задолго до 1998 года, привыкли называть килобайты 1024 байтами и записывать в качестве сокращенного обозначения либо КБ, либо К, но сегодня это неправильно, и все мы делаем это на самом деле к "Kibibytes", когда мы говорим "Kilobytes" и часто используем неправильное обозначение в соответствии с официально аннулированными мировыми стандартами, установленными IEC в 1998 году, что немного сбивает с толку, но не так уж плохо, за исключением того, что теперь даже 18 лет спустя многие люди , которые до сих пор не понимают , что K и KB являются нЕ одинаковы и абсолютно разные.

Так что на самом деле есть разница между «K» (1024) и «KB» (1000)!

Это, кстати, и есть та самая причина, почему на жестких дисках всегда оказывается гораздо меньше места, чем они рекламировали, но производители жестких дисков - те, кто прав и используют современные стандарты, когда они пишут «Терабайт» на упаковке, когда человек, покупающий диск, на самом деле думает с точки зрения Тебибайта и ожидает места как такового.

Между прочим, разница между 2 ТБ (терабайт) и 2 ТБ или 2 ТБ накопителя (Тебибайт) очень значительна, на 199 023 255 552 байта меньше, чем 2 Т или 2 ТБ накопителя, и меньше разницы величины чуть более 185 G или GiB (Gibibytes), что, по иронии судьбы, большинство людей на самом деле думают чаще всего, когда говорят «Gigabyte», хотя и по ошибке.

Это одна из странных сторонних арендодателей, известных в компьютерном мире. Это хорошая сноска, которую нужно знать, и она объясняет некоторые странные несоответствия, о которых многие люди сегодня даже не подозревают.

Многие люди думают и говорят имя «килобайт» (1000), когда на самом деле думают об «кибибайте» (1024), и это становится все более запутанным, поскольку люди пишут стенограммы взаимозаменяемо, но это неверно, современный килобайт должен быть помечены «КБ» и не должны быть ни «К», ни «КиБ» нигде в какой-либо документации или программе, которая, как только что объяснено, фактически ссылается на Кибибайт (1024).

Сокращенные обозначения K (1024) и KB (1000) больше не являются одним и тем же, и в случае Kibibyte можно использовать либо K, либо KiB, но не KB.

Это твой мозг, это твой мозг на кибибайтах - жареный еще?

лол


«До 1998 года килобайт занимал 1024 байта и обозначался как K или KB». Это миф Например, Shugart SA 400 содержал 109 375 байт и продавался как «109,4 Кбайт» в 1976 году . CDC 9746 содержал 60 000 000 байтов и продавался как «60 M байтов» в 1974 году.
Эндолит
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.