В новостях как-то мелькнула тема фальшивых Flash-карточек, и я решил это дело поисследовать. Сейчас весь Ebay заполонили безымянные карточки microSD следующего вида:
Обещаная емкость - 64 или 128 гигабайт. Я купил одну на 64Gb и стал исследовать. Это не просто перемаркированная карточка меньшей емкости, нет. Все гораздо интереснее.
Изначально карточка отформатирована на 64 гигабайта, точнее 64000 мегабайта. Все блоки, вплоть до последнего, пишутся и читаются без ошибок. Я быстренько наваял тест, который пишет уникальные данные в нулевой блок каждого мегабайта, после чего считывает их и проверяет. Ни одной ошибки, все как бы честно. Но при этом проверялся только каждый 256-й блок. Надо копать глубже.
Пришлось усложнить тест, и задействовать все блоки. В каждый блок писать нечто, отличающее его от других (номер блока, к примеру), и после проверять. Тест занял несколько часов, и обнаружил истинную емкость карточки: 8175448 килобайт. Все блоки после этого предела содержали FFFFFFFF.
Получается, что внутренний процессор карточки выполняет довольно хитрую операцию по переназначению адресов блоков, чтобы данные пользователя могли ложиться в произвольную область 64-гигабайтного пространства. Карточка будет исправно работать, пока на нее сложили не больше 8 гиг информации, после чего внезапно данные начнут пропадать. Забавная ловушка: смотрите, не попадитесь.
Кто желает поиграться - на Амазоне это добро нынче стоит совсем недорого.
http://www.amazon.com/Starker2014-Class10-Micro-Memory-Adapter/dp/B00Q6FMJ5M/ Надписи на тыльной стороне карточки:
MMB3RO8BUACA-GE
XL8B20141010
Made In Taiwan