Linux Distributions Agree on Standards
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.
Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report
August 27, 2015
12:00 PM CDT
DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.
Free to Linux Journal readers.Register Now!
- Three More Lessons
- Django Models and Migrations
- August 2015 Issue of Linux Journal: Programming
- Hacking a Safe with Bash
- Secure Server Deployments in Hostile Territory, Part II
- The Controversy Behind Canonical's Intellectual Property Policy
- Shashlik - a Tasty New Android Simulator
- Huge Package Overhaul for Debian and Ubuntu
- Embed Linux in Monitoring and Control Systems
- KDE Reveals Plasma Mobile