μClinux stands for "MicroController Linux," and is pronounced "you-see-Linux" as explained on the website, not the way the Greek letter
muCarlos Alberto Vives Restrepo is a Grammy Award and three-time Latin Grammy Award winning-Colombian singer, composer and actor.-Biography:...
is normally pronounced. It was a
forkIn software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...
of the Linux kernel for
microcontrollerA microcontroller is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM...
s (µCs: see
embedded systemAn embedded system is a computer system designed for specific control functions within a larger system. often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal...
s) without a
memory management unitA memory management unit , sometimes called paged memory management unit , is a computer hardware component responsible for handling accesses to memory requested by the CPU...
(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. Without a MMU, any program can crash another program or the kernel, however multitasking is possible if programs are carefully written.
Introduction
μClinux was originally created by D. Jeff Dionne and Kenneth Albanowski in 1998. Initially, they targeted the Motorola
DragonBallMotorola/Freescale Semiconductor's DragonBall, or MC68328, is a microcontroller design based on the famous 68000 core, but implemented as an all-in-one low-power solution for handheld computer use...
family of embedded
68kThe Motorola 680x0/m68000/68000 is a family of 32-bit CISC microprocessors. During the 1980s and early 1990s, they were popular in personal computers and workstations and were the primary competitors of Intel's x86 microprocessors...
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)
ColdFireThe Freescale ColdFire is a microprocessor that derives from the Motorola 68000 family architecture, manufactured for embedded systems development by Freescale Semiconductor .-Instruction set:...
family of embedded microprocessors.
ARMARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...
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 form 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
patchesA patch is a piece of software designed to fix problems with, or update a computer program or its supporting data. This includes fixing security vulnerabilities and other bugs, and improving the usability or performance...
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,
DVDA DVD player is a device that plays discs produced under both the DVD-Video and DVD-Audio technical standards, two different and incompatible standards. These devices were invented in 1997 and continue to thrive...
or MP3 players, VoIP phone or Gateways,
scannersIn computing, an image scanner—often abbreviated to just scanner—is a device that optically scans images, printed text, handwriting, or an object, and converts it to a digital image. Common examples found in offices are variations of the desktop scanner where the document is placed on a glass...
, and card readers.
Supported architectures
The current list includes:
- Altera
Altera Corporation is a Silicon Valley manufacturer of PLDs . The company offered its first programmable logic device in 1984. PLDs can be reprogrammed during the design cycle as well as in the field to perform multiple functions, and they support a fairly fast design process...
NIOSNios was Altera's first configurable 16-bit embedded processor for its FPGA product-line. For new designs, Altera recommends the 32-bit Nios II. It is now considered obsolete.- See also :* LatticeMico8* LatticeMico32* MicroBlaze* PicoBlaze* Micon P200...
- ADI
Analog Devices, Inc. , known as ADI, is an American multinational semiconductor company specializing in data conversion and signal conditioning technology, headquartered in Norwood, Massachusetts...
BlackfinThe Blackfin is a family of 16- or 32-bit microprocessors developed, manufactured and marketed by Analog Devices. The family is characterized by their built-in, fixed-point digital signal processor functionality supplied by 16-bit Multiply–accumulates , accompanied on-chip by a small and...
- ARM
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...
ARM7TDMI
- Axis
Axis Communications AB is a Swedish manufacturer of network cameras for the physical security and video surveillance industries. It focuses on the vertical market segments transport, infrastructure, retail, banking, education, government and industrial....
ETRAXThe ETRAX CRIS is a series of CPUs designed and manufactured by Axis Communications for use in embedded systems since 1993. The name is an acronym of the chip's features: Ethernet, Token Ring, AXis - Code Reduced Instruction Set...
- Freescale m68k, aka Motorola 68000 family.
- Fujitsu
is a Japanese multinational information technology equipment and services company headquartered in Tokyo, Japan. It is the world's third-largest IT services provider measured by revenues....
FR-VThe Fujitsu FR-V is a VLIW-based RISC microprocessor, including FR-400 and FR-450 which runs Linux, and are also supported by the GNU Compiler Collection. Some processors include support with an MMU while others do not....
- Hitachi
is a Japanese multinational conglomerate headquartered in Marunouchi 1-chome, Chiyoda, Tokyo, Japan. The company is the parent of the Hitachi Group as part of the larger DKB Group companies...
H8H8 is the name of a large family of 8-bit and 16-bit microcontrollers made by Renesas Technology, originating in the early 1990s within Hitachi Semiconductor and still actively evolving as of 2006...
- Hyperstone E1/E2 (called hyLinux)
- Intel i960
Intel's i960 was a RISC-based microprocessor design that became popular during the early 1990s as an embedded microcontroller, becoming a best-selling CPU in that field, along with the competing AMD 29000...
- MIPS
MIPS Technologies, Inc. , formerly MIPS Computer Systems, Inc., is most widely known for developing the MIPS architecture and a series of pioneering RISC chips. MIPS provides processor architectures and cores for digital home, networking and mobile applications.MIPS Computer Systems Inc. was...
- Motorola
Motorola, Inc. was an American multinational telecommunications company based in Schaumburg, Illinois, which was eventually divided into two independent public companies, Motorola Mobility and Motorola Solutions on January 4, 2011, after losing $4.3 billion from 2007 to 2009...
ColdFire
- NEC
, a Japanese multinational IT company, has its headquarters in Minato, Tokyo, Japan. NEC, part of the Sumitomo Group, provides information technology and network solutions to business enterprises, communications services providers and government....
V850The Renesas Electronics V850 is a 32-bit RISC CPU core architecture for embedded microcontrollers originally developed and manufactured by NEC, succeeded by V850 variants named V850ES, V850E, and V850E2 which run uClinux. Compilers available for it include the GNU Compiler Collection, IAR Systems...
E
- Xilinx
Xilinx, Inc. is a supplier of programmable logic devices. It is known for inventing the field programmable gate array and as the first semiconductor company with a fabless manufacturing model....
MicroBlazeThe MicroBlaze is a soft processor core designed for Xilinx FPGAs from Xilinx. As a soft-core processor, MicroBlaze is implemented entirely in the general-purpose memory and logic fabric of Xilinx FPGAs.-Overview:...
- Lattice
Lattice Semiconductor Corporation is a United States based manufacturer of high-performance programmable logic devices . Founded in 1983, the company employs about 700 people and has annual revenues of around $300 million, with Darin Billerbeck as the chief executive officer...
Mico32
Recent developments
Quality of support varies, with some ports no longer under active development. ARM support is currently being merged, most core support is in later 2.6 series kernels. Microblaze is actively attempting for inclusion in main line Linux kernels. Development for some architectures has occurred outside of the existing μClinux community (typically by
commercial interests, but sometimes by individuals), and resources like the uclinux.org web site may not be
particularly helpful for all architecture types.
Like any part of the Linux kernel, the extensions (in the form of patches) are licensed under the
GPLThe GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
.
Although strictly speaking μClinux is only the operating system kernel, the μClinux project also produced a
C standard libraryThe C Standard Library is the standard library for the programming language C, as specified in the ANSI C standard.. It was developed at the same time as the C POSIX library, which is basically a superset of it...
called
uClibcIn computing, uClibc is a small C standard library intended for embedded Linux systems. uClibc was created to support uClinux, a version of Linux not requiring a memory management unit and thus suited for microcontrollers .The project lead is Erik Andersen. The other main contributor is Manuel...
(now separately maintained) and a "userland" which can be used as a complete operating system for embedded systems called "μClinux-dist".
The "μClinux-dist" software package contains libraries, applications and tools. It can be configured and built into a kernel with root file system. It was first released by Greg Ungerer in 1999 as the μClinux-coldfire package. In the following years it came to support many architecture families, and now can even build standard Linux architectures (such as x86) as well.
The "μClinux-dist" userland utilities contain tiny http servers, a small 'sh like' shell, and even a fun
ASCII artASCII art is a graphic design technique that uses computers for presentation and consists of pictures pieced together from the 95 printable characters defined by the ASCII Standard from 1963 and ASCII compliant character sets with proprietary extended characters...
Star WarsStar Wars is an American epic space opera film series created by George Lucas. The first film in the series was originally released on May 25, 1977, under the title Star Wars, by 20th Century Fox, and became a worldwide pop culture phenomenon, followed by two sequels, released at three-year...
film. It also contains many other well known open source packages, like
SambaSamba is a free software re-implementation, originally developed by Andrew Tridgell, of the SMB/CIFS networking protocol. As of version 3, Samba provides file and print services for various Microsoft Windows clients and can integrate with a Windows Server domain, either as a Primary Domain...
and
FreeS/WANFreeS/WAN, for Free Secure Wide-Area Networking, was a free software project, which implemented a reference version of the IPsec network security layer for Linux and other Unix-like operating systems. The project goal of ubiquitous opportunistic encryption of Internet traffic was not realized,...
, all of which run on μClinux systems.
For example, the
iPodLinuxiPodLinux is a µClinux-based Linux distribution designed specifically to run on Apple Inc.'s iPod. When the iPodLinux kernel is booted it takes the place of Apple's iPod operating system and automatically loads Podzilla, an alternative GUI and launcher for a number of additional included programs...
project uses μClinux for its kernel, and so does
MattelMattel, Inc. is the world's largest toy company based on revenue. The products it produces include Fisher Price, Barbie dolls, Hot Wheels and Matchbox toys, Masters of the Universe, American Girl dolls, board games, and, in the early 1980s, video game consoles. The company's name is derived from...
's
Juice BoxThe Juice Box is a low cost multimedia player made by toy manufacturer Mattel. The player features a screen with a native resolution of 240×160 px and runs μClinux, a microcontroller version of the Linux kernel. It has 66MHz ARM7TDMI architecture Samsung processor, 2 MBytes or 8 MBytes of RAM and...
, as well as the well-known
Nintendo DSThe is a portable game console produced by Nintendo, first released on November 21, 2004. A distinctive feature of the system is the presence of two separate LCD screens, the lower of which is a touchscreen, encompassed within a clamshell design, similar to the Game Boy Advance SP...
Linux port,
DSLinuxDSLinux is a port of the Linux operating system to the Nintendo DS. DSLinux was maintained until sometime in 2010.-Software:DSLinux runs a modified μClinux kernel. It is based on uCLinux 2.6.14 . It only runs in textmode and which is displayed using a custom framebuffer console driver...
, the lesser-known
PlayStationThe is a 32-bit fifth-generation video game console first released by Sony Computer Entertainment in Japan on December 3, .The PlayStation was the first of the PlayStation series of consoles and handheld game devices. The PlayStation 2 was the console's successor in 2000...
port
RunixPSXLinux is a Linux kernel and development kit for the PlayStation . PSXLinux is based on the μClinux 2.4.x kernel and contains specific support for the Sony PlayStation.- Execution Methods :...
, and the
PlayStation PortableThe is a handheld game console manufactured and marketed by Sony Corporation Development of the console was announced during E3 2003, and it was unveiled on , 2004, at a Sony press conference before E3 2004...
port.
It has also been used in the
PicotuxPicotux is the smallest computer running Linux in the world. There are several different kinds of picotux available, but the main one is the picotux 100. It is 35 mm × 19 mm × 19 mm and just barely larger than an 8P8C modular connector. Two communication interfaces are provided,...
, advertised as the smallest computer running Linux in the world. The Picotux 100 is 35 mm × 19 mm × 19 mm, but the
BlackfinThe Blackfin is a family of 16- or 32-bit microprocessors developed, manufactured and marketed by Analog Devices. The family is characterized by their built-in, fixed-point digital signal processor functionality supplied by 16-bit Multiply–accumulates , accompanied on-chip by a small and...
based
Minotaur BF537 is smaller, at 26.5mm x 26.5mm x 4.2mm.
External links