File System Performance Metrics in Modern Embedded Devices

Embedded devices such as mobile phones, digital cameras, and set-top boxes, and the operating systems upon which they rely, have evolved dramatically over the last 10 years.

Consider that 10 years ago, the vast majority of embedded devices did not use file systems. The rise of NAND flash, with its higher densities, and more deterministic performance characteristics (as compared with NOR flash), has allowed it to satisfy consumer’s demands for more storage. Whether using raw NAND using a flash media manager such as Datalight’s FlashFX, or managed NAND such as SD cards and eMMC, NAND flash has become the de-facto standard for storage media in portable embedded devices.

Likewise, consider that 10 years ago, today’s “big three” operating system vendors for mobile phones (Google, Apple, and Microsoft), had zero presence, not only in the mobile phone market, but virtually zero presence in the entire embedded space.

Finally, 10 years ago, any embedded device which included a file system was a bit unusual to start with, and therefore, one with a multithreaded file system was pretty much unheard of.  Today it is common for a typical smartphone to have hundreds of active threads in the system, many of which are doing file system I/O.