X
Tech

An interview with Midori Linux project leader Dan Quinlan

In the hopes of gaining some insight into Transmeta's motivations and plans regarding its new Midori Linux distribution, Rick Lehrbaum spoke with the leader the Midori Project, Transmeta employee Dan Quinlan.
Written by Rick Lehrbaum, Contributor
Transmeta, the company which claims Linus Torvalds (creator of Linux) as an employee, has finally unveiled their long awaited Linux distribution -- Midori Linux.
Contrary to many expectations, Midori Linux is not targeted at the notebook computer market where most of Transmeta's CPU chips appear to be finding homes -- rather, Midori seems to be destined for small devices, particularly Web pads and so-called Internet appliances.
Given the fact that Transmeta is a CPU manufacturer, why did they decide to develop their own Linux distribution for small devices, instead of partnering with one or more of the growing band of Embedded Linux distributions? After all, these companies are well positioned to provide the required technical support, services, and tools, and already support a broad spectrum of processors -- from x86 to microcontrollers.
In the hopes of gaining some insight into Transmeta's motivations and plans regarding its new Midori Linux distribution, Rick Lehrbaum spoke with the leader the Midori Project, Transmeta employee Dan Quinlan. Here's what he learned . . .

RL: Why did Transmeta decide to create a new Linux distribution, when there are already so many available?
Quinlan: Although to date Crusoe sales have mostly been in the notebook computer space, Midori is not meant for notebook computers. We expect standard Linux distributions to be used in notebooks, with perhaps a few minor additions to better support Crusoe's power management features such as "LongRun". Instead, the focus of Midori is on small devices like Web pads, rather than notebook computers, where system resources such as RAM and Flash memory tend to be very limited, where you don't have hundreds of megs of RAM or disk space.
Transmeta created a Web pad reference design, based on the Crusoe processor, which serves as a development system for product designs. For example, the Gateway Connected Touch Pad is based on our Web pad reference design and many other products based on it are in various stages of development. Midori Linux is currently targeted primarily to this platform, in order to provide Transmeta's customers with a ready-to-use Linux environment. It's also meant to serve as a platform for developing new technologies to support these kinds of devices.
RL: Could I use Midori Linux on my desktop PC? Would I want to?
Quinlan: Midori is not really meant for large system with the resources of a desktop PC. We wanted a platform that would have the attributes needed by small devices. Midori is meant for "Internet Appliances," which are systems that have a display, an Internet connection, and no hard drive. In these devices, small RAM and disk footprint and low power consumption are big issues.
On the other hand, we're not targeting the PDA market with Midori Linux. We're interested in systems that run standard Linux apps, not ones that are limited to the "PIM suites" of PDAs. Basically, Midori is good for lower power and smaller memory footprint systems, but ones that have adequate resources to run standard applications. Also, Midori is well put together, very configurable using an easy-to-use browser interface, and it's based on a standard Linux kernel with just a few patches.
RL: But why did you develop your own Linux distribution for small devices, when there are already several Embedded Linux offerings on the market?
Quinlan: Actually, we originally started with Debian, and tried to go the customization route. But we quickly realized it would require a lot of revision, so we decided instead to put together our own system, from the kernel up. Remember, this was back in late 1999, when there wasn't really much off-the-shelf Embedded Linux available.
Another incentive for us to do Midori is that it is easiest to develop new technologies on a platform that we control. Examples are cramfs (a compressed read-only file system) and ramfs (a dynamically sized ram disk), which are very useful in these kinds of small devices.
RL: Basically, what is included in Midori?
Quinlan: The base Midori system consists of . . .
  • The Linux kernel (2.4.0) with some simple patches
  • busybox
  • most of glibc
    • we include all of libc
    • we don't strip functions out of the libraries
    • we will leave out entire libraries (like pthreads, for example) when they are not needed

  • the Midori build system
  • packcramfs, a utility for managing multiple cramfs images
  • XFree86 4.0
  • cramfs provides 2:1 compression

A stripped-down system with X, but no large applications, fits within 8MB of Flash storage memory, compressed, and occupies 16MB of RAM once it's unpacked
RL: What is Midori's strategy relative to GUI/windowing systems?
Quinlan: Again, our philosophy is to be able to run standard apps, but in a reduced resource environment. Therefore, we've taken XFree86 4.0, which is already well modularized, and installed only those portions that are needed.
RL: What about the window manager and GUI?
Quinlan: Here our main concern is size. Not all applications need or even want a window manager. For example, some devices will only have a few tabs across the top of the screen and won't use multiple windows.
RL: What about a browser?
Quinlan: We're looking at browsers like Galeon, which is a GNOME-based light weight browser that uses the gecko engine.
RL: Are there currently a lot of contributors to Midori from outside of Transmeta?
Quinlan: Not yet, but our hope is definitely that this will happen. Many developers have already signed up for the Midori mailing list since our recent public launch of the Midori Project.
RL: You mentioned power management as a key feature of Midori Linux. Could you please elaborate on that?
Quinlan: Beyond the support for Crusoe's LongRun feature, we're also contributing to the development of Linux ACPI support which is replacing the older APM (Advanced Power Management) support.
Linux already has support for APM, but that support depends on code that must be contained within the system's BIOS, for things like suspend-to-ram, suspend-to-disk, and system power states. Now that ACPI is in common use in the PC realm, APM support is disappearing from the typical x86 BIOS of new systems. So ACPI support directly within the Linux kernel is needed. In particular, Transmeta is working on the suspend-to-RAM piece.
There is an ongoing Linux ACPI project, which to date has been mainly an effort of Intel. Transmeta is now contributing to this project. Suspend-to-ram, which is really important to reducing power consumption in small systems, is fairly far along -- although it's not fully implemented yet. Besides saving power in battery-operated devices, this function will also be valuable in dense, multi-processor servers.
RL: What's the current status of Midori? Is it ready for developers to use it to make real products?
Quinlan: Yes! Version "1.0.0 beta 1" is available right now for download. We call it beta because, although we've tested it quite a bit, it hasn't had a lot of use outside of Transmeta. As I said, it's based on Linux kernel 2.4.0
RL: What do you think the effect will be on having a unique embedded Linux distribution being offered by the company where Linus works? Does this give Transmeta an "unfair advantage" relative to other companies in the Linux market?
Quinlan: Our intention is to have our changes included in the kernel, so they will just become standard Linux. As far as any inside track on getting our desired changes into the kernel, Linus is very particular about what goes into the kernel, no matter who you are. Of course it's nice being just down the hall from him, when it comes to discussing your proposals ;)


About Dan Quinlan: Quinlan began using Linux in 1993 in college, where he wrote the first draft of the Filesystem Hierarchy Standard, which he still maintains along with the Linux Development Platform Specification. He was chairman of the Linux Standard Base (LSB) from August 1998 to February 2001, and last year founded the Free Standards Group, a non-profit open source standards consortium. He has been working at Transmeta for 4.5 years, mostly on Linux-related projects. For fun outside of the world of computers, he enjoys rock climbing and running.


Related stories: Talk back! Do you have questions or comments on this article? talkback here
Editorial standards