Live data from Hacker News

A little fail-safe filesystem designed for microcontrollers (2017)

github.com

31–32 of 32 posts

Re: A little fail-safe filesystem designed for microcontrollers (2017)

#31

Seems well thought through, but the concept of putting a general-purpose file system on an embedded microcontroller is a common mistake. These are single-purpose systems, you don't need to use filenames and have POSIX semantics, you typically just need to put your data into a circular buffer on FLASH. The circular buffer (with checksummed elements) will take care of bad-block management and wear levelling for you. I'…

i have the exact opposite opinion. such circular buffers only suit limited file system activities, such as logs. if you want editable config files of varying lengths, you need a real fs. i'll concede that features like directory structures and timestamps can be omitted though.

Re: A little fail-safe filesystem designed for microcontrollers (2017)

#32
post #31

Seems well thought through, but the concept of putting a general-purpose file system on an embedded microcontroller is a common mistake. These are single-purpose systems, you don't need to use filenames and have POSIX semantics, you typically just need to put your data into a circular buffer on FLASH. The circular buffer (with checksummed elements) will take care of bad-block management and wear levelling for you. I'…

i have the exact opposite opinion. such circular buffers only suit limited file system activities, such as logs. if you want editable config files of varying lengths, you need a real fs. i'll concede that features like directory structures and timestamps can be omitted though.

No, you can do log-structured BLOBs which essentially given you version control in a simple manner with circular buffers.

As for variable-length configs, yes, but you should always be allocating the worst-case (i.e. defined maximum), hence no need for variable length.

Post reply on HN