Best Practices for using the eMMC and the SD-Card


I am considering using the BBB with an Ubuntu as an embedded system (with some interface to the external world via the I/Os).

My question, ca I use the Flash eMMC card for storing both the Ubuntu image + storing some data (constants, tables, etc…) ?

Or I must use the SD-Card for that?

I want to minimize the BOM by not using an SD-Card…


Yes, you can store data on the eMMC. Is there enough storage space for you application? Only you can answer that one.


I also have a question regarding that, for long term use, is it better to disable logging to disk?
Is ext4 a suitable file system format for flash (regarding the finite number of writes that the flash medium supports)?

All NAND has a limit to the number of writes. This is handled to a certain extent by wear leveling.


Isn’t this how “tablets” work? iPod and Kindle Fire, etc?
Do they wear out?

they do not necessarily use ext4 as their file system. For example android devices use different file systems like jffs ubifs and others. this is a good answer!!

Here is a reasonable paper on using Ext4 with eMMC.

They essentially recommend ext4 with discard and no journals.

I checked as well

which mention that ext4 with discard and no journals is only valid in battery-mode (which is also the conclusion in your paper). nobarrier would be the best option if you don’t have battery…

AFTER rereading once again I realize, that the nobarrier-option has the same restrictions as the nojournal option, i.e. 'It should be safe to do so on battery-backed ’ Sorry for confusion :expressionless: