Sun Outlines Open-Source Plans
A new software license gives OpenSolaris a good foundation—even if Sun hasn’t worked out all the legalities of porting CDDL code to Linux
Sun Microsystems Inc. last week announced its DTrace performance analysis software, the first component of OpenSolaris, a still-gestating open-source version of its flagship operating environment.
More important, the Unix giant also disclosed how it plans to license OpenSolaris to customers—that is, by means of the Community Development and Distribution License (CDDL), which Sun derived from the highly successful Mozilla Public License (MPL).
Some analysts are encouraged by Sun’s plans, noting that OpenSolaris is starting to take shape—even if the Unix giant hasn’t yet worked out the legalities of porting CDDL code to Linux.
Solaris administrators and open-source advocates have long been buzzing about DTrace, a Solaris 10 feature that adds dynamic instrumentation and tracing to the kernel. Sun positions DTrace as a solution for Solaris gurus and neophytes alike: It’s a dynamic testing tool that can help programmers and production support engineers diagnose and resolve problems (during development or production stages) more quickly than with conventional solutions.
Gordon Haff, a senior analyst with consultancy Illuminata, says there’s a lot to like in DTrace, which he notes is “one of the more noteworthy and buzzworthy features of the new Solaris 10.” At the same time, he says, the CDDL and OpenSolaris announcements effectively overshadow DTrace’s debut: “[I]t's still just a part of Solaris, and a long way from a complete operating system and the development tools and such needed to build it into a working platform.”
The CDDL announcement wasn’t entirely unexpected, of course. In fact, Haff notes, Sun originally submitted CDDL to the Open Source Initiative in December, prompting speculation that OpenSolaris would eventually be based on the same licensing scheme. As far as the MPL basis of CDDL is concerned, Haff notes that Sun has made several interesting modifications to that license.
“Sun has made a variety of changes to the MPL language and definitions that it felt were unclear or open to (mis-)interpretation,” he writes, observing that the CDDL “more crisply defines ‘Modifications’ to the licensed software, strengthens its so-called ‘patent peace’ provisions, and makes the patent provisions clearly specific to CDDL-licensed code.”
None of this is surprising, Haff says. In fact, the CDDL—like the MPL and Apache licenses—are designed to encourage the development of commercial products that combine open-source and closed-source (or proprietary) code. In this respect, he stresses, the CDDL is very different from the ubiquitous GNU General Public License. “As with other open-source licenses like the General Public License (GPL), when a developer makes changes to CDDL-licensed source code and distributes a program based on that code, he must make the source code changes available. However, here the similarity to the GPL ends,” he says, noting that GPL code must only be licensed under the GPL.
By contrast, Haff explains, “CDDL only needs be used for the specific files that started out being licensed under CDDL.” The upshot, of course, is that closed-source code doesn’t become open source simply because it’s used in combination with CDDL code to create and assemble a software program.
One result of this, however, is that developers may be prevented from porting Solaris features to Linux—which might turn many developers off to OpenSolaris itself. “Sun has made it clear that it doesn't have any issue with Solaris code being used in Linux, and that any purported GPL-incompatibilities are for the FSF (Free Software Foundation), Linus Torvalds, Red Hat, et al to wrestle with,” Haff concludes. “Of course, it would like developers to see and use Solaris as the better development platform, whatever the legalities of bringing Solaris code over to Linux.”