harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dan Lydick" <dlyd...@earthlink.net>
Subject Re: OS Abstraction Layer and Common Tools Library
Date Tue, 17 May 2005 17:19:58 GMT

> [Original Message]
> From: Marco Lange <marco.lange@rwth-aachen.de>
> To: <harmony-dev@incubator.apache.org>
> Date: 5/15/05 6:58:54 PM
> Subject: Re: OS Abstraction Layer  and Common Tools Library

... snip ...

> I suggest targeting a few more Unix platforms in order not to stick to
> Linux specialties to much. Maybe some of the *BSDs. Later refactoring
> the existing code to remove the Linux-dependent parts would be wasted
> time and effort, IMO. On the other side, I would not regard Solaris
> support as
> necessary from the start, unless it has to be done to achieve TCK
> compability.


In keeping with the Harmony FAQ, and Geir's continually
herding the conversation back to J2SE 5 compatibility,
let us consider as a starting place for platform
compatibility the same platforms upon which Sun
implemented J2SE in the first place and what it is
now fully supporting:  Solaris, Linux, and Windows32.
We should also be looking to the future for the 64-bit
OS editions for these platforms.  Right now Sun
is supporting the AMD64 Windows platform on JDK 5, 
see http://java.sun.com/j2se/1.5.0/download.jsp at
the bottom.  Furthermore, let us look toward  J2SE on
Solaris 10 on x86, which is probably not far away.
There should be very little difference between any
of these if we are careful  about an OS abstraction
layer.  My experience with Unix ports is that the
trick is in matching up the platform-specific OS
calls.  (For example, when porting gmake and tcsh
to Tandem's Unix SysV.5-- in a former life.)

Why do I expound so much in this way?  In all of
our discussions about the philosophy of a potential
Harmony project, the Sun reference implementation
of Java seems to be continually referenced explicitly
and even more often referenced implicitly.  Their first
implementation of Java was certainly done on Solaris
and is a major player today in commercial systems running
J2SE and J2EE.  I agree that we should not constrain
ourselves to OSS platforms.  I am a developer who works
interchangeably on projects consisting of any and/or
all of Solaris, Linux, and/or Windows platforms, and
I design system specs choosing them as requirements
and budget dictate.  Among other, I have worked with
and/or designed systems also on HP/UX, IRIX, Tandem,
and a host of other flavors of Unix, as well Windows
3/95/98/NT3/NT4/2000 as most of the real-time microprocessor
platforms known to man (well, at least _many_ of them).
Any consideration for J2SE portability should seriously
consider targeting _all_ of the major Unix type platforms,
both OSS and otherwise, thus gaining easy entrance to those
worlds.  This would permit designers in those worlds to
choose Harmony instead of having to rely on their OS vendors
to port and SUPport the JDK, or at least the JRE, into their
environments.  It is an unfortunate fact of life that some
of the better Unix platforms DO NOT have an easily accessible
version of Java available to them without requesting an Act
of Congress.  If Java were easily available, such as through
a port of Harmony, this problem would go away and Harmony would
gain some devoted adherents, all through a simple software
port of yet another Apache-licensed product.

I personally have worked on major web sites
that have been built with Solaris, Linux, and/or IRIX,
and have worked on smaller web sites based on various
Linux platforms.  Of course, Apache HTTPD was the web
server for each of them.  I am effectively implying that
we should do the same for Harmony, in whatever form it
eventually takes.

I have followed this entire mailing list discussion
and look forward to helping out in some way as things
move forward.

Best regards,

Dan Lydick

View raw message