Embedded Linux
There are already a number of commercial Linux offerings which support
embedded systems:
- Probably the best known embedded Linux is from
Lineo, which is the embedded
portion of Caldera.
Their distribution,
Embedix, runs on Power PC as well as x86 platforms.
This won the 'Best New Application' award in Linux Journal's
1999
Editors' Choice Awards. There is an interesting interview
with Lyle Ball from Lineo in
Linux
Journal.
Also Lineo have announced
(or here)
that they will be working with
Elitegroup Computing and
Bast, Inc, to
provide the Linux kernel and Embedix Browser for set-top-boxes designed
for use in hotels.
- Another company offering embedded Linux support is
Monta Vista who produce Hard-Hat Linux.
Here
is a press release from them, about releasing CompactPCI backplane
software as open source. They have also contributed an
article
to LinuxDevices.com about why "there are strong technical
and business reasons to consider using Linux for your next embedded
development project".
They have also
announced
that it will be embedded in Kerbango, Inc.'s stand-alone "Internet radio"
product.
- Cygnus have also announced
EL/IX, a standard
API which can be supported on both Linux and standard RTOS's (of course
the first implementation will be on ECos!). Cygnus are now
owned by RedHat (here is the
press
release, some
comments
from RedHat and some reactions from
Linux
Journal).
- An interesting collaboration has taken place to generate
a version of Linux suitable for deployment on PowerPC
embedded systems. The standard Linux distribution
Yellow Dog Linux
(from Terra Soft Solutions, Inc) has been combined with
the real-time Linux variant RTLinux, from
FSM Labs by
Synergy Micros,
when they call it `Industrial Linux'. Synergy Micros produce a range of
SBC (single board computers) with support for SMP, in both VME and
CompactPCI format.
- Another company offering a real-time Linux distribution based on
a `conventional' real-time kernel is
Lynx. Their
BlueCat distribution
also runs Linux as a task on top of their LynxOS real-time OS.
For some general background reading they have an interesting
paper
on why Linux is of interested to embedded systems developers
(with a `slight' bias towards a particular solution!).
-
Another embedded Linux distribution is
White Dwarf
from EMJ Embedded Systems.
-
Integrated Software & Devices Corporation
(ISDCorp) has
announced
that it is shipping "Royal Linux", ISDCorp's port of Linux kernel 2.2.1
for embedded systems. Currently available for ARM, it should be available
for MIPS, Motorola 68K/Coldfire and Power PCs shortly.
-
Another port based on uClinux
is available for the Axix
ETRAX 100. This is available from
here.
An interesting feature of this port is the inclusion of a
Bluetooth
stack and a Journaling Flash File System, JFFS.
There are also a number of shipping or announced projects which use
Linux:
- An in-car MP3 player from
empeg.
This won the 'Best New Gadget' category of Linux Journal's
1999 Editors' Choice Awards.
- An announcement from
Nokia
that they will use Linux in a future STB.
- A press release
from Lineo that with
MeterNet they will co-develop
the "industry's first linux-based internet set-top device".
- Another Linux based set-top-box has been
announced
involving USA Video Interactive,
Eagle Wireless and Urbana.ca. This one will
offer video-on-demand, and
- A Press
release describes how BroadbandMagic.com
now support Linux on their 'Convergence' Set-top-box.
- TiVo produce a hard disk drive video recorder
and electronic program guide system. Both the
STB
and servers run
Linux. The changes make to the Linux kernel and some selected tools are
available from their web site.
They have also issued a
press
release (Jan 7, 2000) stating that future versions will run the
Liberate web browser.
Also
here
is an editorial from Nicholas Petreley (LinuxWorld) who trys out a TiVo box, and
likes what he finds.
-
Netgem produce the `netbox', a range
of Set-Top-Box's for web browsing and e-mail, using Linux as the kernel.
- Morton Bay produce a small
family of VPN routers called
NETtel
which run uClinux on a ColdFire.
An engineer there has made a simple modification which also allows the board to
act as an
MP3 player!
They also provide a development system (called
eLIA)
which provides both ColdFire based hardware and Linux software, which allows other
companies to use this system for their own products.
-
Picazo have
announced
the availability of a Linux-based private branch exchange (PBX) system.
-
Lernout & Hauspie have
released
a prototype PDA (called Nuk), providing speech recognition and
wireless, all running on top of Linux.
A few journals have run articles on embedding Linux:
- linuxjournal has run a couple of
articles:
-
Embedding Linux in a Commercial Product.
Most Linux systems run on PC platforms; however, Linux can also be a reliable workhorse for embedded
systems. This article gives an overview of embedded systems and demonstrates what is involved in using
Linux in a commercial embedded system.
This was taken from a special issue on
embedded
systems.
-
Open Source Software for Real-Time Solutions
Much hype is circulating in the industry today about open-source software and Linux. These discussions
have focused on how Linux represents the first major threat to Microsoft's domination of the desktop.
However, open-source software is also moving into the embedded real-time marketplace. Last year, Cygnus
Solutions unveiled a new initiative called eCos (embedded Cygnus operating system). eCos is available as
both open source and royalty free. Today, eCos has been downloaded by well over 10,000 developers. Why
didn't Cygnus choose Linux as its open-source real-time alternative? This article will compare and contrast
these two alternatives and explain why each can have a place in your real-time solution.
- Dr. Dobb's Journal has an article:
-
Linux, Real-Time Linux, & IPC.
When dealing with real-time systems, the overhead of interprocess communications (IPC) becomes
important. The formalized structures that are used in Linux for IPC can carry with them a significant
amount of overhead. This can create timing problems for your applications. In this article, I'll examine
two of the best IPC mechanisms available under Linux -- FIFOs and shared memory.
- EE Times frequently has articles on Linux.
- RTC had
a feature in their September 1999 issue on Linux. A few articles:
- Linux: Next Common Unix?
- Just How Real-Time is Linux by James Norton and Trevor Woolven
of Zentropic Computing.
- Running Linux on a Dual Processor/SBC CompactPCI System by
James F Ready of MontaVista.
- ESE (Embedded System Engineering) had an article in their
October/November 1999 issue:
- Linux makes progress into RT applications.
Unfortunately these last two only appear to be available in paper form.
- News.com had an interesting
article
on Linux from an investors point of view. In particular:
[Linux] is also is an ideal
operating system for appliance computing, a
high-growth segment that I've commented on the
past.
... the appliance model, which is the strategy used by
companies like Cobalt Networks. As mentioned before, I am a big
believer in appliance computing, with devices tuned for specific tasks.
Given this model, low cost and simplicity are key. Tuning Linux for
specific tasks addressed by an appliance is relatively easy, and costs
are minimized.
- Electronics Design Online
had a couple of article:
-
Linux Is A Great Prototyping Tool For Embedded-Hardware Designs
written by George Tyler from the Motorola Computer Group.
To make these new embedded-hardware platforms fully functional,
software (e.g., OSs, firmware, communication software, or enabling tools) must
be optimized for the new hardware to show off its capabilities and power. The
problem is getting software running on the hardware as soon as the hardware
is released.
Using Linux, hardware manufacturers can share
early-access hardware, plus prototype or proof-of-concept software, with
customers and/or partners without any concerns about software licensing. By
sharing this prototype code with real-time-kernel or software vendors, the
process of supporting hardware is streamlined. Therefore, when new
embeddable hardware becomes available, early-access software is available
at the same time.
-
and a forecast for what to look out for in 2000 in the area of
Embedded Systems had a section on
Linux
which recommends:
...keep an eye out for what might turn into a real
dark horse in the operating-platform race.
The Linux operating system has turned the market for server operating
systems on its head ... will the same thing happen in the
embedded system arena?
-
Fox News have a
Linux channel.
There aren't too many articles here yet, but a couple are interesting,
in particular:
-
Linux in
Your Living Room which discusses the appearance of Linux in domestic
applications such as TiVo and Playstation 2:
The impact of Linux in the home entertainment market could be huge.
Its ability to run on multiple platforms, including Intel, Motorola, SGI and
Apple, and its open-source kernel that can be modified by lots of
developers for any task, give it a tremendous advantage over other
operating systems in this market.
- The Gartner Group, Inc
produce statistics and
reports on the Computing Industry, and have been keeping tabs on
Linux for some time. In general they don't think it will have much
impact on the office automation area, but a recent article stated that:
Linux fits where Unix hoped, but failed, to win: as a commodity OS for inexpensive Intel servers and
desktops. It solves the enterprise need for budget-tight deployments (e.g., replicated sites, Internet nodes
and embedded devices that can be easily scrapped, swapped and upgraded).
-
GNet have a couple of technology
related articles, in particular
an interview
with Linus Torvalds, where he mentions Mobile Linux.
-
Another interview, this time with Michael Tiemann, CTO at Red Hat,
is available from
ZDNet.
There are also a couple of industry founded forums to try advance Linux
in the embedded market:
Here are two sites that you may want to take a look at, for more
information on Embedded Linux:
A portal site LinuxDevices.com
has been set up to to act as a gateway to embedded Linux information.
Also EmbeddedTechnology.com
have opened a News & Analysis section focusing on Linux in
embedded applications called
Linux Beat.
Web pages are typically not designed for viewing on a computer not a
television screens. For example the viewer may be a long way away from
the screen, which is of low resolution, and typically doesn't have a
keyboard.
A number of companies are working on ways to improve this:
- Set-Top.com is a service for
set-top boxes, games consoles and similar devices which acts as a portal
to web sites which have been designed to work on TV's.
- Liberate works from a different
perspective, producing a browser which renders normal web content
into a form which is more suitable for TV viewing. Liberate is the
latest incarnation of Navio (the embedded Netscape spin off) and
Network Computers Inc (NCI).
There are a number of other companies which produce browsers which are
targeted at the embedded market:
Spyglass,
Espial Group (Espial Escape), and
Teknema.
A couple of UK companies also claim to produce browsers, although they
don't have much information on their web site:
Powernet International and
MSU (who provide a Si solution as
well as software).
In addition the middleware provides
Open-TV and
Power-TV both provide browsers.
Finally Lineo offer an embedded
web browser called
embrowser
which runs on both Linux and DR-DOS.
If you see any more links you think would fit here, please let me know.
There are a number of embedded graphics
libraries and windowing systems which may be of interest:
- NanoGUI
(soon to be moving) is
"an attempt to produce an Open Source GUI
system for small Linux based systems such as palmtops and embedded POS units."
- Derived from this is Microwindows.
This also forms the base for Nano-X.
Apparently Opera Software have ported their
web browser to this system. Executable size 667K (no idea which processor).
Another useful web site is
linux-embedded which provides
some interesting background on using Linux in embedded systems.
There are a couple of projects aimed at generating small Linux
configurations, which use a standard PC where previously custom
hardware and software would have been used.
- ELKS
(The Embeddable Linux Kernel Subset) is designed to run on 8086 class
machines, (i.e. without an MMU) and so, as its name suggests, only
supports a subset of the Linux API, and is not build from the 'standard'
Linux source base,
- LEM "Linux EMbedded"
is a small distribution of i386 linux which provides embedded soft
developers a small ( < 8 Mb ) multi-user, networked OS with an X11R6 server.
- Alternatively the
Linux Router Project provides a small distribution of Linux which
is designed to make "building and maintaining routers, access servers, thin
servers, thin clients, network appliances, and typically embedded systems next
to trivial".
- Alternatively, another small Linux distribution is
PeeWeeLinux.
- A potentially useful piece of software is
ZENamp, an embedded MP3 player.
- A potentially interesting (but commercial) product from
Icon Labs
is an SNMP development environment for Linux.
-
A good set of links is available from the
linux-embedded site.
-
Also MTD, the
Memory Technology Device Subsystem for Linux, which provides support
for various forms of Flash, some of which allow execute-in-place
to reduce RAM requirements.
Version: $Revision: 1.14 $ Last updated: $Date: 2000/04/04 17:41:00 $ by $Author: stuart $