Welcome!

Linux Authors: Adrian Bridgwater, Sharon Barkai, Elizabeth White, Liz McMillan, Pat Romanski

Related Topics: Java, Linux

Java: Article

Why It Makes Sense for Sun to Open-Source Java Libraries & Solaris Kernel

Why It Makes Sense for Sun to Open-Source Java Libraries & Solaris Kernel

It makes a lot of sense for Sun to open source the Java Libraries and Solaris Kernel.

It's sound business for Sun to (a) Open source license the Java J2SE,J2EE and J2ME framework libraries; and (b) Release a fork of the Solaris Kernel under the GPL license.

It would benefit the entire Java based industry - including the free software, open source, and proprietary based vendors - to open license the core J2ME, J2SE, J2EE libraries and Java to bytecode compilers.

Java's primary strength, the ability to write code which is constantly portable across many vendors platforms, would be greatly enhanced if all of the vendors were using the same core libraries.

To insure that the standard base core would not become polluted with incompatible forks, the source could be licensed with a clause requiring any incompatible changes or any additional classes or methods to be moved to and occupy only the vendor's namespace. Another clause would require that the vendor version of the Java-to-bytecode compiler and any GUI IDE defaults to generating portable bytecode, without embedding any vendor-specific references.

The OSF definition of an open source license clause five explicitly states:

"The license may require derived works to carry a different name or version number from the original software."

Developers and vendors would only be required to shift changes to the vendors'/developers' namespace if the changes were incompatible with the JCP JSR open standards. This would not prevent the development/distribution of additional optimizations, ports, or bug fixes. Since adoption of standards has for a long time been an open source tradition, it would not be much of an imposition on the open source community.

Vendors don't have to use all the same "core" libraries - just provide the same standard interface. The open source Java core can been seen as a starting common base. Each vendor would be free to "short circuit" their implementation as long as the standard API behaviour remained the same. Vendors would still be free to compete on their JVM performance along with how well it performs interfacing databases, integrated development tools, etc.

Sun could require contributors to the Java Open Core to let Sun or the JCP dual-license the result as Sun does with OpenOffice.org and StarOffice. If a vendor does not wish to disclose its modifcations then the vendor could pay for a closed source license scheme. The payment could then be split up amongst Sun, the JCP, and the contributors.

Ask IBM and HP what their customers are demanding and you will find out more often than not that it's vendor-neutral/independent solutions. Customers don't want lock-in slavery anymore. That is why Linux is such a success and why there is more demand for Java skills than any other programming language.

It should not be necessary to open source license Sun's JVMs. In the long run it could greatly benefit Sun to develop the JVM under a dual license as it is doing with OpenOffice.org and selling StarOffice.

Releasing a fork of the Solaris Unix Kernel makes even more sense when you consider Sun's move towards commodity based hardware, like AMD's opteron, and enterprise desktop systems. Sun is going to need drivers to interoperate with x86 hardware and common peripherals. In comparison to Linux, the range and quality of hardware drivers available to Solaris is pitiful.

If Sun can manage to get out from under the SCO Group's claims over the old AT&T code base, by dealing direct with Novell who still appear to hold the rights and copyrights, then Sun would be free to release a fork of the Solaris kernel under the GPL license.

Sun would be then free to take any source code from the Linux kernel and incorporate it into the GPL'ed Solaris kernel fork. Sun would then free to deploy that kernel in desktop and clustered systems markets, where Linux currently does have a lead over Sun.

More Stories By David Mohring

David Mohring is a New Zealand-based Linux applications developer.

Comments (9) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Pawan 06/10/04 01:42:06 AM EDT

This article needs to do more than simply be unreasonably obsessive with open sourcing Java. The article doesnt have anything that can prove that either Sun or dev. community will benefit from opening up Java. Besides, Java classes are all open source, and I dont think anybody would like M$ or some org to change the source for java.exe and impose it upon the users.
I hope JDJ raises its bar and thinks twice before publishing such cock-and-bull articles that make open-source stuff seem childish.

Layton 06/08/04 05:32:40 PM EDT

I don't see that it makes any difference whether Sun open Sources Java or Solaris. As far as Java is concerned, there is currently a re-implementation of it happening that should satisfy the "anti-proprietary" crowd. And I don't see why we need Solaris. We have Linux, 3 BSD's, Dos, and someone working on an NT clone. If Sun wants to open source their stuff, then fine. But if not, they have to live with what they fix, and I don't see that it is anyone elses place to tell them what that should be. If Sun's customers aren't secure with what Sun is doing, then they should find alternatives for themselvs that they are happy with. Again, they need to live with their own choices.

Basically, I believe that choice is good. If we loose the option of a closed source solution we have just as much lost a choice as if we had lost an open source option. Both have advantages. The only thing I would like to see Sun do is to decide what they want to do, and then do it. But then, I'm not on their board, I don't own Sun stock, and I'm not a Sun customer.

However if they made a sparc based laptop that ran a recent linux, I might re-consider. Maybe.

FUD Stomper 06/08/04 01:02:40 PM EDT

The problems with "getting components to work with Linux" are NOT due to kernel differences. ANY end user who can plunk out "diff" and "/usr/src/linux/scripts/patch-kernel" can be assured of running the latest-greatest, the earliest, or anything they desire...

What does that have to do with "open sourcing Java"? Not much, other than to say that currently it is even easier to switch from one JRE to another...

I would venture to guess that the VAST majority of NOISE one hears about "open sourcing Java" is simply an effort on the part of vendors of closed Operating Systems to muddy the waters in the futile hope of clinging to their shrinking base...

I am growing tired of Sys-Con fueling this. Spend more time on articles that help DEVELOPERS get stuff done!

SAJ951 06/08/04 10:20:38 AM EDT

Seems to me that this publication and IBM are about the only ones crying for Sun to open source java. IBM has an implementation of Java - why don''t they just open source all of that and say to the open source community "here you go, build on this"? We''ve already seen what happens with open sourcing platforms with Linux - some benefits but also lots of problems. JDJ - we''ve heard your cries ad nauseum - enough already - isn''t it time to get back to your core missiong - ie. providing information useful to the Java Developer?

Trey Spiva 06/08/04 09:20:53 AM EDT

How will it help the Java community to have Java fracture. Because of the lack of standards caused by the fracturing of Java, it will become impossible for 3rd party tool venders to support the Java language.

Example: Linux is a GREAT operating system. However, few people us it (except for the die hard MS haters). Why? Becausae it is too hard for the common user to get components to work on Linux. Why? Because each Linux kernal is different and there are no standards that 3rd party venders can conform to. So, instead we have each kernal vender fighting each other instead of a organized attack to defeat other operating systems like MS windows. This approach is doomed to fail.

Malcolm 06/08/04 07:47:28 AM EDT

Get a life guys!!!

Stop banging on about making java open source and go write some java code.

JDJ should commission some articles that help the community not this endless tirade of tripe about Open Source. I don''t even need to mention that the source is available etc... etc... yawn... yawn...

Mike 06/08/04 06:51:51 AM EDT

The source code is available (as nonemouse said) and vendors besides Sun offer JVMs. I see no advantage in having Java open sourced. As a Java developer, if I want additional capabilities not found in the standard distribution from Sun, I go out to the web and get them. No lock-in there.
I would prefer that Sun not open source Java. Especially the core libraries, which define the Java framework. Since an entire industry has built itself around this framework from Sun, it seems to me that Sun is doing an outstanding job. Let''s not try to fix something that is not broken. (And no, I don''t work for Sun.)

nonemouse 06/08/04 05:26:15 AM EDT

Vendors can already add whatever they want in their own namespace.
And they already do.

So what are you saying?

Why does the linux crowd have such trouble understanding that the java
source is already available... the only restriction is that you have to
pass the compatibility test if you want to call your modified version "java".

bored 06/08/04 04:30:51 AM EDT

"Customers don''t want lock-in slavery anymore," yeah!
We don''t want Sun to lock us in. We want Microsoft to take the open-source Java and change it ... uh uh ... inovate on it ... and then force it on all of us through the Windows desktop monoply. Grow up!