...making Linux just a little more fun!

<-- 2c Tips | TAG Index | 1 | 2 | 3 | 4 | 5 | 6 | Knowledge Base

The Answer Gang

By Jim Dennis, Jason Creighton, Chris G, Karl-Heinz, and... (meet the Gang) ... the Editors of Linux Gazette... and You!

(?) Open Solaris

From Jimmy O'Regan

Answered By: Ben Okopnik, Rick Moen, ILUG member Niall Walsh, Thomas Adam, Raj Shekhar, Heather Stern

Not Linux, but important because we'll probably be using some of this software in a few weeks/months time: the source code of Open Solaris has been released (http://www.opensolaris.org/os).

(!) [Thomas] Woooo.

(?) Sun aren't finished releasing code,

That was June 15, keep an eye on their site as things fill in though. -- Heather

(?) but this release has most of the kernel and userland tools. (No Thomas, nothing CDE related,

(!) [Thomas] Awwww. :(

(?) but X stuff isn't scheduled for release for another few months yet--the X community is here http://www.opensolaris.org/os/community/x_win)

(!) [Ben] I'm teaching a Sun class right now, and the response from my students was uniformly sceptical: "They're just trying to stay in the game." I'm just going to note that Apple has been playing exactly the same game - kinda-sorta release some-but-not-all of the source, maybe - and it hasn't done very much for them.

(?) Heh. Their FAQ has a nod to Apple:


Do I need to register the OpenSolaris source code I have downloaded from the site?

No. There is no registration. There is no click-to-accept license. Enjoy!


Sun look to be more sincere about what they're doing than Apple--they're using a licence that's already accepted (the CDDL is just the MPL rebranded),

(!) [Rick] And improved, in my view. You may already have seen my related post to the Irish Linux User Group mailing list,

(?) Alas, no. Too many bounces in my last great disconnect, and my current connection isn't reliable enough to justify resubscribing.

(!) [Rick] but here it is:
Quoting Niall Walsh (linux (at) esatclear.ie):
(?) From there how long from there until we have a Debian GNU/OpenSolaris? Or is CDDL even DFSG Free (the patenting clauses anyway makes me wonder)?
(!) CDDL does strike me as being every bit as DFSG as its MPL predecessor.[1]

(?) From what I remember of the debian-legal discussion, the gist of it was "the licence may or may not be free, depending on how the licensor chooses to act".

(!) [Rick] Ah, debian-legal. {sigh} A fellow on ILUG raised that, too, and my response on that is further below...
(!) [Rick] However, of course, the OpenSolaris codebase apparently (as everyone suspected) includes quite a lot of binary-only, proprietary "secret sauce" components.[2] How useful the CDDL (and other open source / free-software) portions would be without them is an open question. My own expectation would be "Not very; probably even substantially less than the corresponding case with Apple Darwin."

(?) The only thing I remember seeing mentioned specifically is drivers, which is understandable--too many NDAs. IIRC, Sun has a compiler that recompiles Linux drivers for Solaris--device support isn't one of great plusses of Solaris that Sun have been cheerleading in any of the blog entries I've seen (DTrace this, DTrace that :)

(!) [Rick]
(?) Of course whether it's worth it or not is another matter. I guess both will be projects like rebuilding a Freely redistributable Suse/Novell Professional image, a test of just how many people care.
(!) I think the latter would be a great deal easier -- and more useful.

(?) There's a live cd already: http://schillix.berlios.de

One of the big things in Open Solaris is that services can start in parallel at boot time. Finito (http://web.isteve.bofh.cz/finito) does something similar for Linux.

Erm... scratch that, InitNG (http://initng.thinktux.net/index.php/Main_Page) looks much better.

Heh. I think there will be a lot of public contributions to the code, if only to clean it up. I never really understood why so much research goes into code comprehension (well, aside from the fact that C lecturers write some of the worst C around): open source projects need to have code that's as clear as possible, otherwise noone can contribute. Heck, even Wine, which (of necessity) has some of the most cryptic code I've ever seen (self-modifying blobs of x86 binary code, C emulations of C++ exceptions and classes, etc), is a model of clarity, as far as it can be.

Not so Open Solaris. Their tar implementation is one 182k .c file; their nroff implementation uses the original Unix naming convention for files (n1.c etc). I'm sure they'll get plenty of clean-up patches from people cringing on Sun's behalf :)

(!) [Rick] [1] Sun Microsystems solicited my feedback on the licence before its publc release. Unfortunately, I did not have sufficient time in to help them during the very short comment period available -- but my impression of the licence is overwhelmingly favourable.
[2] Alluded to, briefly, here:

(?) instead of writing their own just barely open source by just enough people's definition, but oh-so obnoxious licence for the purpose (I suppose they've already done that enough times), and have put all the released code in CVS from the start.

(!) [Raj] Tim Bray, who is a Sun employee and a reputed blogger, has nice set of links about the release http://tbray.org/ongoing/When/200x/2005/06/14/OpenSolaris-Blogs
(!) [Ben] I didn't have much time to really look into this yesterday (but I did get some really good coding done, and had the very satisfying experience of solving a thorny problem that's been bugging me for a couple of years!); today is a new day, and I'm wasting^Wspending my morning checking out the buzz on this. Fascinating - it looks and smells real. In fact, reading Tim Bray's blog and the link tree that branches out from it - thanks, Raj! - I'm slowly growing convinced that Sun has finally clued in, bought the stock, drank the Koolaid. All I can say, in stunned admiration, is "Bravo" - I had not expected it, and was actually rather cynical about it, having built my expectations based on what I saw from my little corner of the Sun culture. It seems I was wrong.
The interesting bit about this is that the Solaris kernel has been a strictly "hands-off" affair since time immemorial; you could tweak some user-space settings to influence its operation in some mild ways, but that was about all (and learning to do even that required a three-day class and using ADB [shudder].) As well, some of the operational algorithms - e.g., the exact process of deciding how to accept/reject TCP connections - were generally hinted at but the details were intentionally shrouded in mystery (security through obscurity, even though Sun showed itself to be totally aware, in other places, that this is not a useful approach.)
There's also the fact - and I'm not snarking at Sun in the least, but applauding their moving with the times - that Solaris installations are growing far fewer percentage-wise; this latest change may just be a simple recognition of fact and adaptation to it. I've spoken to many people in the large corporate culture, in many places and many different companies, and have heard the story/complaint/simple fact repeated many times: "so this new guy comes into IT, and before anybody knows it, he's got 30 Linux boxes up in one day..." Cost of software: zero. Cost of machines: hauled out of a closet where it was stored due to being old and unusable. That's a hard combination for a commercial machine+OS to beat, stony hard - and companies that _aren't_ having to spend a million bucks a year on buying new are starting to notice. Many of them - including banks, the traditional stronghold of conservatism - are quietly dropping their "no non-commercial OSes" policy.
(!) [Heather] I've done my share of dragging old Sparc hardware out of the closet too. It runs a mite warm - and seemed happier on Debian/sparc than I'd hope to put a modern Solaris on it - on the other hand, that SparcStation 10 was actually a hot commodity in a netlounge serving a few dozen people at a time.
(!) [Ben] Sun is an excellent hardware company; the cost of their gadgets is quite high as compared to the commodity PC, but the quality and the reliability that you get from the stuff can be absolutely stunning to someone who's never experienced them. I've never had Sun stuff "fight" me the way, e.g., a PC SCSI card has; the documentations was always available, and the relevant setup was as obvious as it could be made and robust. Solaris, seen in that light, has always been a house divided against itself - and Sun appears to have finally resolved the ambiguity.
Bravo; bravo indeed. The Open Source world has grown - and it's quite the growth spurt. Not that we needed validation, but this is an unlooked-for bit of big-leagues legitimacy that does not hurt at all.
(!) [Rick] Quoting Niall Walsh (linux@esatclear.ie):
(?) Checking the debian legal lists it seems it may be DFSG compliant...
(!) In a better world, it would be possible to consult debian-legal (or the various related "summary" Web pages) to reliably determine whether a licence is DFSG-compliant. That fictional alternate debian-legal wouldn't be populated by context-challenged monomaniacs woefully ignorant of applicable law.
Ah well.
Suffice it to say that I draw a distinction between the concepts of "DFSG compliant" and "approved by certain net.random wankers posting to a rather painful-to-read public mailing list".
(!) [Ben] [laugh] A critical distinction in the world of Open Source, and one that needs to be drawn far, far more often than it actually is.
(!) [Rick] That having been said:
http://lists.debian.org/debian-legal/2004/12/msg00004.html http://lists.debian.org/debian-legal/2005/01/msg00952.html
(!) The "patents" comments are tautologically true -- but would be so regardless of licence. That is, any codebase adversely encumbered by patents is non-free/proprietary, irrespective of what licence provisions would otherwise apply.
That other bit about fixed attributions making a work non-free/proprietary is one reason why, although I'm a long-time subscriber to debian-legal, I only rarely read it, in order to safeguard my blood pressure: Author attributions may not be stripped in derivative works by default action of copyright law , so it is utter lunacy to assert, as poster Garrett and numerous others do, that clauses to that same effect make the work non-free through it "failing the Chinese Dissident Test".
That is a perfect example of the aforementioned problem of certain posters being context-challenged and ignorant of the law.
Quoting Niall Walsh (linux@esatclear.ie):
You must include a notice in each of Your Modifications that identifies You as the Contributor of the Modification."
So that the theoretical dissident programmer could distribute a modification without having to admit to ownership.
(!) That licence requirement could be met by "Module foo.c was contributed 2005-06-14 by Anon Y. Mouse of the Fugitive Coders Group". The cited clause's intent is not to require the equivalent of biometrics and a mugshot from any contributor, but rather to distinguish cleanly between original code and subsequent contributions.
And that is an example of what I mean by "context-challenged". ;->
Licences are not code for a Turing machine: They're designed to be interpreted by judges, who (being modestly optimistic, for a moment) have brains and are supposed to apply them to such things.

(?) Yeah. I remember seeing similar assertions and having a definite pain in the forehead after reading them.

(!) [Rick] [Proprietary carve-outs in OpenSolaris:]
(?) The only thing I remember seeing mentioned specifically is drivers, which is understandable--too many NDAs.
(!) Quite. Third-party rights. I remember seeing some other things, too, but cannot remember specifics.
I don't mean to derogate the benefits to some of Sun's move -- just to remind people that OpenSolaris's carve-outs mean it's doomed to be crippled as an open-source operating system, e.g., for purposes of porting performed by anyone but Sun themselves.
(!) [Ben] I tend to take an optimistic view of these things that look like naivete from a certain perspective - any move in the direction of Open Source by the historically-proprietary software companies is good for us. One of the many underlying reasons for that is what I like to call "time in grade": the longer these people spend using Open Source methods - to whatever degree - the more these get embedded in their culture and the environment around them. After a while, they're impossible to eradicate. As for "the abyss looking back at you", I rely on the GPL and its ilk to keep the resulting influence on the world of Open Source to a tolerable minimum.
(Yes, the sum total of all the influences and issues here is far more complex than this. However, abstracting this bit and staring at it for a while contains its own lessons, and they're interesting ones.)

(?) Well, though Sun want to hype up the release by saying "Solaris is open source now", their own roadmap says otherwise.

But regardless of the usefulness of the software, at least the code has already yielded some amusing comments (http://www.zdnet.com.au/news/software/0,2000061733,39197326,00.htm):


Another tried his hand at predicting the future of system speeds. "As of this writing (1996) a clock rate of more than about 10 kHz seems utterly ridiculous, although this observation will no doubt seem quaintly amusing one day," he wrote.

Religion was a common theme in the code. "Oops, did not find this signature, so we must advance on the next signature in the SUA and hope to God that it is in the susp format, or we get hosed," said one developer.

"God help us all if someone changes how lex works," wrote another. "Oh God, what an ugly pile of architecture," moaned a third.


This page edited and maintained by the Editors of Linux Gazette
HTML script maintained by Heather Stern of Starshine Technical Services, http://www.starshine.org/

Each TAG thread Copyright © its authors, 2005

Published in issue 116 of Linux Gazette July 2005

<-- 2c Tips | TAG Index | 1 | 2 | 3 | 4 | 5 | 6 | Knowledge Base