組み込みLinux
また、MaemoやMoblin、Androidのようにミドルウェアの大部分をオープンソースで改めて開発するものや、Palm WebOSのようにミドルウェアの多数の部分にオープンソースソフトウェアを組み合わせて使うものもある。マルチメディアに関してはオープンソースで扱う場合、GStreamer経由でハードウェアデコーダとFFmpegをバックエンドにして使われることが多いが、AndroidにおいてはOpenCoreが使われている。
開発環境としてはEclipseか、商用製品が使われることが多い。Eclipseでは組み込みにおいて以下のプラグインが使われる。
Eclipse C/C++ Development Tooling (CDT) - EclipseでのCやC++の開発に必須
Target Management (RSE)
Linux Tools Project - プロファイラや動的解析などの機能を統合
Tools for mobile Linux (TmL)
EGit - バージョン管理システムの一つ、Gitの統合
Mylyn - バグトラッカの統合
また、EclipseにはMoblin Eclipse Plug-inやAndroid Development Tools (ADT) など特定のOSに特化したプラグインも存在する。 また、開発にはエミュレータのQemuや分散コンパイルの為のdistccやiceccなども使われる。
Gartnerのプレスリリースによると、2008年のLinuxのシェアは8.1%としている。AdMobのレポートによると、全世界のモバイルデバイスにおいてLinuxカーネルを採用しているOSであるAndroidとPalm WebOSを合わせたシェアは2009年8月時点で11%であり、2009年2月の2%と比べ9%伸びている。また、AdMobの2010年2月のレポートによると、スマートフォンにおけるAndroidのシェアは24%に達し、2位になったとしている。
日本では、NTTドコモの制定したMOAP(L)及びALPベースのFOMA端末用オペレータパックに使われている。
リンクシス: WRT54G
プラネックスコミュニケーションズ: BRC-W14V, BRC-14V, BRC-W14VG, BRC-14VG, BRC-W14VG-BT, BRC-14VG-BT
パナソニック: broadband terminal
AVM GmbH: FRITZ!Box
LASER5: L-Router
組み込みLinuxに関わらず、元となるLinuxカーネルにまつわる特許、とりわけソフトウェア特許の問題がいくつか存在する。
以下は、組み込み機器に特化したLinuxカーネルの機能である。"CONFIG_*"という表記はカーネルコンフィグレーションであり、コンパイルする際に機能を有効化するための識別子となる。Linuxカーネルはモノリシックであるため、カーネルコンパイル時に必要とする機能を有効化する。
多くのCPUアーキテクチャやハードウェアプラットフォームで動作 MMU (メモリ管理ユニット)の無いCPUでも動作可能 (CONFIG_MMU=n)
少ない資源でも動作 XIP (Execute in place) 読み出し専用ファイルシステム (romfs、cramfsやSquashFSなど) サイズを削ることができる (Linux Tinyなど) シングルプロセッサに最適化可能 (CONFIG_SMP=n) メモリ内圧縮スワップによるメモリの有効活用 (ramzswap(compcache)) NAND型フラッシュメモリを直接使用可能 (JFFS2やUBIFS)
タイトな用途にも使用可能 マウントの早いファイルシステム (YAFFS2など) ソフトリアルタイム (CONFIG_PREEMPT) ハードリアルタイム (CONFIG_PREEMPT_RT patch set) ユーザーアプリケーションのリソース制限 (rlimit, cgroupsなど) サンドボックス (seccomp) コンテナ (LXC) リブート不要なセキュリティパッチ (Ksplice)
なお、AMP (非対称型マルチプロセッシング) にはまだ対応していない。RenesasとTIはそれぞれ異なったVirtioベースの仕組みを提案している。
Qt Extended - モバイル機器向けアプリケーションプラットフォーム
Openmoko - 携帯電話向けプラットフォーム
MeeGo - Linux Foundationが統括する種々デバイス向けのプラットフォーム。現在はインテルとノキアが主導している。MaemoとMoblinを統合して作られた。 Maemo - ノキア主導のハンドヘルドコンピュータ向けプラットフォーム Hildon - Maemoのアプリケーションプラットフォーム Moblin - インテル主導のネットブックやモバイルインターネット端末向けプラットフォーム
Tizen - LiMo Foundationの仕様をMeeGoに取り込み作られた、インテルとサムスン主導の携帯電話向けプラットフォーム。
MOAP(L) - NTTドコモ主導の携帯電話向けプラットフォーム
Access Linux Platform - ACCESS主導の携帯電話向けプラットフォーム Hiker - Access Linux Platformのアプリケーションフレームワーク