Размер файлов в ОС Windows. (Это КБ или КБ?)

20

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

Таким образом, у нас есть 3 варианта использования префиксов - JEDEC, IEC (оба в двоичном формате) и метрический (в десятичном формате).

Мои вопросы-

  1. Какой префиксный стандарт использует Windows при отображении размера файла? (конечно, это не стандарт IEC)
  2. Почему ОС Windows отображает размеры файлов в килобайтах (используя заглавную букву «K»), когда это маленькая буква «k» для килограмма в единицах СИ?

Прописная буква «К» представляет Кельвин в системе единиц СИ.

Я что-то здесь упускаю в понимании?

как
источник
9
@Luaan: SI конвенции являются наиболее распространенной конвенцией далека за единицы, даже для внесистемных единиц. Например, они пытаются запустить LHC при 13 ТэВ, но эВ (электрон-вольт) - это не СИ. Когда вы говорите, что уровень окружающего шума составляет 40 дБ, B (bel) также не является SI.
Дитрих Эпп
2
@DietrichEpp: Это все еще физика. Байт не является единицей физики; физики измеряют информацию как энтропию (единица измерения: J / K).
MSalters
3
Соответствующий: xkcd.com/394
basic6
3
@MSalters: «Бел» - это не физика, это абстрактная единица, подобная байту.
Дитрих Эпп
2
Я имею в виду «абстрактный» в том смысле, что Бел не соответствует какой-либо конкретной (или физической) системе. Он используется только для выражения отношения, даже не отношения чего-то конкретного (например, мощности). Например, при цифровой обработке сигналов дБ будет использоваться для выражения соотношений цифровых сигналов, которые не имеют физических единиц для начала. Поэтому я категорически не согласен с тем, что децибел является «физической» единицей или каким-то особым образом связан с физикой.
Дитрих Эпп

Ответы:

41

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

1.) Какой префикс стандартного Windows используется при отображении размера файла? (конечно, это не стандарт IEC)

На самом деле это стандарт JEDEC 100B.01, который означает, что КБ (килобайт) составляет 1024 байта.

2.) Почему ОС Windows показывает размер файлов в килобайтах (используя заглавный алфавит «K»), когда это маленький алфавит «k» для килограмма в единицах СИ.

Опять же, потому что это стандарт JEDEC 100B.01 для единичных префиксов для емкости хранения полупроводников; это не единица измерения СИ и, следовательно, не имеет того же значения.

Нижний регистр kможет быть синонимом верхнего регистра Kпри работе с kilo/ kibi; для giga, megaи tera, нормы JEDEC , ISO и BIPM SI префикса определяют их в верхнем регистре G, Mи Tсоответственно. Строчный g, mи tиспользуются только в неформальных ситуациях, когда контекст дает значение (как я только выгружен моему 1gb NIC или моему 2tb Жесткий диск не работает ), и сам по себе недействительны.

Прописная буква «К» представляет Кельвин в системе единиц СИ. Я что-то здесь упускаю в понимании?

Да, заглавная буква Kозначает, Kelvinкогда вы конкретно говорите об измерениях температуры и единицах измерения СИ, однако мы имеем дело с емкостью хранения полупроводников, и я бы не сказал, что имею, 512 KB of RAMа имею в виду, что имею 512 Kelvin Bytes of RAM. Кроме того, действительно зависит от контекста, чтобы знать, когда / как провести различие между единицами измерения IEC / JEDEC и SI, KB / MB / GB / и т. Д.

Большинство ОС и подавляющее большинство устройств, которые имеют дело с памятью / хранилищем, используют префиксы Kдля Kilo, чтобы обозначать 1024 байта, поэтому, когда я получаю ОЗУ, которое говорит, что это модуль 4 ГБ, я знаю, что это 4 Gibi -Bytes (4 * 1024 * 1024 *). 1024) , а не Giga -Bytes (4 * 1000 * 1000 * 1000).

Основное исключение из этого - пропускная способность; когда я куплю флешку или жесткий диск, я знаю , когда он говорит , 32GB, это означает , что 32 Giga -Bytes (32 * 1000 * 1000 * 1000) , а не GİBİ -Bytes (32 * 1024 * 1024 * 1024), хотя мой ОС сообщит об этом в Gibi-Bytes (и, таким образом, перенесет мой диск с 32 ГБ на эффективный диск на 29,8 ГБ). Также обратите внимание, что есть некоторые разновидности Linux, которым нравится использовать КБ для обозначения 1000 байтов, независимо от контекста, и это может несколько запутать, поскольку не все приложения в одной и той же ОС сообщат одинаковые размеры. Большинство производителей устройств обычно помещают заявление об отказе где-то на «поле» (или веб-сайт и т. Д.), Чтобы обозначить, что они имеют в виду, когда говорят «КБ / ГБ / и т. Д.», Например, на коробках с жестким диском, на которых отказ от ответственности *1GB = 1000000000 bytes.

Если вы когда-либо не понимаете, о каком стиле ваша ОС сообщает вам, вы всегда можете посмотреть, сколько байтов занимает файл, а затем выполнить математические расчеты, чтобы увидеть, о чем говорит ваша ОС («размер файла», а не «размер на диске», поскольку это разные вещи); если ваша операционная система не может подсчитать количество необработанных байтов, есть проблемы, не связанные с тем, какой суффикс она использует.

Или, как сказал Рэндалл: килобайт

txtechhelp
источник
7
«Большинство ОС и подавляющее большинство устройств, которые имеют дело с памятью / хранилищем, используют префиксы K для Kilo, чтобы обозначать 1024 байта». Начиная с 10.6, OS X больше не делает. Это довольно значительная ОС.
Сёрен Куклау
2
@Ramhound: Не могли бы вы найти источник для этого? OS X, кажется, использует правильные префиксы по умолчанию в моей системе, и я не вижу возможности изменить его. Существует возможность выбора метрических или американских единиц измерения, но нет возможности использовать двоичные префиксы.
Дитрих Эпп
1
MacOS и некоторые дистрибутивы Linux, такие как Ubuntu, переключились на десятичный префикс, чтобы размер файла соответствовал размеру жесткого диска. KB = 1000 байтов и GB = 1000 байтов
phuclv
4
Жесткие диски не являются «исключением». "ГБ" на DVD - в десятичных гигабайтах. Десятичные префиксы также используются для пропускной способности ленты, скорости сети («гигабитный Ethernet» составляет 1000 ^ 3 бит / с), тактовой частоты процессора и шины и значений пропускной способности, а в старые времена так называемая «скорость передачи в бодах» на последовательных интерфейсах порты. Во всяком случае, RAM является исключением почти для всех остальных продуктов в этой области, использующих десятичные префиксы. По какой-то причине Windows Explorer решил использовать соглашение JEDEC вместо соглашения, используемого производителями жестких дисков, которые содержат файлы, о которых говорит вам Explorer.
Джейми Ханрахан
2
@JamieHanrahan: В накопительном накопителе исторически использовались секторы с степенью двойки и блоки распределения, которые были степенью двойного числа секторов. 360K дискета содержала 720 секторов по 512 байт каждый; дискета размером 1,44 МБ имела 2880 таких секторов [мегабайт был 1 024 000 байт]. Только после увеличения емкости накопитель уменьшился.
суперкат
14

В проводнике Windows КБ означает килобайт, где он относится к двоичному килограмму из 1024 байтов. Исследователь использует заглавную букву «K» для «обозначения» двоичного файла, в отличие от строчной буквы «k», которая является стандартным килоприставкой в ​​СИ и означает «1000».

Сообщение в блоге Раймонда Чена Почему Explorer использует термин KB вместо KiB? дает обзор, почему Windows не использует KiB.

Если вы посмотрите вокруг себя, то обнаружите, что никто (с точностью до ошибки эксперимента) не использует термины kibibyte и KiB. При покупке памяти компьютера ее объем указывается в мегабайтах и ​​гигабайтах, а не в мегабайтах и ​​гибибайтах. Емкость, указанная на вашем чистом компакт-диске, указана в мегабайтах. Каждый документ в Интернете (с точностью до ошибки эксперимента), в котором говорится о памяти и хранилище, использует термины килобайт / КБ, мегабайт / МБ, гигабайт / ГБ и т. Д. Вам нужно найти способ найти людей, которые используют термины кибибайт. / KiB, мебибайт / MiB, гибибайт / GiB и др.

...

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

Алексей Иванов
источник