All-For-Kompa.RU

Сегодня:
Карта сайта форум Главная
Скрыть рекламный блок

Всё для компа

chat

Видео дня

Популярное

Реклама

Хочешь помочь проекту? Установи наш баннер!

Партнёры



Развлекательный портал по игре Dota 2. У нас вы первым узнаете о последних игровых новостях, сможете почитать интересные статьи и гайды, посмотреть стримы популярных комментаторов и многое другое.

Про-софт - сайт професионального софта. Ето сайт не только софта но также игровых дополнений, музыки, фильмов, игр для ПК а также читов для ПК игр. Постоянное обновление материалов и каждый день появляется чтото новенькое!

Авторизация


Реклама

Хочешь помочь проекту? Установи наш баннер!

Опрос

Если не спиться

1. лечь спать а не сидеть за компом до 6 утра
2. утопиться
3. обкуриться
4. воды напиться
5. задолбиться
6. обмочиться
7. выпрямиться

Реклама

Хочешь помочь проекту? Установи наш баннер!

Популярные тэги

Комментарии

Счетчики

На сайте: 2
Прохожие: 2
Пользователей: 0
Статус:

Счётчик тИЦ и PR Rambler's Top100
АвторАвтор: leonP4 | ДатаДата: 23.03.2013 |Голосов: 0


В последнее время, читая различные статьи в хабре, всё больше встречаются, что многие авторы до сих пор ничего не знают о ISO/IEC стандартах бинарных префиксов (KiB=кибибайт, MiB=мебибайт и т.д.) и постоянно путают их с SI префиксами (kB=килобайт, MB=мегабайт). Поэтому автор данной статьи решил ещё раз заговорить об этом в надежде, что, прочитав статью, ещё пара человек начнёт пользоваться стандартами!





Ещё в далёком 1999 году IEC (International Electrotechnical Commission) принял международный стандарт IEC60027-2 [IEC60027-2:2005, ISO/IEC80000-13:2008].
Путём публикаций в различных научных журналах о новом стандарте узнал мир.



С того времени прошло уже больше 13 лет, но к сожалению из-за укоренившегося в сознании старшего поколения неправильного применения SI префиксов для написания размеров данных, путаница не только до сих пор процветает даже в технической литературе, но и передаётся дальше молодому поколению.

Давайте разберёмся в чём же дело!


SI (Le Système International d’Unités) — интернациональная система единиц, которая описывает не только единицы физических величин, но также дефинирует так называемые стандартные префиксы:



Как мы видим, основная система счисления в SI – десятичная, т.е. по основанию 10.
В информационной технологии используется, однако, двоичная система счисления, т.е. по основанию 2. Удобства ради, кто-то решил использовать приставку кило также и для единиц информации.
При этом значение кило было выхвачено из СИ, и то ли по незнанию, то ли по злому умыслу было извращено деформировано: из 103=1000 сделали 210=1024
Соглашусь, что разница небольшая и в эпоху
640K ought to be enough for anybody
это никого особо не напрягало, но именно здесь был открыт ящик Пандоры.
(кстати, К – это аббревиатура для единицы температуры — кельвин, и в этом смысле 640 кельвин, что примерно равно +367 градусам цельсия, для any body точно enough)

С развитием информационных технологий появлялись всё большие величины и путаница становилась всё больше и больше:
• Кто-то использовал кило, мега, гига и т.д. подразумевая 1024x (например: 1MB=1024x1024 B)
• Кто-то использовал кило, мега, гига и т.д. подразумевая 1000x (например: 1MB=1000x1000 B)
• Кто-то начал использовать и то, и другое в одной системе (например: 1МB=1024x1024 B, но одновременно 1Mbit/s = 1000x1000 bit/s)
• Кто-то начал выдумывать что-то типа KByte, MByte, GByte и т.д. подразумевая 1024x
• Иногда умудрялись смешивать всё даже в одной цифре: так при размере дискеты считалось, что 1MB=1000x1024 B
• … вариантов становилось всё больше

А в чём же проблема, спросите Вы?


Простой пример:

Вы покупаете жёсткий диск, на котором написано 2TB.
Приносите домой, подключаете к компьютеру с Windows, и, ещё даже не успев отформатировать, видите размер 1,82 TB.
«Накололи», — думаете Вы! Причем на целых 181 GB! А это ведь целая корова целых 10%!
Что делать? Кто наколол? Кому бьём морду?


Если посмотреть объективно – наколол Вас Windows, точнее Microsoft (Apple бы тоже так наколол, поэтому если бить морду, то обоим).

Почему они это делают?

Я спрашивал у одного ведущего сотрудника Microsoft: «Зачем они скрывают в стандартной настройке расширения файлов?». На что получил ответ: «Это слишком сложно для пользователей и не нужно им».

Может в этом и причина путаницы?

Квазимонополисты Microsoft и Apple считают своих клиентов идиотами несовсем умными людьми и поэтому просто обманывают их!? Других причин я, честно говоря, не вижу.

Так посмотрим же на расчёт:

2TB = 2x1000x1000x1000x1000 B ~= 1,819x1024x1024x1024x1024 B = 1,819TiB


В этом расчёте видна зависимость величин и понятно откуда взялась цифра в Windows, хоть и с неправильной аббревиатурой, а внимательные (и кто знают об этом) заметили маленькую буковку i в TiB.

Так вот, мы наконец снова пришли к интернациональному стандарту IEC60027-2, который чтоб не разрушить Землю, космос и человечество систему величин в физике, химии и т.д. дефинирует специально для IT двоичные префиксы (prefixes for binary multiples): physics.nist.gov/Pubs/SP330/sp330.pdf (§3.1, с. 34)

Составив их по схеме: SI-prefix binary (kilo binary, mega binary, giga binary etc), приходим к следующей таблице:



Ну как, вроде просто?


И даже если произношение кибибайт, мебибайт, гибибайт, тебибайт и т.д. слышится странно и неповоротливо, думаю для всех несложно применять KiB, MiB, GiB, TiB и т.д. в текстах!?

Всё кажется новым и неизвестным?

А ведь стандарту уже 13 лет!
(IPv6 кстати ещё старше, а его всё ещё так и не могут ввести нормально — такое ощущение, что из-за пагубного влияния больших фирм стандартам приходится лежать десяток лет и пылиться, пока не придёт какой-нибудь Apple, запатентует буковку i в KiB и MiB, и устроив многомиллионную рекламную компанию, продаст это как новую фичу)

Но несмотря на это, стандарт ведь давно используется в открытых продуктах!

Например в Linux стандарт поддерживается самим кернелем.
А вот скрин с ifconfig‘a



А зачем оно мне надо, спросите Вы?

  • Во-первых, ГОСТ 8.417—2002 заставляет работать по стандартам.
  • Во-вторых, информатика — это точная наука, в которой всё должно быть логично и почти всё детерминично! И если вы действительно IT-профи, и не хотите казаться школьником в глазах коллег, то постарайтесь использовать в Ваших публикациях и программах стандарт, т.е. добавляйте i если указываете размеры данных по основанию 1024.

    Примеры использования:


  • В-третьих, неправильное использование величин, может привести к очень дорогим последствиям:
    В этом случае NASA потеряла зонд Mars Orbiter стоимостью 125 MUSD (=119,2 MiUSD) в сентябре 1999 года именно из-за проблем в использовании правильных единиц измерения!
  • Кроме того, — использование неправильного написания размеров данных «по традиции» или потому «что так прижилось или удобно», это всё равно, что сказать: «метр – это ерунда, я буду продолжать мерить расстояния локтями, ступнями, пальцами, языком и другими частями тела»

А под конец приведу всем знакомую шутку:
Нормальный человек думает, что в килобайте 1000 байтов, а программист уверен, что в килограмме 1024 грамма.

Поэтому хочу Вас, IT-профи, призвать: Пусть добро победит зло! Давайте уже все становиться нормальными, положим конец путанице и будем пользоваться стандартами!



П.С. а для тренировки (кто хочет) – небольшая и лёгкая задачка
(я вроде не видел, чтоб задачки на хабре давали, но для интерактивности с читателем, думаю, неплохо предложить что-нибудь такое несовсем сложное для разминки):

Вы купили себе новейший смартфон с поддержкой быстрых сетей LTE, который в идеальном случае развивает при скачивании скорости до 300 Mbit/s.
С мыслью: «Теперь мне будет чем заняться, сидя в пробке на работу», — Вы заключили безлимитный тариф для мобильного интернета.
В среду вечером, стоя в пробке, Вам прислали ссылку на новое видео про то, как Путин, притворившись тюленем-вожаком, вёл целую стаю тюленей на нерест, спасая по пути всю стаю от акул и отбиваясь от атак сомалийских пиратов.

«То, что мне нужно!» — подумали Вы и решили скачать видео.

Вопрос: сколько секунд будет закачиваться видео размером 60 MiB, если:
1. Ваш провайдер хоть и продал Вам LTE тариф, но в пробке развивается средняя скорость скачивания всего-лишь на уровне UMTS с HSDPA в размере 600 kB/s
2. при передаче каждого файла возникает overhead в размере 15% от размера файла
3. возможная компрессия в данной задаче не учитывается


UPD1
с версии MAC OS X 10.6 Snow Leopard показывает правильно в СИ-единицах , так что прошу за это Apple морду не бить


UPD2
так как поступает много вопросов по кбит и кибит, сделаю здесь небольшое резюмэ:

Я попытался объяснить в статье и несколько раз в комментариях, что kilo-, mega-, kibi-, mebi- (сокращённо k, M, Ki, Mi) и т.д. — это просто стандартизированные префиксы, которые приставляются к единицам измерения (граммы, биты, байты, пиксели и другое)
  • kilo означает умножить на 1000, mega — на 1000*1000
  • kibi означает умножить на 1024, mebi — на 1024*1024


поэтому например:
8 kbit = 8*1000 bit, но 8 Kibit = 8*1024 bit
13 MPixel = 13*1000*1000 Pixel
256 MB = 256*1000*1000 B, но 256 MiB = 256*1024*1024 B

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

В стандарте этого конечно нет, но если это распространится, то его скорее всего адаптируют.


Другие новости на эту тему:

    Теги к статье:

    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]

    Популярные файлыНовые файлы
    Call of Duty 5: World at ...[ Скачали 67375 раз ]
    Амфибии, Гайд по ассасина...[ Скачали 31758 раз ]
    Амфибии, Гайд по шаманам.[ Скачали 30663 раз ]
    cs 1.6 patch v48 full[ Скачали 29046 раз ]
    Русский бот PW Alfa v 2.6[ Скачали 17192 раз ]
    Огромный пак глюков и баг...[ Скачали 12745 раз ]
    civilization 5 скачать бе...[ Скачали 11941 раз ]
    PW MP5[ Скачали 11149 раз ]
    MHS-Bot-PW 2.3 ботовод[ Скачали 10405 раз ]
    Niko Bellic (нико белич) ...[ Скачали 10006 раз ]
    Wallpapers Girls №1044[ Добавлен 14.04.2024 ]
    Shadow Corridor 2 (2024/E...[ Добавлен 14.04.2024 ]
    Inkbound (2024/En/MULTI/R...[ Добавлен 13.04.2024 ]
    The Planet Crafter (2024/...[ Добавлен 13.04.2024 ]
    My Life: Farm Vet (2024/R...[ Добавлен 12.04.2024 ]
    Headquarters: World War I...[ Добавлен 12.04.2024 ]
    Ereban: Shadow Legacy (20...[ Добавлен 11.04.2024 ]
    Broken Roads (2024/Ru/En/...[ Добавлен 11.04.2024 ]
    Wallpapers Girls №1042[ Добавлен 11.04.2024 ]
    Children of the Sun (2024...[ Добавлен 09.04.2024 ]