Skip Links

Network World

  • Social Web 
  • Email 
  • Close

(Comma separation for multiple addresses)
Your Message:

Encouraging closed source modules part 3: elimating the "API update tax"

Unstable driver APIs, thought to be one of Linux's strengths, impose costs on both proprietary and GPL developers.
By Doug Hass,
December 05, 2006 03:11 PM ET
  • Share/Email
  • Tweet This
  • Comment
  • Print

Richard Stallman, the Free Software Foundation, and other GPL supporters have a logical and reasonable attraction to copyright law. Copyright is simple: even a moment of poetic inspiration jotted down on the back of a cocktail napkin automatically gains copyright protection. Developers do not have to file paperwork or go through an expensive, time-consuming process to protect their work. The innovative, if legally questionable, construct of the GPL enables the Linux community to return, at least partially, to the collaborative environment Stallman enjoyed in his early MIT days.

At the same time, though, copyright offers the weakest of protections: it covers only narrowly defined expressions. Both independent authorship (the “clean room”) and compatibility provide future developers with defenses to infringement of the original work. Unless a copyright holder can prove plagiarism of copyrightable elements of source code, the Copyright Act will offer only narrow protection. In practice, the plagiarism protections in copyright law have their own special problems when applied to software, too. While there is no chance that an author would accidentally create a near-verbatim version of this story, the structure of programming languages dictates a different result in the software realm. A group of 10 developers working independently to create a Linux kernel module that prints the text message “Hello, world” when loaded would undoubtedly create 10 nearly identical modules.

In the proprietary software world, copyright strikes a perfect balance between protection and innovation. Under Altai and the cases that followed, copyright holders get protection from those who effortlessly plagiarize their code. At the same time, developers retain a strong incentive to author new works and compete, because the cases provide broad protection for both independent invention and compatibility.

The GPL strikes that same perfect balance. The Debian project’s use of “free” (fully GPL-licensed) and “contrib” and “non-free” (non-GPL licensed) archives provides an excellent example of the ability of closed and GPL code to coexist to the benefit of Linux users and developers worldwide.

The current exception for kernel modules is legally dangerous, though, too. Linux and the GPL face the same problem today that Stallman faced in the late 1970s, though with far more players — individual developer and commercial — than before. Just as before, a single developer could easily upset the delicate balance between the GPL’s ideals on one hand and legal realities on the other. The Emacs balancing act unraveled over this same debate.

In an interview with Linux Weekly News, Professor Eben Moglen illustrated the problem clearly: “If the kernel is pure GPL, then I think we would all agree that non-GPL, non-free loadable kernel modules represent GPL violations. Nonetheless, we all know that there are a large number of such modules and their existence is tolerated or even to some degree encouraged by the kernel maintainers, and I take that to mean that as an indication that there is some exception for those modules.”

  • Share/Email
  • Tweet This
  • Comment
  • Print
Our Commenting Policies
Latest News
rssRss Feed
View more Latest News