The Transmeta-Embedded Connection
As I write this, Transmeta has been public for a week. It debuted to a 115% gain in what had been, to say the least, a downbeat market. We're a long way from the heady days of one year ago when we were hammocked in history between the spectacular IPOs of Red Hat and VA Linux.
Transmeta, who famously employs Linux creator Linus Torvalds, could claim to be the leading chip and board supplier to the embedded Linux market--or at least the x86-compatible supplier with the highest degree of association with Linux.
Of course, a primary virtue of Linux is its hermit crab nature: it'll fit in all kinds of spaces and not just on x86 systems. But x86 is Linux' most native instruction set, and that's what Transmeta's Crusoe chips run.
Crusoe's primary virtue is low-power consumption, which derives partly from the ``code morphing'' of x86 instructions into the VLIW (Very Long Instruction Word) code Crusoe's innards understand. It also derives from LongRun, the technology by which the CMS (code morphing software) monitors workload and dynamically adjusts both voltage and clock speed. (Long Run is superficially similar to Intel's SpeedStep but offers advantages when the system is disconnected from wall power and running in battery mode.) Linus' fingerprints are reportedly on the CMS code, along with Transmeta's own Mobile Linux software. Dave Taylor, of Transmeta's technical staff, says this about CMS:
Imagine that CMS is a weird new way of building a package from a tarball instead of an x86 emulator. Instead of having to type make to build the executable, it just starts interpreting the C to learn about its dynamic behavior and also to get started faster. After interpreting a piece of code for perhaps a few milliseconds, it has a much better idea how the code behaves and builds a more intelligent compilation that runs at native speed. Indeed, even after running this faster compiled version for a while, it may see even more performance opportunities and may recompile itself again.
By driving down power consumption and managing it dynamically, Transmeta invites the creation of a new mobile device class. And clearly, while the company was famously working in silence and secrecy, it was also working deeply with various OEMs on this new class of systems. Some of these are now manifesting in the world.
One is the Gateway Connected Touch Pad, which is the product of an alliance between Transmeta, AOL, Gateway and Broadcom. The stated intention is to proliferate a new class of home Internet appliances that feature a touch screen (as well as a keyboard) and instant-on access to AOL features. (Think of an AOL version of WebTV but with a small solid-state screen instead of a TV.) The device received a ``Best Consumer Product'' award from ZDNet and CNet judges at Fall Comdex 2000. Its OS is Mobile Linux.
Right after Transmeta's IPO, ViA announced plans for a ``wearable PC'' based on the Crusoe chip. Early versions were reportedly being tested by the US Army Military Police in Fort Polk, Louisiana.
Transmeta's Crusoe chips are also featured in Sony's new VAIO C1 PictureBook Notebook Computer, plus a pile of other systems:
Wireless Web slates from Acer, FIC, Hitachi and Sewoo
Ulta-portable notebooks from Casio, Fujitsu, Hitachi and NEC
Rebel's new Netwinder 3100 server appliance
So far the FIC, Gateway, Hitachi and Rebel machines run Mobile Linux (others run Windows), and we understand that the Acer may be running Mobile Linux as well. In any case, there's nothing to stop the Linux hermit crab from hacking its way into any of them. Dan Quinlan, a software engineer at Transmeta and Chairman of the Linux Standard Base (http://www.linuxbase.org/), says ``Linux should run on these just like it does on any other laptop or x86 system.''
At this point, the Transmeta family includes three chips: the TM3200, TM5400 and TM5600, each designed for a somewhat different class of device. The TM3200 comes with Mobile Linux, which Transmeta recommends for web slates and other handheld and tiny devices that don't use a hard drive. Mobile Linux is optimized for power management and reduction of memory footprint. LongRun technology is implemented on the TM5400 and TM5600.
Perhaps the most critical issue in the leanest systems is code size. Transmeta's Dave Taylor says, ``You may be interested to know that Linux, its most important libraries (C, math, threads, etc.) and a lean configuration of the busybox utilities all fit in 2MB of compact flash using Mobile Linux. Even if you add X and the X libraries, it still fits in about 6MB of flash. It's a really attractive package for incredibly tight OEMs who are literally counting pennies on their bill-of-materials.'' He adds,
You may also be interested to know that as CMS developers, we find Linux one of our more pleasant operating systems to test because it's very well behaved in x86-space. All the segments are big and friendly. There's no monkey business with self-modifying code. There's much less of that bloated code that finds itself in the i-cache, oh, say, once, and then never executes agthat but happens to be part of some critical benchmark.
As a final testament to Linux' innate utility, he adds, ``Although CMS bears literally no relationship to Linux, we also used Linux as a cross-compiling, remote debugging and simulation platform for CMS.''
Needless to say, the fact that Linus Torvalds works at Transmeta gives the company a key role in the development of Linux itself. ``Everything we do with Linux we give back to the community'', says Dan Quinlan. That includes some significant hacks by Linus himself, along with the rest of the Mobile Linux team at Transmeta.
What we found when we started was that there were a few critical technologies missing from Linux. That's why Linus and some of the other developers here at Transmeta came up with cramfs, a compressed file system for ROMs and flash memory that allows you to stuff as much data as possible into media used by systems that lack a hard drive. He also wrote ramfs, which is a dynamically resizable RAM file system that you can use in just about any system. It's ideal for storing temporary data and, don't have a hard drive to write it to and don't want to write it to ROM or flash. It differs from RAM disks by using only as much space as the data requires, and by re-using a bunch of stuff from the kernel. Both cramfs and ramfs are now part of the Linux kernel.
(For a closer look at Mobile Linux, visit the Transmeta web site.)
So the open question at this point is: who, besides the Usual Suspects (large PC OEMs, and Asian systems houses that have specialized in compact and mobile systems for years) is ready to create embedded systems that take advantage of Linux virtues (such as native operation on the Net) and run on just 1.5 volts?
Let us know. Write to email@example.com.
Doc Searls (firstname.lastname@example.org) is senior editor of Linux Journaland coauthor of The Cluetrain Manifesto. His opinions are his alone and do not express those of Linux Journal or SSC.