Solid-State Disks: Pushing the Envelope in Blade Server Design

CGL Registration: Demonstrating CGL Compliance

The CGL specification differs from traditional specifications in that it defines a set of mandatory capabilities but does not restrict their implementation. In contrast to traditional API-based specifications that rigidly define programming interfaces, capability specifications such as CGL provide the flexibility necessary in the Open Source community to select the best technical solutions from multiple projects that share similar goals. Demonstrating compliance with a specification that defines high-level capabilities is a non-trivial task because no simple API test can be developed. Demonstrating compliance with an open, dynamic specification requires flexibility, as opposed to the pass/fail conformance tests that are associated with API-based standards.

The key to demonstrating compliance with a capability specification is to identify the kernel patches, system applications, and user-space utilities that have been integrated into a distribution in order for it to fulfill the requirements of the specification. While the OSDL has choreographed the development and evolution of the CGL specification, it is not their responsibility to hand out "CGL Compliant" stickers that can be pasted on the boxes of Linux distributions that claim CGL conformance. For this reason, the OSDL and other participants creating the CGL specification came up with the idea of "CGL Registration," which offloads the responsibility of proof of CGL compliance to the vendor in a public fashion that can easily be examined by any potential customer who is interested in a CGL-compliant Linux distribution.

TimeSys has worked closely with the OSDL to create a mechanism for openly demonstrating compliance with the CGL specification. Prior to version 2.0 of the CGL specification, CGL distributions simply declared compliance. It was up to the consumer to determine the degree and extent of compliance, and the technical merits of capability implementations.

With the CGL 2.0 specification, the OSDL introduced the notion of registered CGL distributions that can be instantly verified by viewing an online XML registration document. This XML document is formatted according to the rules defined by an open XML document type definition that is available to all potential CGL distributions, and which provides specific ground rules for documenting compliance to mandatory components of a CGL specification. Documentation on CGL registration requirements is available at www.osdl.org/docs/cgl_registration_requirements.pdf. As an example of a document that conforms to this format and demonstrates compliance with the CGL specification, TimeSys' CGL registration document is available at www.timesys.com/cgldocument/cgl_results.html.

CGL registration documents require various types of information, such as the source of the patches and additional applications required to demonstrate CGL compliance at both the kernel and filesystem level. As documents that show conformance to an open specification, CGL registration documents also provide a document element designed to explain where a vendor's CGL implementation may not be completely conformant to the specification. Initially, explaining non-compliance in a compliant document seems counter-intuitive, but the reality is that some requirements are flexible or large enough that they cannot be easily defined in a single document.

A good example of this is conformance to the Linux Standard Base specification, which defines mandatory applications that must be present in the filesystem of a compliant Linux distribution, defines their location, and provides runtime compatibility for compliant applications. While defined as a single CGL requirement, demonstrating compliance with this item could require thousands of lines of information that is essentially meaningless to readers. As such, items such as this are demonstrated by providing links to relevant, external documents and the date on which those compliance documents were submitted.

By defining a specific document format that contains pointers to the source code used to add required features and by making these documents publicly available, registering a Linux distribution that is compliant with the CGL specification is conformant with both the spirit and letter of an Open Source specification. Any vendor that wishes to register their distribution as CGL-compliant makes their additions and implementation highly visible and freely available. Though this may be anathema to proprietary operating systems and closely-held, customized Linux distributions, this is exactly "the right thing" for a truly open, cooperative specification.

Previous Page | Next Page
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8

If you found this page useful, bookmark and share it on:

 
Embedded Star Newsletter
Don't have time to visit Embedded Star everyday? Then sign up for our free newsletter. We'll send you an email when we have something to share with you. Your email address will be kept confidential and we will not share, sell, or rent it to anyone. You can unsubscribe at any time by clicking a link in the email.

Enter your email address to sign up for our free newsletter:   

If you are familiar with RSS feeds, you can also sign up for our free blog feed. Our RSS feed is updated in real-time while our newsletter is updated daily.