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

Keywords: Match:
Opinion: Interpreting the GPL for Embedded Linux
Jim March (Apr. 10, 2001)

This guest editorial by Jim March is based on the statement that he read at the annual meeting of the Embedded Linux Consortium (ELC) in San Francisco, CA on April 9, 2001. In it, March expresses his concerns relative to using GPL software in embedded system applications, and urges the ELC to propose a revision to the GPL in order to mitigate those concerns. March writes . . .



Interpreting the GPL for Embedded Linux

Let it be known that I am speaking for myself, and not as a voice for 3Com Corporation. That's the lawyer-speak? Even though Linux is only 10 years old, I'll take the liberty of saying it's in its "adolescent" years -- it has developed somewhat faster than your average homegrown OS. But, like any teenager, it needs some guidance by some of the adults in its family -- even if it doesn't think so.

Who are those "adults"? Are they the dozens, to hundreds of talented, but unpaid programmers around the world? Or, are they the professional programmers who have lived and died by their skills across the years? I would feel safe in estimating that among the people in this room, we exceed 25 years of professional programming per attendee. Most of us would count ourselves among that collection of "adults".

As developers of product software, in particular, embedded software, we all face the necessity of choosing the environment for the next product's application. In the past, we wrote our application programs to link directly with the underlying hardware interface code, again of our own creation. This gave rise to an entire new industry, where some very smart professional programmers built proprietary Operating Systems, specifically for the embedded software environment, and sold licenses to the application developers.

This paradigm has worked for many years, and continues to work today for many applications. However, there are some growing concerns with this business model in today's market. First, when the license fees begin to exceed the cost of our development teams, our bean-counters start getting nervous. Second, when the proprietary Operating System comes without source, or with source at high expense, it frequently makes it difficult for the developers to debug esoteric code dependencies. Third, when discrepancies between OS code and application code are determined, the product developers are at the mercy of the OS supplier to track them down. Given that the supplier may be supporting dozens of customers, the elapsed time to resolve discrepancies may be measured in weeks -- instead of hours or days, when source code is available.

But I'm preaching to the choir. You know all of this. So now, we come to the "biggie". Intellectual Property. IP. We never like to divulge IP outside of our companies - even when protected by NDA's. That reluctance makes it very difficult to interface with OS suppliers when a discrepancy occurs between some of our IP, and their OS.

The answer, as we all know, has presented itself in the form of Linux. There are no license fees. Source code is available without any additional fees. When application/OS discrepancies appear, delays are solely determined by the skill of our own engineering staff. And we never have to share our IP with the OS developers? Or do we??

3Com, my employer, is currently investing large dollars per year just in basic support efforts for Linux, and Linux-based projects. This does not even include the expense in Linux-based product software. I am not real comfortable comparing 3Com to a goose, but the dollars constitute quite a golden egg. And, I'm sure we are not alone in this effort.

I, and my team, greatly respect the concepts and the value and the power of Open Source. I, personally, encourage both my support team and the product development teams we work with, to place the software they develop back into the Open Source community.

However, there are times when there is a clear competitive advantage to being able to withhold some IP from public scrutiny. If there is no reliable method of performing that censorship, then there is significantly less incentive to use that environment. And if the use of the environment is curtailed, then the need for capital investment (remember that Golden Egg?) and the talents of the professional programmers it buys, also disappears. The result? Lose-lose! The company loses access to a good platform, the Linux community loses access to professionally developed code that would otherwise be freely placed into Open Source.

Now, the GPL clearly states the conditions upon which additionally provided code must be declared GPL. I won't belabor the details with you. It also, sort of, declares the conditions upon which provided code may be declared non-GPL in a desktop environment; for instance, independently written, compiled, linked and saved loadable modules that are independent of the loaded kernel.

Most of us have extended that definition, in our own minds, to mean that if a module is designed to be dynamically loaded, post-boot, and satisfies the other independence criteria, then we have the option to declare it GPL or non-GPL. Therefore, if we have IP that we wish to protect, we can place it into such a module and declare the entire module non-GPL.

The problem, of course, is that in the embedded world the distinction of dynamically loaded code, as opposed to bootable code, becomes a bit fuzzy; particularly if there is no separate media from which to load the code in question. Why is it fuzzy? Because the GPL does not specifically address this problem. And, by not addressing the problem, it leaves the entire question, potentially, in the hands of litigating attorneys. And we all know what Shakespeare said about attorneys.

How do we fix this problem? How do we maintain the corporate motivation to continue investment in the development of this "teenager"? The simplest answer would be a revision to the GPL that specifically addresses the issue of embedded Linux, and clearly states how software may be maintained as non-GPL, providing a clear mechanism by which IP may be preserved.

Let's not kill the goose that's laying the golden eggs. Particularly since the eggs have only recently begun to appear. Let's encourage, and work with the Free Software Foundation to update the GPL in a manner that allows for IP protection when needed.



Author's bio: Jim March worked for the MIT Lincoln Laboratory in the late 1960's as a System's Programmer. While there, he began a 20+ year career in OS development for what became IBM's VM/370 Operating System. Positions ranged from a founding member of Interactive Data Corp. to president of March, Inc., a Silicon Valley consulting company. He has been the president of the San Francisco chapter of the Independent Computer Consultants Association (ICCA), and was the founding member of the Silicon Valley ICCA chapter. While consulting to 3Com Corporation, he accepted a position as a Sr. Software Engineer in their Network Systems Division in 1995. In 2000, March proposed to 3Com management the future consolidated use of Linux as the embedded OS of choice, and the creation of an internal Linux Support Center to assist the product teams in the best use of Linux. Today, March is the manager of the 3Com Linux Support Center, located in Grass Valley, CA. In this guest editorial, March speaks for himself, not 3Com.



Related stories: Talk back! Do you have a question or comment about this article? talkback here


(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

• Die-shrunk x86 SoC draws 2 Watts at 1GHz
• Webinars explore RTOS-to-Linux driver migration
• Open phone goes robotic
• MontaVista touts Android readiness
• USB Linux key targets netbooks
• Via panel PC resists shock, liquids
• Linux provider touts support award
• World's smallest humanoid robot can run Linux
• Linux connects TVs to 'Net video
• Mot camera-phone runs widgets
• Linux-ready MILS kernel gains POSIX
• Multimedia processor plays H.264 video
• $7 ARM9 SoC gains mainline support
• Mini-ITX board has HDMI port
• Papers sought for Embedded Linux Conference


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:
• "Moonlight" ready to shine
• Adobe unleashes 64-bit Flash
• Debian Lenny installer arrives
• Ubuntu announces ARM port
• Amazon offers Linux XOs
• Windows 7 "no threat" to netbook Linux
• Creative frees Sound Blaster driver code
• Linux, netbooks threaten Microsoft's fat profits
• Ibex inspires GNOME switch
• Linux to outship Windows in 2009?


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.