Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Jan 1999 19:40:10 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        nate@mt.sri.com (Nate Williams)
Cc:        tlambert@primenet.com, nate@mt.sri.com, java@FreeBSD.ORG
Subject:   Re: TowerJ for FreeBSD
Message-ID:  <199901271940.MAA17619@usr07.primenet.com>
In-Reply-To: <199901262347.QAA15778@mt.sri.com> from "Nate Williams" at Jan 26, 99 04:47:17 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> > > Nobody has been using the Solaris CDE ELF library to build FreeBSD
> > > binaries.  As was pointed a while back, you can't 'mix' a Solaris
> > > library and a FreeBSD binary.  I'd even buy you dinner if you can
> > > make anything beyond a simple toy application work with the Solaris
> > > library.  
> 
> No comment?

I know at least one person who is using the copy from the Sun
download.  If you think I'm going to turn them in to be pursued
for license violation, you're crazy.


> > > I've got a FreeBSD native application that uses Motif.  I'll bet you
> > > dinner that you can't make it work with the Solaris ELF library.
> > 
> > Static library?  This is almost worth giving up my Motif-taint-free
> > status to make work...
> 
> Shared library, since that's all we have available to us, and what you
> claimed could be done above.  Although, I'd settle for a static link.
> (Although I have access to an FreeBSD ELF/Motif library. :)

The Solaris CD is shared; the download included the full developement
environment.


> > They
> > ended up with only a few unresolved symbols, most ending with "64".  O
> > believe the total was less than 10.
> 
> See above.  Also, the linking is the *easy* part.  It's providing the
> 'shim' to convert all of the calls to/from the shlib that's the hard
> part.

And I think this "shim" is already well documented in the KLD for
the Solaris ABI module.  Yes, I don't know for sure if the Solaris
JDK code will run under the ABI, but Oracle does, and so, apparently,
does Lotus Notes.

I know we all have a bias that the stuff we are doing is harder than
the stuff anyone else is doing, but frankly I can't see that the JDK
would be any more dependent than the other foreign binaries.


> > That should mean that you could get it linking with about 30 minutes
> > of light work, and that you could probably have trivial programs (e.g.,
> > the ones in the "Young" and "O'REilly" Motif books) running in a relatively
> > short period of time (say a day at most, with SEF's truss and Mark's
> > Solaris ABI KLD in hand).
> 
> I disagree.  Select/poo is used all over the place in Motif (the event
> libs), so I doubt even trivial applications would work.

Implementing select or poll is trivial.  Yeah, some FreeBSD device
drivers may have to change; so what?  Are we now talking about the
politics of the changes being committed?  I don't care about politics,
if that's what we're doing.


> > > Issues such as system calls (which are the biggest problem),
> > 
> > System calls aren't really relevent, since the calls are by way of
> > whatever libc you link against.
> 
> Sure they are.  The Solaris ELF library assumes that the constants are
> the same for all the function calls in FreeBSD as they were in Solaris,
> which is the wrong assumption.

For the most part, this is true.

For places this is not true, the answer is easy: change FreeBSD.

Put it another way: there's no way we're going to be able to change
Solaris, so FreeBSD is the only thing that *can* be changed.


> Also, you have to assume that none of
> the shlib include files (the ELF Motif and/or JIT) also make any
> assumptions about the OS in question that are invalid (filename size,
> etc...)


Yeah.  I'm making the assumption that this is either true, or very
nearly true, and for the places it isn't that truss and a copy of
Solaris in hand (with it's truss to compare against) would be enough.


> > System calls would be an issue if I were trying to use Solaris's
> > libc; I'm not.
> 
> You have to look like Solaris's libc, because the shlib is expecting
> that 'ioctl(a, b, c)' looks the same in FreeBSD as it does in Solaris,
> as the JIT is calling them.

The ioctl() is much less of a problem, IMO.  I don't think it's that
frequent, and where it *is* used, I have no problem hacking up either
a non-weak wrapper in a stub or, preferrably, FreeBSD.


> > JDK libraries would probably take up to five days to make work, if you
> > had the working Motif libraries on which JAVA depends on Solaris in hand.
> 
> Right.  As with all of your ideas, one/two weeks worth of work and
> things'll be there, so why bother.

No, the "why bother" comes from this not being intellectually
challenging, and me wanting to spend my free time being challenged;
otherwise I'd be watching TV.

I'm certain you could find someone who both (a) cared and (b) found
the work challenging enough to be worth their time.  But that's your
job, not mine, since I'm not in FreeBSD's "management".  8-).


> > > different library functions, etc.. can all be worked around, but
> > > not 'trivialy'.
> > 
> > I think you are misunderstanding my use of the word "trivial".  It's
> > a measure of complexity of the problem.  If you want, you can translate
> > it each time you see it to "there's not a lot of thought required".
> 
> Then use a different word instead.  Trivial implies 'easy, nothing much
> to do'.

Not to a mathematician or a scientist, it doesn't.



> Also, I disagree that it's trivial.  *MOST* of the work is
> 'easy stuff' (just like most of the stuff we do at our jobs), it's the
> last 10% that's hard.  The hard part is rarely designing the algorithms,
> it's trying to make it 'fit' into the already existing framework w/out
> breaking everything else.

I'll be happy to help you with any hard stuff you run into; how's that
for an offer?


> There is where most of the challenge in software is nowadays.  Anyone
> can 'make it work', but few can make it work well and still keep it
> extendable/understandable/maintainable.

8-).  You're a great straight-man, but I'm not going to bite... 8-).


> Working for one of the world's largest research institute makes it
> obvious (at least to me) that really good ideas come along infrequently.

There are tons of good ideas.  I personally have more ideas that I
believe are good than I'm going to be able to execute within twice
my expected lifetime.  I'm forced to pick and choose.


> Your definition of the word trivial implies that it's 'beneath you',
> which is just your ego getting out of control. ;)

Nope.  It's me deciding where it's most worthwhile to me to spend
what free time I have.  If anything, I'm being selfish, not egotistical;
and I'm even more "selfish", since I won't GPL the stuff that I do spend
my time on... it's a matter of perspective.  I guess I'm just one of
those evil "hoarders".  ;-).


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-java" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901271940.MAA17619>