Ruslan1 17 7 сентября, 2021 Опубликовано 7 сентября, 2021 · Жалоба Устройство безостановочно работает месяцами-годами. Периодически пишет на SD-карту. Используется FAT32 (из FatFS Чина), SDIO интерфейс. И есть сильные подозрения, что внутренний контроллер SD карты не очень-то и выравнивает количество записей по физическим секторам. В результате появляются bad block, и время чтения некоторых секторов сильно увеличивается. Бэды появляются там, куда часто пишем (FAT). Время доступа тоже очень вырастает для части блоков. Пример ниже. Тестировал чудесной прогой DiskGenius, карта SаnDisk 16GB после примерно года работы (заполненность файлами примерно 10% и менее): два блока плохих и кучка "тормозных": Вопрос даже не в том кто виноват (я, конечно), а в том, как с этим бороться (не со мной, а с проблемами на карте)? Я думаю, что нужно менять файловую систему, но на что? Хотелось бы: - чтобы не писала в одно и то же место (уменьшить пероятность "затирания" физического сектора) - чтоб возникновение bad block не было критичным - устойчивость к резким отключениям не так важна (так как есть резервное питание), но приветствуется. В наличии STM32F4, память есть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arhiv6 18 7 сентября, 2021 Опубликовано 7 сентября, 2021 · Жалоба LittleFS выравнивание износа и поддержку горячего отключения поддерживает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 235 7 сентября, 2021 Опубликовано 7 сентября, 2021 · Жалоба 55 минут назад, Ruslan1 сказал: Я думаю, что нужно менять файловую систему, но на что? Много раз уже перетиралось тут: На кольцевой буфер(-ы). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 7 сентября, 2021 Опубликовано 7 сентября, 2021 · Жалоба 1 hour ago, Ruslan1 said: но на что? На это. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 17 7 сентября, 2021 Опубликовано 7 сентября, 2021 · Жалоба 35 minutes ago, arhiv6 said: LittleFS выравнивание износа и поддержку горячего отключения поддерживает. у LittleFS есть драйвера под Винду? или софт? в Интернете вижу обсуждение "LittleFS Explorer for Windows", может оно? 36 minutes ago, jcxz said: Много раз уже перетиралось тут: На кольцевой буфер(-ы). При чем тут кольцевые буферы? Мне нужна система работы с файлами. Разными файлами. С функциями создания, удаления, добавления, чтения, и чтобы можно было создавать-удалять директории (хотя бы два уровня вложений от корневого), и поддержка длинных имен очень желательна. Ну и чтобы не приходилось долго объяснять, как эту SD-карту увидеть на компьютере (ну максимум спец драйвер или спец-ТоталКоммандер какой-то поставить). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 51 7 сентября, 2021 Опубликовано 7 сентября, 2021 · Жалоба 8 minutes ago, Ruslan1 said: LittleFS Explorer for Windows https://github.com/bluscape/LittleFS-Explorer-for-Windows Всё есть давно уже Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 17 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба Спасибо за наводку, буду смотреть. Через недельку собираюсь впихивать что-то на место FAT32/FatFS. Уже понятно, что для меня ключевыми критериями для выбора новой файловой системы будут: - wear levelling (must be) - возможность чтения-записи этого носителя в операционке Windows, можно с дополнительным софтом (must be). - интеграция в программу на Си в виде исходника (чтоб дебагить-править можно было) первый кандидат - предложенный выше LittleFS, но посмотрю еще. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 8 сентября, 2021 Опубликовано 8 сентября, 2021 (изменено) · Жалоба 07.09.2021 в 13:09, Ruslan1 сказал: Периодически пишет на SD-карту. 11 минут назад, Ruslan1 сказал: - wear levelling (must be) Вы о чем сейчас? Чего вы там выравнивать будете, это все уже есть в сд карте, это не голый нанд... 07.09.2021 в 14:55, Ruslan1 сказал: При чем тут кольцевые буферы? Мне нужна система работы с файлами. Разными файлами. С функциями создания, удаления, добавления, чтения, и чтобы можно было создавать-удалять директории (хотя бы два уровня вложений от корневого), и поддержка длинных имен очень желательна. Ну и чем тогда фат32 не угодил? Ошибки? Ну дак от этого не застрахует никакая фс. Только безопасное отключение или дублирование (троирование). ЗЫ. Ну и не факт, что вы сами не накосячили со своей программой. 07.09.2021 в 13:09, Ruslan1 сказал: И есть сильные подозрения, что внутренний контроллер SD карты не очень-то и выравнивает количество записей по физическим секторам. Не покупайте дешевый нонейм и все будет гуд... Изменено 8 сентября, 2021 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 17 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба 1 hour ago, mantech said: Вы о чем сейчас? Чего вы там выравнивать будете, это все уже есть в сд карте, это не голый нанд... Угу. я тоже так думал. Блажен кто верует. Оно может и выравнивает, но в некоторых очень ограниченных пределах (как я понимаю, таблица резервных блоков иссякает, если она вообще есть там внутри): Так что буду выравнивать заранее 1 hour ago, mantech said: Ну и чем тогда фат32 не угодил? Ошибки? Ну дак от этого не застрахует никакая фс. Только безопасное отключение или дублирование (троирование). Да не в отключении дело, а в появлении bad blocks во время работы. А троирование только увеличит количество записей в область FAT. Я уже думал про разбитие диска на куски и поддержку RAID1, но это сложнее и ресурсозатратнее, чем файловая система с выравниванием. 1 hour ago, mantech said: ЗЫ. Ну и не факт, что вы сами не накосячили со своей программой. Это всегда возможно, но пока не нашел. 1 hour ago, mantech said: Не покупайте дешевый нонейм и все будет гуд... Спорный момент. Я не говорю, что в ближайшем ларьке купил на вес. Но вот некомфортно мне понимать, что устойчивость системы зависит от ветра в голове проиводителя SD карт. Я хочу соломку потолще. Кстати, а что именно Вы считаете лучшим не-дешевым не-ноунеймом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 8 сентября, 2021 Опубликовано 8 сентября, 2021 (изменено) · Жалоба 51 минуту назад, Ruslan1 сказал: Кстати, а что именно Вы считаете лучшим не-дешевым не-ноунеймом? Скажем так, были проблемы с quimo, smartbay, хорошо работают trancend, sandisk (только не подделки их, разумеется), ну и индустриалки, например apacer slc... 51 минуту назад, Ruslan1 сказал: А троирование только увеличит количество записей в область FAT. Под троированием и дублированием подразумевалась не запись 3х одинаковых файлов, а именно свои разделы. В чем там сложность мне не понятно, пару часов работы, а вот сколь потратите на портирование экзотики - только вам известно... 51 минуту назад, Ruslan1 сказал: Угу. я тоже так думал. Блажен кто верует. А точно это аппаратные бэды? В смысле, после переформатирования, и прогона полной записи, например h2testw, они не пропадают? 51 минуту назад, Ruslan1 сказал: Так что буду выравнивать заранее Ну дак ставьте тогда нанд slc и будет счастье и надолго, ибо если ставить выравнивание и экзотическую фс - какой смысл в сд карте? ЗЫ. Хотя от себя замечу - с картами работаю плотно и долго, с норм. производителем никаких проблем, работает годами в 24\7 если все правильно сделать... Изменено 8 сентября, 2021 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба On 9/7/2021 at 7:55 PM, Ruslan1 said: Мне нужна система работы с файлами. Посмотрите Red FS от Reliance Edge. Использовал её в нескольких проектах. На порядки устойчивее Fat FS. Правда, в редких случаях, при интенсивном тестировании всё-таки сбои были. Разбираться мне время не дали, сказали, что "и так сойдёт". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 218 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба 8 минут назад, haker_fox сказал: Посмотрите Red FS от Reliance Edge. Использовал её в нескольких проектах. На порядки устойчивее Fat FS. Правда, в редких случаях, при интенсивном тестировании всё-таки сбои были. Разбираться мне время не дали, сказали, что "и так сойдёт". В репозитории https://github.com/datalightinc/reliance-edge нет описания её устройства и принципов работы. Оригинальный сайт производителя недоступен, поскольку компания была куплена и ссылки протухли. На новом сайте просят регистрацию. У вас где-нибудь осталось её внутреннее описание без регистрации и СМС? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 235 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба 3 часа назад, mantech сказал: Ну и чем тогда фат32 не угодил? Ошибки? Ну дак от этого не застрахует никакая фс. Только безопасное отключение или дублирование (троирование). Журналирующая запись сделает любое небезопасное отключение, безопасным. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 218 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба 3 минуты назад, jcxz сказал: Журналирующая запись сделает любое небезопасное отключение, безопасным. Это не совсем так, т.к. очень многое зависит от физического носителя. Одно дело если вы напрямую работаете с NAND или NOR флешом и совсем другое если это происходит через непонятный (недокументированный) FTL, который запросто может потерять карту отображения логических блоков на физические в момент отключения питания при неудачном стечении обстоятельств. SD-карты как раз имеют такой уровень трансляции на скрытом от пользователя уровне, поэтому в общем случае ничего гарантировать не получится. 07.09.2021 в 13:09, Ruslan1 сказал: И есть сильные подозрения, что внутренний контроллер SD карты не очень-то и выравнивает количество записей по физическим секторам. Есть сильное подозрение, что это зависит от контроллера и в частности по этому показатели Industrial grade SD-карты отличаются от прочих. Что, в частности, отличает их по цене и гарантиям от производителя. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 8 сентября, 2021 Опубликовано 8 сентября, 2021 · Жалоба 10 minutes ago, makc said: У вас где-нибудь осталось её внутреннее описание без регистрации и СМС? Всё, что у меня есть Reliance_Edge_Developers_Guide_PDF_781.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться