Best of Embedded Linux

Overview
This page is dedicated to documenting the "Best of Embedded Linux".

For now, this means the systems with the:
 * smallest memory footprint
 * fastest boot time

This page also has the most bizarre embedded Linux systems that I've heard of.

I considered adding things like the following, but for various reasons have not done so yet. (One problem is determining how to measure them).
 * most secure
 * most real-time
 * most stable (longest documented runtime?)
 * most power-efficient

One rule is that the "best" system must be an actual, shipping product. (I relaxed this rule for the boot-time category, until I can confirm their use in an actual product).

Least expensive computer

 * Raspberry Pi zero - $5
 * 1GHz, single core ARM 11, 512M RAM, mini-HDMI, micro USB (host), USB power jack
 * The Chip - $9
 * ... wifi

Smallest RAM footprint
My criteria for smallest system is the one with the least RAM, running in an actual useful product, with a recent (2.6.11 or above) kernel.

In October of 2013, I postulated that the following product was the smallest Linux product I knew of: TP-Link MR3020
 * What is it: WiFi hotspot
 * Flash/Rom: 4M flash chip
 * partitions: 128K U-Boot
 * 1M kernel
 * 2.8M root filesystem
 * RAM: 32M DRAM

See http://lwn.net/Articles/568943

Candidates
These were other products or systems mentioned at the ELCE 2013 status talk (BOF section):
 * VTec - has 8-meg. systems? (I can't find any)
 * See InnoTab
 * 64M on-board memory, doesn't run Linux natively (can be hacked onto the system)
 * LeapFrog - 8M RAM, 16M flash (couldn't find a system this low)
 * Didj was based on the Pollux platform, and had 32M of RAM (and is over 3 years old, running a 2.20 kernel)
 * See LeapFrog Pollux Platform: Technical Details for specs
 * Pixter color - 4MB RAM??
 * has LH75411 (NXP) ARM7TDMI core
 * Came out in 2005, which makes it too old to qualify for a "best of" category (in 2013)
 * According to Pixter, it only has 32K SRAM (but maybe more DRAM)
 * It's not clear that it runs Linux natively from the manufacturer - maybe there was an add-on Linux cartridge (which would also disqualify this product from being a "best of" contender.
 * memento (sp?) click?
 * EFM32 (Wikipedia entry for EFM32)
 * http://www.silabs.com/products/mcu/lowpower/pages/efm32gg-giant-gecko.aspx ((??) doesn't appear to have 4MB of RAM)
 * ARM M3 (32-bit, no-MMU) processor, can run uClinux from Pengutronix (v3.2)
 * Teaser video for Giant Gecko Development Kit uses 4MB RAM (with 775KB used after boot-up) at: http://www.youtube.com/watch?v=3WS3pvsOmp4
 * So far, I can't find any shipped products running this.
 * Transcend WiFi SD card
 * Smallest (physical dimensions!) embedded linux device I know
 * ARM9, 32MB Ram, 2.6.32
 * http://haxit.blogspot.ch/2013/08/hacking-transcend-wifi-sd-cards.html


 * https://www.indiegogo.com/projects/vocore-a-coin-sized-linux-computer-with-wifi
 * VoCore is a coin-sized Linux computer based on RT5350 SOC (360MHZ MIPS) with wifi. It runs OpenWrt and contains 32MB SDRAM, 8MB SPI Flash. It provides many interfaces, including 10/100M Ethernet, USB, UART, I2C, I2S, PCM, JTAG and over 20 GPIOs in less than one square inch (25mm x 25mm).

Fastest booting
My criteria for fastest boot is one with the least time to go from cold boot (no power whatsoever) to first available product use. This includes the time for bootloader, user space, video startup (if applicable), until the product's primary use is fully available to the user (e.g. when a picture can actually be taken, for a digital camera).


 * 630 ms cold boot (beagleboard?)
 * http://www.makelinux.com/emb/fastboot/omap


 * MontaVista dashboard boot in < 1 second
 * http://www.mvista.com/press_release_detail.php ?fid=news/2009/Ultra-fast-boot.html

Other candidates

 * Chevy volt - need details
 * Volvo - need details

Linux on 8-bit AVR
Yann Morin  wrote:

Not sure it really applies, but there was this crazy (russian?) guy who managed to run Linux on an 8-bit micro-controller: http://dmitry.gr/index.php?r=05.Projects&proj=07.%20Linux%20on%208bit

TL;DR version: The guy wrote a basic VM running on a 8-bit AVR, emulating the ARM instruction set (armv5, PXA255). That runs a small hypervisor to provide basic functionality via hypercalls.

Linux running in your browser in an emulator in Javascript
See http://bellard.org/jslinux/ To see Linux booting in an emulator written in Javascript, in your browser.

Instructions
Please add more information to this page. If you know of an extreme use of Linux, please add it.