
- •Схемы работы транзисторов - чтения, сохранения состояния, записи и стирания:
- •Свойства флеш памяти. Необратимый процесс разрушения.
- •Теперь становится понятно, почему диск изготовленный с использованием slc микросхем будет теоретически быстрее читать чем диск с mlc в 2 раза, и в 3 с лишним раза записывать данные.
- •Нюансы работы ssd
- •Условные типы ssd
- •Алгоритм записи
- •Далее мы проследуем в операции удаления данных. Для примера возьмем первый случай.
- •Тримминг
- •Соотношение скоростных параметров различных накопителей без использовании функции теневого стирания.
- •4Kb Случайная запись
- •Кэш буфер дисков, является ли он временным убежищем для обмена данными?
- •Контроллер накопителя.
- •Основные достоинства и недостатки ssd по-сравнению с магнитными дисками:
Далее мы проследуем в операции удаления данных. Для примера возьмем первый случай.
Никаких проблем. Диск физически стирает связанные блоки одновременно. Ячейки после удаления информации помечаются как пустые и полностью готовы для последующей записи с максимально возможной скоростью.
Во втором варианте будет схожая информация, данные сотрутся из ячейки и она полностью станет пустой. Третий вариант потребует иного алгоритма.
Ячейки целиком не освобождаются, а данные удаляются логически. Рано или поздно придется компоновать оставшуюся информацию и освобождать целиковые ячейки, на что потребуется время. Т.е. при возникновении задачи записи в область с такими ячейками придется отыскать подходящую по размерам область и воспользоваться вышеописанным длинным алгоритмом, после которого данные будут максимально занимать целиковую страницу, а задействованные "неполные" блоки будут освобождены.
Логическое представление разноуровневых ячеек
одноуровневая ячейка
четырехуровневая ячейка
Куда исчезает емкость накопителя?
Весьма легкий вопрос. Частично он касается совести производителей дисков, изначально начавшие считать объем не по компьютерному, а согласно маркетинговым предпочтениям, из-за этого у них получилось, что 1Гб=1000000000байт. Но мы прекрасно знаем, что кратность вовсе не равна 1000, а 1024. Значит врут? Нет не совсем, лишь от части. На самом деле объем указан верно, из полных 64Гб, 80Гб или 120Гб просто не доступна часть. Она используется динамически, по мере физического изнашивания ячеек, некий полезный объем похожий на тот, который используют традиционный магнитные накопители для "складирования" плохих блоков. Еще одна функция так же задействует недокументированную область блоков.
Тримминг
Помните мы говорили про высвобождение блоков частично занятые полезной и уже стертой информацией. Так вот для предотвращения логических остановок диска используется команда Трим. Она выстраивает цепочку и определяет приоритет освобождаемых блоков. В своё время Microsoft пытался внедрить команду в планировщик заданий на новой операционной системе Windows 7, но стараниями разработчиков SSD трим организовали аппаратно в прошивках накопителей. Время выполнение операции по "зачистки" блоков связано по экспоненте со свободным объемом на диске. Чем меньше информации и больше свободного места, тем быстрее происходит тримм на SSD. По-мере заполнения диска до 75% функция очистки все еще не сильно выражена относительно простоя. Но, как только остаётся менее 15% свободного места, триммирование становится затруднительным. Естественно, часть зависимости полностью обуславливается типом информации (статичная, т.е. редко перемещаемая и в большинстве времени только читаемая, или динамическая). Согласно исследованию IBM идеальные условия работы SSD, когда он заполнен менее чем на 75%, и соотношения статической и динамической части информации 3 к 1.
Соотношение скоростных параметров различных накопителей без использовании функции теневого стирания.
В некоторых случаях потери производительности исчисляется 2/3 от общезаявленной паспортной характеристики. Поразительно, но используя тримм производители (на данный момент, только SSD, использующие в своей основе Intel и Indilinx) смогли нивелировать разницу нового и "измученного диска" до пары процентов. Особенно отличились программисты Intel, которые специально оптимизируют алгоритмы для выполнения наиболее сложных и неудобных для SSD операций. Чуть хуже обстоят дела у связки Indilinx + NAND различных производителей, существенно хуже ведет себя накопитель на базе ARM процессора (контроллера) SAMSUNG, они лишены тримма с рождения, и могут применять его только из операционной системы, так же как и SSD, собранные на контроллере Jmicron, неважно сколько их установлено, один или пара.
Диск на основе контроллера Indilinx