Замечает ли сборщик мусора SSD нулевые блоки?
292
micha
GC (у меня Samsung 860 Evo) достаточно умен, чтобы заметить, что блок заполнен нулями?
По некоторым причинам я не могу использовать TRIM на SSD. Я думаю, что я мог бы подражать TRIM, заполняя все пустые места нулями (Linux: sfill -z, Windows: sdelete -z) время от времени (скажем, раз в неделю). Если прошивка диска умная, следует заметить, что блок пуст, и вообще не записывать его во флэш-память. Вместо этого блок должен быть помечен как нераспределенный. Но ... достаточно ли умная прошивка?
Возможный дубликат [Могу ли я эмулировать TRIM, записав все нули?] (Https://superuser.com/questions/1242000/can-i-emulate-trim-by-writing-all-zeros)
sawdust 6 лет назад
0
«Неиспользованный» блок просто не может быть определен по содержанию данных. В противном случае действительные данные будут непреднамеренно потеряны. Так что нет, GC не заботится о просмотре данных блоков, которые используются. Не существует такого метода, чтобы * "заметить, что блок пуст" *. Ваши предположения неверны.
sawdust 6 лет назад
0
Не "неиспользованный", но "пустой". Это не то же самое. Обнаружение пустого блока тривиально. Стандарт гласит, что чтение нераспределенного блока дает нули - так что нет смысла записывать их во флэш-память ... Конечный результат будет идентичен с точки зрения читателя.
micha 6 лет назад
0
Вы ошибочно полагаете, что блок нулей * «пустой» *. Фактическое значение данных зависит от прикладной программы, а не от устройства хранения. Блокировка записи, запрошенная главным компьютером, должна выполняться запоминающим устройством независимо от содержимого. Записанный блок также не может быть "нераспределенным" * устройством хранения. Вы объединяете два разных состояния.
sawdust 6 лет назад
0
1. Нет, запоминающее устройство не должно записывать точно данные, запрошенные хост-компьютером. Запоминающее устройство должно предоставлять точно такие же данные для чтения по запросу. Что происходит между тем, зависит от устройства хранения. Именно так работает сжатие на лету. А теперь: чтение нераспределенного блока всегда предоставляет все нули хост-компьютеру. Таким образом, нет необходимости выделять запасной блок для этих нулей.
micha 6 лет назад
0
2. Конечно, блок может быть «нераспределенным». Это то, что делает каждая запись в ssd. Он «распределяет» старый блок и «распределяет» новый.
micha 6 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
3
Как я должен интерпретировать спецификации SSD?
-
8
Почему вы не можете дефрагментировать твердотельные накопители?
-
4
Обновление MacPro HDD до SSD
-
-
3
Оптимизация Windows 7 для SSD
-
8
Влияет ли Windows ReadyBoost на производительность?
-
1
Обновление жестких дисков RAID0 до SSD - могу ли я использовать диски RAID0 после обновления?
-
5
ASUS EEE PC 901: невозможно отформатировать 8 ГБ SSD
-
6
Какие у меня варианты SSD для старого (3 года) ноутбука?
-
6
Увижу ли я преимущества производительности от SSD в моем ноутбуке?
-
5
Могу ли я использовать что-то вроде команды SSD TRIM на SD-карте?