Почему твердотельные накопители имеют странные размеры?

82

Почему твердотельные накопители имеют размеры, например, 240 ГБ или 120 ГБ, а не обычные 256 ГБ или 512 ГБ? Эти цифры имеют гораздо больше смысла, чем 240 или 120.

Dudemanword
источник
45
Почему эти цифры имеют больше смысла?
Мэтью Уильямс
8
@ MatthewWilliams Я бы подумал, потому что они являются дробными делениями большего измерения памяти. 256 ГБ - это 1/4 терабайта, 512 ГБ - 1/2 и т. Д.
Моисей
44
@MatthewWilliams Я сказал, что из-за арифметики с основанием 2: 2 ^ 8 = 256, 2 ^ 9 = 512 и т. Д.
Dudemanword
17
Глупо ожидать, что диски будут иметь размер 2, потому что диски , как правило, никогда не имеют размера 2, а диск емкостью 1 ТБ - это не 2 40 байт, а обычно 10 12 байт.
Зоредаче
7
@Zoredache Это имеет смысл для жестких дисков, но мы говорим о твердотельных накопителях. Его хранилище в основном транзисторов, которые могут содержать только 2 состояния. Так что, на мой взгляд, твердотельные накопители всегда должны быть основаны на 2. Ответы помогли прояснить эту двусмысленность
Dudemanword

Ответы:

101

В то время как многие современные твердотельные накопители, такие как серия 840 EVO, обеспечивают размеры, которые вы привыкли любить, упомянутые 256 ГБ производители использовали для сохранения небольшого объема памяти для механизмов, которые борются с падениями производительности и дефектами.

Например, если вы купили диск емкостью 120 ГБ, вы можете быть уверены, что он действительно 128 ГБ. Зарезервированное пространство просто предоставляет место контроллеру / встроенному ПО для таких вещей, как TRIM, сборка мусора и выравнивание износа. Обычно, когда SSD впервые появляются на рынке, когда часть SSD впервые появилась на рынке, оставляя часть пространства не разделенной на части - поверх пространства, которое уже было сделано невидимым, алгоритмы стали значительно лучше, поэтому вам не нужно сделай это больше.

РЕДАКТИРОВАТЬ: были некоторые комментарии относительно того факта, что это явление должно быть объяснено с расхождением между объявленным пространством, заявленным в GigaBytes (например, 128x 10 ^ 9 байт) против значения GibiByte, которое показывает операционная система, которая является - большая часть время - степень двойки, рассчитанная до 119,2 Гибибайт в этом примере.

Насколько я знаю, это то, что идет поверх того, что уже объяснялось выше. Хотя я, конечно, не могу указать, каким именно алгоритмам нужно больше всего этого дополнительного пространства, расчет остается прежним. Производитель собирает твердотельный накопитель, который на самом деле использует два ряда элементов флэш-памяти (или их комбинацию), хотя контроллер не делает все это пространство видимым для операционной системы. Оставшееся пространство рекламируется как гигабайты, и в этом примере вы получите 111 гибибайт.

Патрик Р.
источник
2
За исключением того, что некоторые твердотельные накопители теперь используют состояния TLC (трехуровневые) и фактически нуждаются в БОЛЕЕ зарезервированном пространстве по сравнению с предыдущими дисками из-за более высокого уровня ошибок. Программное обеспечение Magician для накопителя Samsung EVO рекомендовало зарезервировать больше места, когда я выполнил настройку. Так что вместо терабайта его всего 920 ГБ.
Zan Lynx
2
Вы имеете в виду несоответствие гибибайта и гигабайта? Я понял вопрос по-другому, так как это несоответствие приходит поверх феномена 120 против 128 ГБ. Покупка SSD с объявленным размером 120 ГБ обеспечит вам еще меньше полезного пространства, отображаемого в ОС.
Патрик Р.
4
@ Мэтью Хорошо, это было то, что я пытался сказать - я могу подтвердить, что это не остановилось. Мой 512G Samsung 840 дает мне чуть больше 465G полезного пространства. Извините за путаницу. Таким образом, чтобы подвести итог, SSD, объявленный как 120 ГБ, может физически иметь 128.000.000.000 байт, 120.000.000.000 в качестве пространства, используемого для разделов, что приводит к ~ 110, отображаемому ОС.
Патрик Р.
27
Технический термин - сверхпоставка .
Бен Фойгт
1
@ ADTC Почему 8 ГБ из 128 ГБ должно быть слишком много? Особенно многоуровневые клетки, как правило, живут не так долго, как вы этого хотите. Поскольку производители не хотят, чтобы вы возвращали твердотельный накопитель в течение гарантийного срока, определенно имеет смысл зарезервировать столько места. Ложная реклама также обсуждалась ранее, это то, что выходит на первое место. Вы покупаете рекламируемый 120 ГБ, вы получаете 128x10 ^ 9 байт, и вы получаете ~ 110 Гибибайт, отображаемых в ОС.
Патрик Р.
23

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

На механических дисках они могут добавлять произвольные объемы свободного хранилища, поскольку они управляют кодированием сервоприводов, головок и пластин, поэтому они могут иметь номинальное хранилище в 1 терабайт с дополнительным 1 гигабайтом свободного места для переназначения секторов.

Однако твердотельные накопители используют флэш-память, которая всегда изготавливается в двух степенях. Силикон, требуемый для декодирования адреса, является таким же для 8-битного адреса с доступом к 200 байтам, что и 8-битный адрес с доступом к 256 байтам. Поскольку эта часть кремния не изменяется в размерах, то наиболее эффективным использованием объекта недвижимости является использование степеней двойки в фактической мощности вспышки.

Таким образом, производители накопителей имеют общую необработанную емкость в степени 2, но им все еще необходимо выделить часть необработанной емкости для переназначения сектора. Это приводит к 256 ГБ сырой емкости, обеспечивая, например, только 240 ГБ полезной емкости.

Адам Дэвис
источник
6

Проще говоря, все SSD, по сути, не то, что они рекламируют. То, что они рекламируют, это «полезное» дисковое пространство. Для большинства дисков со 120 «используемыми» ГБ хранилища базовый диск на самом деле является 128 ГБ. 8 ГБ зарезервировано для некоторых конкретных задач фонового управления, как указано выше.

Теперь, технически, они могут поставить еще один чип, чтобы получить 128 ГБ «полезного» пространства, но это стоит больше денег. Компании, производящие диски, осознали, что люди больше заботятся о том, насколько велик их диск, чем о том, действительно ли его полезное пространство кратно 2.

Sidenote - на самом деле есть несколько способов написания необходимого системного кода, поэтому вы увидите диски на 120, 124 и 128 ГБ от разных производителей. Все они имеют 128 ГБ «сырого» пространства, но по-разному обрабатывают необходимые фоновые данные. Ни одна из версий кодирования диска не является настолько лучшей, как другие, что вы заметили бы в большинстве случаев. Вы можете заметить небольшую разницу в тестах производительности, но вы вряд ли заметите это, если ваш компьютер не делает большой груз и не знаете, что искать.

user319078
источник
5
не кратно 2, но степень 2.
Келтари
2

Рост по степеням двух - это строго математическая концепция, которая позволяет легко использовать математические сочетания в компьютере, основанном на двух состояниях. Иными словами, компьютер может выполнять целочисленное умножение или деление в два раза с такой же легкостью, как умножение или деление числа на 10. Вы просто сдвигаете цифры влево или вправо, не выполняя фактически вычисления.

У каждого языка программирования есть операторы для этих простых операций, в C-подобных языках они также n >> mизвестны как shift n right m bitsaka divide n by 2^mили n << maka shift leftaka multiply n by 2^m. Внутри процессора эта операция обычно занимает один цикл и происходит с данными на месте. Любая другая арифметическая операция, такая как умножение на 3, требует вызова ALU [Арифметическая логическая единица], чтобы потратить дополнительный цикл или два, чтобы собрать биты вокруг и скопировать результат обратно в определенный регистр. Небеса помогут вам, если вам нужна точность десятичной запятой и FPU [Float Point Unit] участвует.

Во всяком случае, именно поэтому ваш компьютер любит называть все внутренне как полномочия двух. Если бы машине приходилось переходить к операции ALU каждый раз, когда ей требовалось выполнить простую математику для вычисления смещения указателя памяти, ваш компьютер работал бы на порядок медленнее.

С другой стороны, рост объема физической памяти определяется в меньшей степени исходной бинарной математикой, чем физикой, разработкой и « удушением» слова « маркетинг». Для диска шпинделя емкость определяется: количеством пластин, размером пластин, размером «цилиндров» и количеством секторов, которые могут поместиться в цилиндре. Как правило, они определяются в большей степени физическими возможностями оборудования и точностью головок чтения / записи, чем что-либо еще.

Я не очень хорошо знаком с внутренними характеристиками твердотельных накопителей, но я полагаю, что масштабирование основано на: мы можем построить массив из N x M NAND-секторов, наложить их K глубоко в микросхему и вставить J-чипы в них 2,5-дюймовый корпус жесткого диска. Зарезервируйте H% из них для оптимизации производительности, округлите число до ближайшего кратного 5/10/20, и это емкость накопителя, которую мы собираемся напечатать на коробке.

Выполнение любого из этих расчетов до изящной маленькой степени двойки будет полной случайностью и мало кому поможет.

Sammitch
источник
Я хотел бы отметить, что простота использования этих операторов сдвига также зависит от поведения дополнения (0 или 1) для архитектуры, на которую вы ориентируетесь. По общему признанию, это не проблема с сегодняшними языками более высокого уровня
Dudemanword
Из того, что я слышал , хороший компилятор будет даже идти вперед и заменить странствующие математические операции , как var = var / 256с var >> 8вас в эти дни.
Саммит
2
Микросхемы памяти всегда имеют степень двойки, поэтому количество действительных адресов точно ограничено количеством сигналов адресов. Это устраняет необходимость в сигнале ошибки «чип, выбранный адресом вне диапазона», а также значительно облегчает определение размера. Общий объем диска может быть не равен 2, если количество микросхем памяти отсутствует (в ранних твердотельных накопителях Intel использовалось 10 каналов по 128 ГБ каждый, что в сумме составляло 160 ГБ для небольшого преимущества по сравнению с моделями конкурентов на 128 ГБ)
Бен Фойгт
-8

В старых SSD емкость была кратна 8, потому что в «байте» 8 «битов» (0/1). Как и в случае с флешками, в то время люди не видели преимущества SSD, и каждый «бит» помог.

Теперь, когда потребители больше знают о технологии твердотельных накопителей, а также о ее прогрессе, производители твердотельных накопителей возвращают их к более знакомым цифрам, комбинируя «оценку» размера, как это делал рынок HDD, и комбинируя чипы разных размеров. чтобы получить четное число 10 (например, 6 ГБ + 4 ГБ = 10 ГБ)

Чарльз Кейслер
источник
Может быть, вы путаете биты и байты?
Джеймс Маклеод