|This article needs additional citations for verification. (December 2011)|
|OS family||Embedded Linux|
|Source model||Open source|
|Kernel type||Linux kernel-fork|
μClinux was a fork of the Linux kernel for microcontrollers (in embedded systems) without a memory management unit (MMU). It was integrated into the main line of development as of 2.5.46; the project continues to develop patches and tools for microcontrollers.
μClinux was originally created by D. Jeff Dionne and Kenneth Albanowski in 1998. Initially, they targeted the Motorola DragonBall family of embedded 68k processors (specifically the 68EZ328 series used in the Motorola PalmPilot) on a 2.0.33 Linux kernel. After releasing their initial work, a developer community quickly sprang up extending their work to newer kernels and other microprocessor architectures. In early 1999, support was added for the Motorola (now Freescale) ColdFire family of embedded microprocessors. ARM processor support was added later.
Although originally targeting 2.0 series Linux kernels, it now has ports based on Linux 2.4 and Linux 2.6. The Linux 2.4 ports were forward ported from the 2.0.36 Linux kernel by Michael Leslie and Evan Stawnyczy during their work at Rt-Control. There were never any μClinux extensions applied to the 2.2 series kernels.
Since version 2.5.46 of the Linux kernel, the major parts of μClinux have been integrated with the main line kernel for a number of processor architectures. Greg Ungerer (who originally ported μClinux to the Motorola ColdFire family of processors) continues to maintain and actively push core μClinux support into the 2.6 series Linux kernels. In this regard, μClinux is essentially no longer a separate fork of Linux.
The project continues to develop patches and supporting tools for using Linux on microcontrollers. μClinux has support for many architectures, and forms the basis of many products, like network routers, security cameras, DVD or MP3 players, VoIP phone or Gateways, scanners, and card readers.
The current list includes:
- Altera Nios/Nios II
- ADI Blackfin
- ARM ARM7TDMI, ARM Cortex-M3/4/7, ARM Cortex-R
- Axis ETRAX
- Freescale m68k, aka Motorola 68000 family
- Fujitsu FR-V
- Hitachi H8
- Hyperstone E1/E2 (called hyLinux)
- Intel i960
- Freescale ColdFire, formerly Motorola Coldfire
- NEC V850E
- Xilinx MicroBlaze
- Lattice Mico32
- Official website
- μClinux-dist, complete source distribution package
- μClinux - Setting up the Development Environment