LJ Archive CD

Linux Distributions Agree on Standards

Scott McNeil

Issue #108, April 2003

Community-built software and community-built standards are two sides of the same coin. Standards help ensure that the freedom to invent, the essence of open source and of Linux, doesn't compromise the ability to write software that works together effectively.

Way back in 1997, a group of Linux software developers were pondering what could be done to circumvent the minor but troubling variations between the different Linux distributions. Not only that, but they were also contending with differences between versions of a single Linux distribution.

For the group's free software developers, the issue was finding the time to build new functionality and enhancements rather than spending hours verifying that their software worked on all the Linux distributions.

For the non-free software developers, the issue was the same, but they also had paying customers to placate and employees to take care of. Something had to be done.

Fortunately, almost everyone agreed, from upstream authors to Linux distributions to users. Soon thereafter the Linux Standard Base (LSB) Project was formed, with Alan Cox designing the web site, Bruce Perens taking the leadership role and Jon “maddog” Hall offering guidance. Things seemed fine, with Linus Torvalds behind the effort, but this group of pioneers didn't realize just how huge a project they had signed on to. Not only did they need to create a standard that would meet the needs of developers, distributions, businesses and users, but they had to make it really work, and they only had one chance to do it right.

Fast-forward to the year 2000. The LSB was at version 0.02 and was being approached by a group of developers wanting advice for creating a Linux internationalization standard. After a few discussions it was apparent that a new format was needed, something that would bring in more resources to both efforts while allowing them to remain independent and community-led. This was the genesis of the Free Standards Group.

The Free Standards Group is a California nonprofit corporation dedicated to accelerating the use and acceptance of open-source technologies through the development, application and promotion of standards.

Soon after its founding in late 2000, the Free Standards Group acted as a galvanizer for free and open-source developers and the IT industry alike. Activities around the development of the LSB and Openi18n, the Open Internationalization Initiative, really began to take off. By the close of 2001, both groups had completed version 1.0 of their standards and were confident they would meet with widespread adoption. This confidence was primarily because the targeted adopters were the same people and companies that built the standards. Developers like Ted Ts'o, Stuart Anderson and Dan Quinlan and companies like Red Hat, SuSE, HP and IBM all put their resources into this effort.

These were not efforts for simply documenting a specification; rather, they were creating a formal comprehensive behavioral description of the Linux system and a method for building on to it and proving it. For example, the LSB includes test suites for the operating system, applications and build environment. It also includes a build environment, sample implementation, application battery and full documentation. Here is a breakdown of the pieces:

  • Written specification: defines the behavior of an LSB-compliant operating system. It does not say which version of a kernel, library or other core element should be used, only the ways each piece will behave. This allows for developers to have to be concerned only with the APIs and APIs of the operating system.

  • Test suites: include tests for the operating system, applications and build environment.

  • Build environment: an isolated environment that developers chroot into to build compliant applications.

  • Sample implementation: an isolated environment that developers chroot into to test run compliant applications.

  • Application battery: a collection of open-source applications run to stress test compliant operating systems.

About six months after the release of the complete LSB, LSB Certification was launched. Certification gave vendors of both Linux distributions and Linux-based applications a method for verifying and displaying that their products adhered to the standard. Within six weeks of launching LSB Certification, Mandrake, Red Hat and SuSE had applied for and passed LSB Certification.

Today, every major Linux distribution vendor has applied for and achieved LSB Certification. The debate about fragmentation among the Linux distributions can now come to a close. Application developers can be assured that when they build to the LSB, their applications will run unmodified on any LSB-Certified system. Users will benefit from compatibility among the distributions and a larger body of applications.

Despite its great success in the adoption of its standards, the Free Standards Group and its LSB and Openi18n Workgroups are not sitting still. We are moving forward in extending our existing standards and taking on new tasks such as printing and desktop standards.

If you have any interest in the future of Linux you can join us. Membership is open to individuals, nonprofits (including educational institutions), companies and government agencies. To find out more, visit www.freestandards.org.

Scott McNeil is one of the founders and executive director of the Free Standards Group.

LJ Archive CD