Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Polls  |  Forum

Keywords: Match:
A developer's review of Red Hat's Embedded Linux Developer Suite
Jerry Epplin (Nov. 27, 2001)

Foreword: This article is the third in LinuxDevices.com's series of reviews, by software developer Jerry Epplin, of Embedded Linux toolkits. In order to gain insight into the use of each toolkit from the developer's perspective, Epplin builds Embedded Linux OS images for three different x86-based EBX form-factor single-board computers using each toolkit. Each of the toolkits is then evaluated against a common set of criteria which include ease of use, overall toolkit architecture, methods of package management, diversity of platform support, and openness of the source code. In this installment, Epplin takes a close-up look at Red Hat's recently released Embedded Linux Developer Suite (ELDS).



Toolkit strategies

The challenge facing a vendor of an Embedded Linux toolkit can be seen as either simple or complex. The simple approach is to rely heavily on the standard tools and workflow already defined for Linux, perhaps adding a few tools to ease the process for embedded system developers. This is the approach taken by LynuxWorks with their BlueCat product, to be covered later in this article series. The simple model has appeal because it is fairly easy to implement and maintain over time with changes in Linux, but requires documentation of the highest quality so that new Linux users can start producing results quickly. The more complex approach is to redefine the Linux workflow completely, providing GUI tools of the vendor's making to replace standard open source tools. This track is harder to implement and maintain, but if implemented well it might be expected to appeal to those users coming from the world of proprietary RTOS products, who are accustomed to slick user interfaces.

The complex approach is risky because if the GUI layer is implemented incompletely it forces the user to learn both the GUI layer and the underlying Linux layer in order to implement everything needed, making the learning curve longer than if the user only needed to learn the Linux layer. Thus a well implemented simple tool (or, in fact, even a poorly implemented one) is preferable to a poorly implemented complex GUI-based tool. So I find it surprising that so many vendors choose the complex route, given its risks. So far in this series I have covered Lineo's Embedix and MontaVista's Hard Hat Linux, both of which follow the complex path, with varying success. Red Hat's Embedded Linux Developer Suite (ELDS) also follows this tradition.

First impressions

As the best-known Linux company and, following its purchase of Cygnus, a long history of producing and using GNU tools in embedded applications, it is reasonable to expect Red Hat to provide an Embedded Linux toolkit befitting its industry leadership.

Like most other Embedded Linux toolkits, ELDS provides support for the x86, ARM/StrongARM/XScale, MIPS, PowerPC, and SuperH architectures. It requires 1.2 GB of hard disk space on the development host, installing itself at /opt/redhat -- giving you no opportunity to install elsewhere. It is very specific in its host distribution requirements; you must use Red Hat Linux, either 7.1 or 7.2, running only under x86. ELDS also requires specific versions of Perl and Python, installing them for you if needed.

The primary market for an Embedded Linux toolkit is new users, since more experienced users can assemble and use the freely available tools without commercial help. So it is especially important that the documentation for such a toolkit be of the highest quality. But the documentation for ELDS is curiously rough, in contrast to Red Hat's usual high quality. I found it to be poorly organized, wordy, repetitive, and clumsily phrased. It is also sometimes unintentionally amusing, as when the author tells us, "The software provides . . . many unsupported tools", adding parenthetically, "(even though these tools may successfully work)"; as if Red Hat would include tools without some evidence they do something useful. The documentation is full of such poorly worded and often unnecessary statements, producing an overall distracting effect. After a few pages of this one wants to just fire up the software even without first having an adequate understanding of how it works.

Installation is fairly easy; you simply run the Install.sh script on the CD as root. The process mostly installs lots of RPMs onto your system. One of my pet peaves is software packages that provide no uninstallation procedure. ELDS falls into this category; the only advice it provides is to run "rpm -e" on whichever package you wish to remove (ELDS consists of some 55 packages). Uninstallation of all of ELDS could then presumably be done with something like "rpm -qa | grep elds | xargs rpm -e ; rm -rf /opt/redhat", though Red Hat provides no help for this.

User interface approach

The user interface to ELDS is implemented primarily as a set of Python/Tkinter programs, often poorly integrated. To create a new project you run the GUI-based 'elds' program, which simply prompts for a project name and architecture, creates the project in the directory from which 'elds' was run, and exits. It is not clear how this is an improvement over a command-line interface, perhaps of the form "elds-create projname x86", especially when an error occurs.

I first ran it without write privileges in the current directory. No error message popped up in the GUI; instead a cryptic "Permission denied" message was sent to the shell from which I ran 'elds', complete with the Python function stack trace. If you aren't paying attention to the shell, or perhaps if you did not run 'elds' from a shell, you would be left staring at the GUI, unaware that something went wrong, and wondering how long it will take to complete. Once I got my permissions right, everything progressed correctly, taking about a minute to complete as it copied the kernel and root file system to the project directory -- again, sending progress reports only to the shell.

Once this process is completed, 'elds' does helpfully pop up a window indicating success -- and instructing the user to run a series of command-line programs to continue. Unless you've got a better short-term memory than I you'll have to keep this popup window available as you type in the commands, one of which contains both a dash and an underscore. Or you can consult the manual, which contains an extended justification for the requirement that portions of this process be run as root, and descriptions of the C wrappers and shell scripts involved -- the reader is overwhelmed with the unnecessary information overload.

In general, I found the experience of this chaotic hybrid GUI/command line user interface somewhat bemusing. I suspect a new Linux user, struggling to become accustomed to the environment, would not find the experience enjoyable.

--- Continued ---



Story navigation . . .

(Click here for further information)


FUEL Database on MontaVista Linux
Whether building a mobile handset, a car navigation system, a package tracking device, or a home entertainment console, developers need capable software systems, including an operating system, development tools, and supporting libraries, to gain maximum benefit from their hardware platform and to meet aggressive time-to-market goals.

Breaking New Ground: The Evolution of Linux Clustering
With a platform comprising a complete Linux distribution, enhanced for clustering, and tailored for HPC, Penguin Computing¿s Scyld Software provides the building blocks for organizations from enterprises to workgroups to deploy, manage, and maintain Linux clusters, regardless of their size.

Data Monitoring with NightStar LX
Unlike ordinary debuggers, NightStar LX doesn¿t leave you stranded in the dark. It¿s more than just a debugger, it¿s a whole suite of integrated diagnostic tools designed for time-critical Linux applications to reduce test time, increase productivity and lower costs. You can debug, monitor, analyze and tune with minimal intrusion, so you see real execution behavior. And that¿s positively illuminating.

Virtualizing Service Provider Networks with Vyatta
This paper highlights Vyatta's unique ability to virtualize networking functions using Vyatta's secure routing software in service provider environments.

High Availability Messaging Solution Using AXIGEN, Heartbeat and DRBD
This white paper discusses a high-availability messaging solution relying on the AXIGEN Mail Server, Heartbeat and DRBD. Solution architecture and implementation, as well as benefits of using AXIGEN for this setup are all presented in detail.

Understanding the Financial Benefits of Open Source
Will open source pay off? Open source is becoming standard within enterprises, often because of cost savings. Find out how much of a financial impact it can have on your organization. Get this methodology and calculator now, compliments of JBoss.

Embedded Hardware and OS Technology Empower PC-Based Platforms
The modern embedded computer is the jack of all trades appearing in many forms.

Data Management for Real-Time Distributed Systems
This paper provides an overview of the network-centric computing model, data distribution services, and distributed data management. It then describes how the SkyBoard integration and synchronization service, coupled with an implementation of the OMG¿s Data Distribution Service (DDS) standard, can be used to create an efficient data distribution, storage, and retrieval system.

7 Advantages of D2D Backup
For decades, tape has been the backup medium of choice. But, now, disk-to-disk (D2D) backup is gaining in favor. Learn why you should make the move in this whitepaper.

 


Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
Click here for a profile of each sponsor:
PLATINUM SPONSORS
(Become a sponsor)

ADVERTISEMENT
(Advertise here)

Check out the latest Linux powered...

Mobile phones!

MIDs, UMPCs
& tablets

Mobile devices

Other cool
gadgets



BREAKING NEWS

• LiMo to gain FOMA pack
• Quad-core PICMG board runs Linux
• DIY Linux service gains ultralight GUI
• Asus nettop gets discrete graphics
• Mapping the mobile open source ecosystem
• WiMAX deal "clears" Linux for takeoff
• HMI panels run Linux
• Nokia alludes to Linux phone plans
• Linux music phone boasts stereo mini-jack
• Nokia spins open Linux home automation gateway
• Qseven module sports Atom
• Open source phone gains "fat" distro
• Android phone launches in China
• Microsoft to bake own phone?
• Tux cashes in on paint


Most popular stories -- past 90 days:
• Open source phone goes mass-market
• Tinest Linux system, yet?
• Garmin Nav devices run Gnome Linux
• ARM9 board boots Debian in 0.69 seconds
• Low-cost laptop runs Linpus Linux
• Linux-friendly Beagle fetches $150
• Mini Linux PC breaks $100 barrier
• Open source camera records geotagged video to SATA HDD
• Open set-top box ships
• First $100 laptop runs Linux


DesktopLinux headlines:
• Linux gains FPS
• Ubuntu tops on desktop, but not servers
• Browser swallows OS
• Tutorial reveals desktop Linux security tips
• Fedora 10 first impressions
• 8,000 TuxTop models and counting
• "Moonlight" ready to shine
• Adobe unleashes 64-bit Flash
• Debian Lenny installer arrives
• Ubuntu announces ARM port


Also visit our sister site:


Sign up for LinuxDevices.com's...

news feed

Home  |  News  |  Articles  |  Polls  |  Forum  |  About  |  Contact
 

Ziff Davis Enterprise Home | Contact Us | Advertise | Link to Us | Reprints | Magazine Subscriptions | Newsletters
Tech RSS Feeds | White Papers | ROI Calculators | Tech Podcasts | Tech Video | VARs | Channel News

Baseline | Careers | Channel Insider | CIO Insight | DesktopLinux | DeviceForge | DevSource | eSeminars |
eWEEK | Enterprise Network Security | LinuxDevices | Linux Watch | Microsoft Watch | Mid-market | Networking | PDF Zone |
Publish | Security IT Hub | Strategic Partner | Web Buyer's Guide | Windows for Devices

Developer Shed | Dev Shed | ASP Free | Dev Articles | Dev Hardware | SEO Chat | Tutorialized | Scripts |
Code Walkers | Web Hosters | Dev Mechanic | Dev Archives | igrep

Use of this site is governed by our Terms of Service and Privacy Policy. Except where otherwise specified, the contents of this site are copyright © 1999-2008 Ziff Davis Enterprise Holdings Inc. All Rights Reserved. Reproduction in whole or in part in any form or medium without express written permission of Ziff Davis Enterprise is prohibited. Linux is a registered trademark of Linus Torvalds. All other marks are the property of their respective owners.