As usual, Linux was everywhere at last week's Embedded World show in Nuremberg, Germany. Especially in Europe, the open source OS seems to be more popular than ever in markets represented at the show, which include industrial, automotive, military, telecommunications, and consumer electronics.
Once upon a time, Linux was considered too large, and too lacking in realtime "determinism" for industrial embedded applications. That changed in the early Otts, when highly integrated 32-bit system-on-chip processors began proliferating, at prices competitive with 8- and 16-bit MCUs (microcontrollers). It wasn't long before Linux-ready "SoCs" could be purchased in bulk for $10, $8, $5, or less, many with built-in display controllers, Ethernet, USB, external memory and storage interfaces, and often DSP cores, AES engines, advanced timers, and other specialized hardware, too!
Embedded World claims to be the largest show of its kind. This year's edition stretched from March 2-4, and attracted 730 exhibitors and 18,350 attendees, nearly four percent more than the prior year. Hardware, software, tools, and services were all represented, with displays enjoying special attention, due to co-location with the Electronic Displays 2010 conference.
The most widely reported-on display demo was Atmel's maXTouch technology, which took home a "Special Merit" award. Claimed suitable for stylus, finger, and even gloved finger input, maXTouch could improve touchscreens for cell phone and other handheld users, while also bring complex displays -- and complex OSes like Linux -- to new device categories.
Robots in Industry
Google's Linux-based Android technology appears to be increasingly evaluated for industrial and embedded applications. Any time there's a relatively complete stack like Android, efficiency-minded embedded developers are going to build on top of it. So, it wasn't surprising that several lectures from this year's EW show focused on Android in industrial applications:
- Wind River's Joachim Hampp discussed Android outside the mobile telephone arena
- Mentor Graphics engineers talked about enhancing Android's hardware support (see "Inflexion" note below)
- Another Mentor Graphics presentation discussed real-time Android
- Marcel Ziswiler of Noser Engineering discussed real-time Android, with the Xenomai Linux kernel patches
Another award winner from the show was Mentor Graphics' Inflexion GUI technology, which aims to help embedded engineers build attractive, user-friendly GUIs (graphical user interfaces) on top of Android. Inflexion leverages COLLADA, the Khronos Group's 3D modeling standard, with the aim of producing code able to exploit OpenGL-compliant graphics acceleration hardware in modern devices.
Hardware-accelerated 3D Android eyecandy, in vehicle-mounted human-machine interfaces? Warehouse barcode guns? Surveying equipment? HVAC controllers? Refrigerators and washing machines? Why not?!
Safety-Critical Linux? Wow!
Linux is even being evaluated for safety-critical systems these days. The "Herr Hofrat," also known as Professor Nicholas McGuire, offered a 90-minute hands-on course on safety-critical Linux this year. According to the description (Google cache), the talk focused on 61508 Ed2, and on quality testing with FTrace, GCOV, latency tracer, and built-in kernel tools (i.e., perf).
Not long ago, discussing Linux in safety-critical applications just did not happen. The mere existence of a course like this at a major tradeshow underscores how far the open source operating system has come in terms of quality, reliability and verifiability.
How "Real-Time" is Linux?
Linux is not yet considered a hard real-time OS. Though sufficiently deterministic for almost all "real-time" applications, it still cannot deliver real-time determinism, at least not all by itself. For that, embedded developers look to Linux add-ons, such as RT-Preempt, another technology that Professor McGuire delivered a lecture about.
Another option for would-be real-time Linux users, of course, is simply to combine Linux with an RTOS, on a multi-core system-on-chip. Lots of commercial RTOS vendors have solutions for that, and this year's EW lecture series featured a talk from Mentor Graphics on the topic. Run your time-critical code on the RTOS, and use Linux for everything else.
How Low Can Linux Go?
Despite several projects aimed at trimming Linux down to fit in the smallest environments, it still requires more system resources (CPU, memory, storage) than traditional RTOSes (real-time OSes). Most often, the limiting factor is the tiny amounts of storage and memory built into such "MCUs" and their lack of expandability through external memory and/or storage interfaces.
Open source options do exist for "deeply embedded" systems with truly limited resources. There's eCos, for example, the tiny RTOS originated by Cygnus, then maintained at Red Hat, and now owned free and clear by an open industry group.
Another approach is to add a Linux compatibility layer to a traditional RTOS. The first of these to really catch on was the Linux application binary interface (ABI) layer made available for LynuxWorks\'s LynxOS RTOS in the early Otts.
More recently, in June of last year, a company called Rowebots brought out "Unison" an intriguing RTOS claimed Linux- and POSIX-compatible. While not offering Linux' vast array of drivers, Unison could at least enable developers to build or port standard Linux apps, and then deploy them on deeply embedded systems, such as those based on ARM's Cortex-M3.
The M3 enjoyed lots of attention at this year's EW, mostly due to its use in a processor claimed to be the most energy-efficient, ever. The Energy Micro EFM32, which took best-of-show in the hardware category, is said to consume "only a quarter of the energy of other 8-, 16-, and 32-bit controllers, for the same computing power." If true, that could certainly attract some interest in remote sensing, home automation, and other embedded markets where power efficiency trumps all.
Other embedded Linux-specific courses were delivered at EW this year by representatives of ARM, Wind River, Xilinx, Datalight, Siemens, and Reliable Embedded Systems, to name a few. Company press releases and product sheets mentioning Linux were too numerous to detail here, numbering around 300, according to a quick search of the EW website's press area.
Embedded computing is not always glamorous. The big brands are hardly household names. Yet, 90 percent or more of the world's computing systems are in fact not PCs or servers, but instead are embedded devices. That, in turn, creates employment opportunities not lost on today's computer science students.
Thus, on the last day of EW, about 700 students were bussed in for "Student Day." With interest like that, device computing is likely to keep amazing us, and making our lives better, for many years to come. Along with an overview of exhibiting companies, the students attended a lecture on neural networks called "Building Brains with Embedded Technology," by Professor Matthias Sturm.
The Embedded World tradeshow first began in 2003. Since then, it has doubled in size. Next to the arrival of low-cost 32-bit system-on-chip processors, the emergence of Linux and open source software as viable embedded technologies has certainly contributed to the growth not only of this show, but of the device computing world overall. Today, whether they know it or not, virtually everyone is a Linux user.