I was looking into paritioning magic on eMMC lately and was wondering about some of preexisting partitions. This article explains eMMC paritioning schemes really well. It also dives into how it can be made to last long in field. One complain against eMMC is that it wears out faster. Perhaps using right part and right paritioning scheme for R/O and R/W areas can make them last for long
Faster than what?
I’ve had quite good results from using eMMC in past projects. I really have nothing bad to say about eMMC in general, other than it’s getting hard now to buy smaller sized ones. But if you don’t need the size you can always convert some or all of the user area into enhanced to get better write durability, which isn’t a bad tradeoff.
I hadn’t thought about partitioning at the eMMC level like is described in the article, that’s an interesting idea. But if you need your configuration and log data storage to also work, then it doesn’t really matter if the rootfs is readable, the product may still be useless once a portion of the flash wears out. My attitude around flash wear is just to not do it unless absolutely necessary, so don’t persist logs to flash, make sure any applications which write to flash do so at reasonable intervals, and generally make all developers on a project aware that writing to flash is a Really Bad Idea.