Перейти к содержанию
    

Файловая система "Reliance Edge" - кто-то щупал?

копаюсь в оптимизации FatFs для FreeRTOS, ну "открыл" для себя такую страницу на сайте FreeRTOS : Reliance Edge Fail-Safe File System, A Transactional Embedded File System for FreeRTOS

 

Поют красиво, но вот что-то я не нашел тех кто ее реально прикручивал.

FatFs хороший, но делался во времена байтов, а не мегабайтов. Нужно что-то делать с буферизацией, да и ресурсы сейчас уже не так важны как раньше- можно и побольше ОЗУ/ПЗУ потратить, в угоду удобству-скорости-надежности в случае многозадачки.

Тут они и сравнение дают с тем же FatFs.

 

Лицензия не самая хорошая GNU GPLv2, но вроде и продают под коммерческие продукты. Правда, непонятно сколько стоит: нужно писать и конкретно спрашивать, такое ощущение что цена будет зависеть от персональной толщины моего фейса.

 

Не хочется быть первопроходимцем с набиванием шишек на личной голове и остальных частях тела, может кто-то уже составил мнение об этом продукте?

Кто-то может похвалить или поругать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поют красиво, но вот что-то я не нашел тех кто ее реально прикручивал.

FatFs хороший, но делался во времена байтов, а не мегабайтов. Нужно что-то делать с буферизацией,

В FatFS Вам никто не мешает прикрутить какую угодно буферизацию, ведь весь low-level IO - Ваш, реализуйте как больше нравится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В FatFS Вам никто не мешает прикрутить какую угодно буферизацию, ведь весь low-level IO - Ваш, реализуйте как больше нравится.

Все можно сделать, да. Эти костыли плодятся и множатся. Надоело.

Если кто-то изначально сделал виртуальный уровень, который нормально поддерживает множественный доступ (например, несколько задач в параллель пишут-читают разные файлы) без "бутылочного горлышка" размером в один сектор - то это очень неплохо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кто-то может похвалить или поругать?

Тут в закромах лежит transaction-based highly reliable file system (HRFS) в дистрибутиве VxWorks. Вот это реально неубиваемая FS.

А Datalight скорее всего ловит на приманку.

Reliance Nitro и FlashFX Tera они уже за так не раздают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тут в закромах лежит transaction-based highly reliable file system (HRFS) в дистрибутиве VxWorks. Вот это реально неубиваемая FS.

А Datalight скорее всего ловит на приманку.

Reliance Nitro и FlashFX Tera они уже за так не раздают.

Спасибо, посмотрю.

 

До позавчера я просто использовал то, что много лет назад заменило мою самописную поддержку FAT, и это в настоящее время FatFs. Когда нужны были оптимизации - то добавлял костыли в виде оптимизации(буферизация в основном) на уровне "до вызова функций FatFs".

Но вдруг нашлось полчаса времени подумать, и оказалось, что "хочется чего-то универсального". Главная хотелка- это надежный и реалтаймовый отклик в случае работы с группой разных файлов (например, десятком), из разных задач. При этом необходимо оптимизировать запись для увеличения ресурса носителя (SD-карточки), то есть вести запись ну хотя бы блоками по 2 килобайта, если данных меньше- то ничего не пишется до накопления.

 

Думал сделать задачу, которой в очередь пихать данные и запросы на данные, а она уже имеет свою буферизацию для накопления, и когда нужно вызывает функцию FatFs. Нужно иметь неслабую очередь, и независимо от нее буферы по числу файлов (ну или структуру стандартных сегментов).

 

Захотелось посмотреть уже готовую прослойку, обеспечивающую со стороны клиента "просто реалтаймовый доступ к файлам", а со стороны железа - оптимальный доступ к носителю. И эта прослойка сама подумает о надежности сохранения данных и прочих "мелочах".

 

Сейчас меня интересует конкретика: контроллер уровня STM32F4, операционка FreeRTOS, свободной RAM могу взять 1 мегабайт для этой файловой системы (в будущем может и больше получится). То есть ембеддед, без потуг на универсальность и расширяемость.

 

Вот и наткнулся на эту "прослойку". Единственный мой аргумент "за"- это то что она рекламируется на сайте FreeRTOS, ну и бренд все-таки :)

 

Хочу просто вставить что-то как замену FatFs в уже существующий проект, потратив на это как можно меньше своего времени. Может, и не туда смотрю, есть что-то не такое новое и не такое революционное.

Upd: ну и приятно если при этом можно остаться честным человеком, то есть соблюсти условия лицензии.

 

Кстати, они на Гитхабе есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, они на Гитхабе есть.

Эта FS несовместима с FAT.

Т.е. придется делать еще в навесок свой файловый менеджер чтобы хоть как-то администрировать эту FS.

Вот на этом они видимо и играют. Ждут когда к ним придут за остальным.

С тем же успехом можно взять YAFFS2.

 

У упомянутого дистрибутива VxWorks кстати есть DosFs (совместимая с FAT) с кэшированием и тоже с защитой от сбоев.

 

Но пожалуй я посмотрю эту FS.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Эта FS несовместима с FAT.

Т.е. придется делать еще в навесок свой файловый менеджер чтобы хоть как-то администрировать эту FS.

Вот на этом они видимо и играют. Ждут когда к ним придут за остальным.

С тем же успехом можно взять YAFFS2.

 

У упомянутого дистрибутива VxWorks кстати есть DosFs (совместимая с FAT) с кэшированием и тоже с защитой от сбоев.

 

Да, несовместима, но они пишут что дают утилиту для работы:

Data Exchangeability

If the media used with Reliance Edge is removable, such as a USB drive or a SD card, data on that

media can be copied to and from a Windows-based computer using the Reliance Edge Image

Copier/Image Builder command line utilities.

И в Developer's Guide тоже есть раздел про это. Но нужно компилировать. Просто готовый "экзешник для винды" не дают. Вероятно, результат зависит от выбранных опций.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, несовместима, но они пишут что дают утилиту для работы:

 

И в Developer's Guide тоже есть раздел про это. Но нужно компилировать. Просто готовый "экзешник для винды" не дают. Вероятно, результат зависит от выбранных опций.

Да, я уже понял, что без регистрации у них ничего не взять, даже утилиту для конфигурации.

И при этом получить проект под не пойми какую среду разработки.

Тогда уж лучше Micrium. У них FAT с кэшем, терминальной оболочкой для менеджмента , журналированием, FTL движком под NAND. И дают бесплатно, в исходниках и все сразу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, я уже понял, что без регистрации у них ничего не взять, даже утилиту для конфигурации.

И при этом получить проект под не пойми какую среду разработки.

Тогда уж лучше Micrium. У них FAT с кэшем, терминальной оболочкой для менеджмента , журналированием, FTL движком под NAND. И дают бесплатно, в исходниках и все сразу.

Ну, это не аргумент. СлабО любой емейл действующий указать, а в разделе "фирма" и "телефон" прочерки поставить? У меня под спам два емыла выделено, еще два для общения, и еще два для тестов :)

А NAND мне сейчас не нужен, так что не аргумент. И цены микриумовские меня так испугали еще лет 15 назад, что я к ним стараюсь больше не подходить.

Ну и "ФАТ с кэшем" это как-то недостаточно революционно, если все равно менять (мало дополнительных плюшек при похожем объеме нужных для перехода работ).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, это не аргумент. СлабО любой емейл действующий указать, а в разделе "фирма" и "телефон" прочерки поставить? У меня под спам два емыла выделено, еще два для общения, и еще два для тестов :)

А NAND мне сейчас не нужен, так что не аргумент. И цены микриумовские меня так испугали еще лет 15 назад, что я к ним стараюсь больше не подходить.

Ну и "ФАТ с кэшем" это как-то недостаточно революционно, если все равно менять (мало дополнительных плюшек при похожем объеме нужных для перехода работ).

Убивает скорее то, что надо будет каждый раз конвертировать образ файловой системы какой-то убогой утилитой командной строки.

А образ то может быть гигабайтный. Это не вариант.

 

Я применял FAT-ы от Keil, Nucleus, MQX, Micrium (6-и летней давности), FatFS и они все показывали плохой риалтайм, хотя у большинства был кэш.

Может быть последние SD карты класса V90 что-то меняют, но подешевеют они не скоро.

Зато Serial NAND нынче очень быстрые и дешевые.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Убивает скорее то, что надо будет каждый раз конвертировать образ файловой системы какой-то убогой утилитой командной строки.

А образ то может быть гигабайтный. Это не вариант.

Это очень серьезный аргумент. Согласен, им надо что-то делать для продвижения в массы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это очень серьезный аргумент. Согласен, им надо что-то делать для продвижения в массы.

Просто надо сделать что-то вроде плагина ФС EXT для тотал коммандера и все :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...им надо что-то делать для продвижения в массы.

Массы устроит только FAT, увы :( Утилиты/плагины/драйверы суть костыли и неудобство.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Просто надо сделать что-то вроде плагина ФС EXT для тотал коммандера и все :biggrin:

 

Я их утречком сегодня спросил про возможность доступа к отдельным файлам (read/write/delete), если вставлю эту SD-карту в Windows PC. Ответили в течении пары часов (что уже само по себе уже очень приятно).

В-общем, нет в Винде пока счастья, а вот в Линуксе вроде уже да:

 

Reliance Edge has two utilities that allow the transfer of an entire set of files to and from your removable media on a Windows PC. While these tools do not allow single file level access, they do allow you to populate a Reliance Edge disk from Windows from a path on your host, and copy files from your device to a host directory.

The utility to copy files to Windows from your removable media is called the Image Copier, and is available only in the Reliance Edge Commercial kit. The utility to copy files to your removable media from Windows is called the Image Builder. These utilities are both discussed in Chapter 14 of the Reliance Edge Developers guide.

 

Reliance Edge also provides a FUSE (File System in User Space) driver for Linux, which gives you the ability to do more of what you are asking directly. Here is the manual entry for that specific feature, which is available in both the open source and commercial kits: 14.7 Linux FUSE Implementation Reliance Edge can be installed as a FUSE driver (File System in User Space) on Linux.

This allows a user to mount a Reliance Edge volume within a folder so that it appears like a native Linux file system. The contents of the volume may then be accessed with a file browser or any other Linux program.

Note that the FUSE implementation depends on libfuse-dev, and it is built as a separate make target from the other host tools listed here (make redfuse). When built, an executable (redfuse) is produced, which can be run to install Reliance Edge as a FUSE driver. The FUSE implementation is not available on Windows. Currently the FUSE implementation only supports the Reliance Edge POSIX-like API.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я их утречком сегодня спросил про возможность доступа к отдельным файлам (read/write/delete), если вставлю эту SD-карту в Windows PC. Ответили в течении пары часов (что уже само по себе уже очень приятно).

В-общем, нет в Винде пока счастья, а вот в Линуксе вроде уже да:

Есть еще иной выход.

Реализовать USB MTP класс.

Под виндами смартфоны дают броузить свое содержимое как раз через MTP класс.

https://www.segger.com/products/connectivit...-ons/mtp-class/

 

На крайний случай развернуть TCP стек и FTP сервер на нем через USB CDC EEM.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...