AlexandrY 3 31 декабря, 2017 Опубликовано 31 декабря, 2017 · Жалоба Встроена в проект embed https://os.mbed.com/blog/entry/littlefs-hig...ty-embedded-fs/ Смущает правда их фэйковое сравнение с FAT без FTL уровня. Но в любом случае очень полезня вещь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 31 декабря, 2017 Опубликовано 31 декабря, 2017 · Жалоба Встроена в проект embed https://os.mbed.com/blog/entry/littlefs-hig...ty-embedded-fs/ Смущает правда их фэйковое сравнение с FAT без FTL уровня. Но в любом случае очень полезня вещь. Главное преимущество ФАТ в том, что карточку или диск можно вставить в обычный комп и прочитать или записать на нее данные без установки драйверов и пр. Выравнивание износа в данном случае особо не играет роли, т.к. идет в самих карточках или дисках. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jury093 2 31 декабря, 2017 Опубликовано 31 декабря, 2017 · Жалоба Смущает правда их фэйковое сравнение с FAT без FTL уровня. насколько я понял, речь о том, что в Mbed OS поддержка FAT была включена с 2010 года, а в статье приведены преимущества LittleFS перед FAT, т.ч. не вижу тут фейка.. немного сомнений вызывают цифры 13k в ROM и 4к в RAM, но это надо читать доки на ограничения в библиотеке Но в любом случае очень полезня вещь. конечно полезная, чем для очередного проекта изобретать ФС, проще взять готовую обкатанную библиотеку, пристегнуть и пользоваться, а не изобретать очередной велосипед.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба а в статье приведены преимущества LittleFS перед FAT, т.ч. не вижу тут фейка.. Вы всем статьям в инете так безусловно верите? Главное чтоб на английском было написано? Фэйк потому что FAT тестировали без FTL. Так могут делать только зеленые студенты. Кстати, кто-то постарался и сделал симулятор на JavaScript - http://littlefs.geky.net/demo.html Ложка дегтя в том, что LittleFS идет без корректирующих ошибки кодов, есть правда CRC, но и только, да и то без драйверов к аппаратным ускорителям. Т.е. на какой-нибудь MLC NAND эта система будет работать крайне ненадежно. Словом YFFS или Micrium FAT c FTL все еще в деле. Просто с появлением гиперфлэшей проблема выбора FS несколько актуализируется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба Ложка дегтя в том, что LittleFS идет без корректирующих ошибки кодов, есть правда CRC, но и только, да и то без драйверов к аппаратным ускорителям. Т.е. на какой-нибудь MLC NAND эта система будет работать крайне ненадежно. В таком случае зачем она вообще нужна? Просто для того, чтоб была, что-ли? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба В таком случае зачем она вообще нужна? Просто для того, чтоб была, что-ли? Если судить по их техническому описанию, то система очень быстро работает на запись, быстрее чем на чтение, если не брать в расчет задержки носителя. Т.е. все SD карты с FAT остаются далеко позади и по надежности, по детерминированности и потреблению. Хороший wear leveling видимо должен скомпенсировать отсутствие ECC, да и никто особенно на SPI Flash не заморачивается ECC если честно. Что приятно - система на привязана к какой либо RTOS, работает и на bare metal, требует только драйвер блочного дивайса, т.е. легко работает поверх RAM, heap, любых флэшей и проч. mbed привносит только POSIX API. Для IoT можно сказать почти идеальная файловая система. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба Если судить по их техническому описанию, то система очень быстро работает на запись, быстрее чем на чтение, если не брать в расчет задержки носителя. Т.е. все SD карты с FAT остаются далеко позади и по надежности, по детерминированности и потреблению. Хороший wear leveling видимо должен скомпенсировать отсутствие ECC, да и никто особенно на SPI Flash не заморачивается ECC если честно. "очень быстро работает на запись, быстрее чем на чтение" - очень интересно и бесполезно одновременно, ибо задержки носителя на несколько порядков выше, исключение только ОЗУ, но накой для него ФС "все SD карты с FAT остаются далеко позади и по надежности" - очень спорный аргумент, про индустриальные карты слышали? :laughing: "да и никто особенно на SPI Flash не заморачивается ECC если честно" - ясно дело, ЕСС нужен для нанда, особенно 2х уровневые ячейки, а уж про TLC - так этот кусок говна, который нужно было вообще запретить к выпуску, и подавно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба "очень быстро работает на запись, быстрее чем на чтение" - очень интересно и бесполезно одновременно, ибо задержки носителя на несколько порядков выше, исключение только ОЗУ, но накой для него ФС "все SD карты с FAT остаются далеко позади и по надежности" - очень спорный аргумент, про индустриальные карты слышали? :laughing: В IoT не так важно сколько длится запись на ноcителе по сравнению с тем сколько выполняется код в файловой системе. Поскольку в IoT это в основном транзакции записи, то скорость (читай длительность процедур записи FS) имеет большое значение и для потребления и для планирования ресурсов в реалтайме. Индустриальные карты конечно очень хороши, но их полную скрость не поддерживает даже i.MX RT, спецификации на систему команд недоступны. Оптимизированы они преимущественно на чтение. Опять же они на полной скорости (208 MHz) дают Random Write только 2.6 MB/s потому как SLC В тоже время HyperFlash на NOR дает гарантированные 1 MB/s, но на чтение в i.MX RT работает с частотой DDR 166 MHz и 8 бит, может использоваться одновременно как память программ. Тут еще надо сказать LittleFS поддерживает device chaining, т.е. может писать в 2,3... HyperFlash как в одну файловую систему, таким образом увеличить скорость записи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба Поскольку в IoT это в основном транзакции записи, то скорость (читай длительность процедур записи FS) имеет большое значение и для потребления и для планирования ресурсов в реалтайме. Вот с этого момента поподробнее, зачем постоянная запись чего-то куда-то?? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба Вот с этого момента поподробнее, зачем постоянная запись чего-то куда-то?? Ну как же. IoT - это в основном сенсоры. Запись сигналов, логов, настроек. Запись идет часто и мелкими транзакциями требующими детерминированное время, а в сеть уже уходит редкими и крупными блоками допускающими задержки. Контроллеры моторов скажем очень критичны к детерминизму записи логов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 2 января, 2018 Опубликовано 2 января, 2018 (изменено) · Жалоба Ну как же. IoT - это в основном сенсоры. Запись сигналов, логов, настроек. Запись идет часто и мелкими транзакциями требующими детерминированное время, а в сеть уже уходит редкими и крупными блоками допускающими задержки. Контроллеры моторов скажем очень критичны к детерминизму записи логов. На счет накопления некоторого кол-ва измерений датчиков согласен, но эти данные очень хорошо структурируются и нет смысла в ФС для записи этих структур. К тому же удобнее эти данные хранить в буферах ОЗУ. Логи? зачем они в датчике, вообще не понимаю, разве, что для отладки и в ОЗУ. Настройки - тоже не факт, да и постоянная запись тут точно не нужна, чаще чтение.. Изменено 2 января, 2018 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба На счет накопления некоторого кол-ва измерений датчиков согласен, но эти данные очень хорошо структурируются и нет смысла в ФС для записи этих структур. К тому же удобнее эти данные хранить в буферах ОЗУ. Логи? зачем они в датчике, вообще не понимаю, разве, что для отладки и в ОЗУ. Настройки - тоже не факт, да и постоянная запись тут точно не нужна, чаще чтение.. Все это нужно в связи с новой парадигмой - незаканчивающаяся разработка на стороне клиента. Поэтому логи несут в себе критически важную отладочную информацию. Данные датчиков передаются в облака в формате JSON. Какой смысл их структурировать если эти структуры никому не нужны, т.е. их никто не планирует и не специфицирует. Серверы сами распарсят формат JSON, а структуры, фильтры, выборки создаются уже каждым пользователем под свои нужды с помощью языка запросов серверу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 2 января, 2018 Опубликовано 2 января, 2018 (изменено) · Жалоба Данные датчиков передаются в облака в формате JSON. Какой смысл их структурировать если эти структуры никому не нужны, т.е. их никто не планирует и не специфицирует. Т.е. вы не знаете, что измеряете и зачем... Интересная парадигма, хорошо, что это не моя специфика ЗЫ. Вот такой бардак бывает только тогда, когда есть какая-то "хотелка" манагеров, а нормального проработанного стандарта нет, это можно объяснять всякими парадигмами и т.п. но суть именно эта. Изменено 2 января, 2018 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба На счет накопления некоторого кол-ва измерений датчиков согласен, но эти данные очень хорошо структурируются и нет смысла в ФС для записи этих структур. Думаю, Александр имеет ввиду частую запись большого кол-ва маленьких чанков данных. Например, данные с датчиков логятся в локальную БД типа SqLite. Там в секунду может быть туча INSERT'ов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 2 января, 2018 Опубликовано 2 января, 2018 · Жалоба Думаю, Александр имеет ввиду частую запись большого кол-ва маленьких чанков данных. Например, данные с датчиков логятся в локальную БД типа SqLite. Там в секунду может быть туча INSERT'ов. Так это уже серверное хозяйство, разговор про сами датчики. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться