3 ms·
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-purpo
by TickleSteve 8y ago
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've seen this far too often, filesystems are not ideal for this class of system.
- diydsp 8y agoi 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.
- TickleSteve 8y agoNo, 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.