Forgot your password?
typodupeerror
Java Operating Systems Programming BSD

Vote for a FreeBSD port of JDK1.2 from Sun 68

Posted by Nik
from the small-acorns-to-mighty-oaks dept.
Several people submitted this, but Nate Williams was first. In his own words: "As head of the current FreeBSD/JDK porting development team it's been difficult to finish our JDK2 efforts due to lack of help from Sun. In order to try and make JDK2 on FreeBSD a reality, we are lobbying Sun using a RFE (Request For Enhancement) on the Java Developer network to demonstrate to them the number of people interested in seeing FreeBSD as a supported Java platform.". Read on if you're interested in seeing more complete Java support on FreeBSD.

Nate continues, "Please go to Sun Bug 4288745, and add your votes to ask Sun into allocating resources towards getting a native FreeBSD port of JDK2 (and JDK3, etc...) finished.

"Voting requires that you be registed on the Java Developer Connection, which is free.)

"This is good for open-source operating systems, and Java in general since FreeBSD is a great server platform used by many of the major internet portal sites (Yahoo, Hotmail), and would allow FreeBSD to compete as a Java server platform directly with less 'open' systems such as WinNT."

It's worth noting that any support Sun provide for a FreeBSD port should also be useful to both the NetBSD and OpenBSD Java teams as well, so we can all benefit from this work.

This discussion has been archived. No new comments can be posted.

Vote for a FreeBSD port of JDK1.2 from Sun

Comments Filter:
  • by Frugal (1358) on Thursday November 18, 1999 @04:26AM (#1522654)
    As I recall about a year ago this was tried for Linux. The RFE sat at the top of the request list by a long way and Sun just ignored it. What has changed in the last year or so to make Sun more amenable to porting it to other OSs now?
  • by Anonymous Coward
    Sun is notoriously unresponsive to popular demand. If you check the bug parade (for the uninitiated, a place where you can vote on which bugs should be fixed), the bug that requests a Sun port of JDK to Linux has been far and away the number one requested bug for almost two years. They haven't even lifted a finger, unless you count giving the JCK to the blackdown people... What makes anyone think that they would be any different when it comes to FreeBSD? Trying to get them to even respond to anything like that, let alone take action on it, is like pulling teeth. Sun needs to wake up.
  • How is this different from other applications under BSD? You can run any Linux application under FreeBSD, thanks to the Linux emulation. What's so special about Java that it requires a native port?
  • by Kingpin (40003) on Thursday November 18, 1999 @04:29AM (#1522657) Homepage

    I doubt Sun's going to support BSD in this millenium.. Ehm.. Anyway, Sun hasn't even given solid support to Linux, one can argue that it's because it's a 'competing' OS - but BSD is an even more adept competitor (when it comes to networking at least). It must be hard for Sun to want to make a technology like Java popular as well as want to make a 'leading' networking OS.

    I say lobby IBM instead, their Java stuff kicks butt.

  • by DanaL (66515) on Thursday November 18, 1999 @04:37AM (#1522658)
    Possibly you may also want to send your protest and petition along to IBM, who has proven to be both more willing, and more capable than Sun of porting Java to various platforms. They've ported 1.1.x to at least three platforms I can think of (AIX, Linus & OS/2) and their implementations have been superior to Sun's. And Jikes, their java compiler, is already open sourced which may help with the porting.

    Dana

  • Sun is slow on supporting other unix platforms it seems. They have been promising help for Linux for the jdk 1.2 on Linux and I still see it is in beta. I think it would be great if they were to thelp FreeBSD, but will not hold my breath for that one to take place. Sun seems more interested in kicking M$ out of the market and then taking M$'s place in the market and screwing all the other UNIX vendors. Solaris is a good OS but is just to expensive and Linux and FreeBSD offer less expensive UNIX type solutions for smaller business, I think Sun is worried a lot about this. IF Java were GPL there would probably be quicker ports of Java to other OSes.

    send flames > /dev/null

  • by jd (1658) <imipak @ y a h o o .com> on Thursday November 18, 1999 @04:45AM (#1522661) Homepage Journal
    Sun took -ages- to even condescend to supporting the Blackdown team, despite the Linux bug being the highest rated on their system.

    Once they -did- support it, support seems to have been minimal. It's not on their list of Sun JDK's, Java 2 has been very slow in coming (no fault of the porters), and I've not seen the enthusiasm or energy I would have expected from Sun. After all, it -was- Sun who advocated Java for all platforms.

    Instead, I'd like to propose that the *BSD community lobby IBM, for a port of -their- Java development kit and runtime system. I suspect there would be a much higher liklihood of success, as IBM seem to have embraced the concept of "free" operating systems and even "open source" in a way I don't think any other "traditional" company comes even close.

    Now, if IBM's Java software can be made to work natively & optimally under *BSD, Sun may feel a degree of pressure to at least consider the platform. I suspect it was the presence of "clean room" implementations for Linux that eventually tipped the balance there.

  • by Anonymous Coward
    Java security issues are serious enough that it needs to be reviewed the way the OpenBSD ppl review their code. And hopefully the Free BSD port works on OpenBSD without too much effort?
  • It's kind of sad that supposedly "portable" java doesn't run on enough platforms for it's portability to be terribly useful. Basically, the JDK works with Win32 and (some of ) System V UNIX. As an OpenBSD user, I am locked out of java just as I'm locked out of a Visual Studio app. Except at least Microsoft don't pretend that their products let you write "portable" code.

  • No, I believe the post comes rather from a pro-Microsoft voice. The guy tries to imply (in a silly way, since he/she thinks now SUN is making a port of Java for *BSD, which is not!) that there is such a big competition in this industry, that even *BSD are viable platforms, competitive to Windows.
    I might be wrong, but I see it that way. No need to blame the *BSD people.




  • Sun's only interest regarding Java is in money revenue from their own OS, servers and future thin-client model it seems. Pretty pathetic when you think that Java is supposed to be cross-platform. They refuse to make it Open Source, and to cooperate with grass-root initiatives.

    But someone[tm] did a port of the various versions of JDK and JRE for Linux, including v1.2:

    http://www.blackdown.org/java-linux.html

    Hopefully this will compile under BSD with no- or little modification. According to OpenBSD-homepages, BSD is very compatible with Linux. But I have honestly never tried BSD myself, so I cannot know to what extent.

    I would've written this in HTML if only /a had worked.

    - Steeltoe
  • Since the JVM will already be "interpreting" bytecode, you'll probably be looking at an even greater performance degradation if you find a way to run it via an emulation package. And that's not even the tip of the iceberg: wait until you start dealing with green vs. native threads, etc.
  • I really like FreeBSD, but I am not sure whether a Java port on FreeBSD would really make sense. My main concern is that AFAIK FreeBSD does not support (Kernel-)Threads. Or has this changed in 3.0?
  • For reference, the Linux "emulation" under FreeBSD isn't an instruction-level emulation; it's an API-level emulation. That means it can be just as fast or faster than running under Linux--any noticable performance difference will be the result of FreeBSD doing its stuff differently.

    In that sense, it's a lot like Wine "eumlating" Windows. The programs run their instructions natively, but any attempt to access libraries or OS services is handled by Wine. That's why Wine only runs on x86.
  • Obviously Sun's not going to take it seriously if 10,000's of Slashdotters (90% of whom probably won't be Java Developers on BSD) skew the result of the survey?

    Sure the Linux-port has been number one RFE for a while, but I would assume mainly because alot of L!nux rul3z advocates are voting for it.

    I'm definately NOT saying that we don't want to develop on Linux. I for one do. But most big Java apps aren't yet using 1.2. And there's at least two implemenations (Blackdown's port and IBM 1.1.8) to work with.

    Saying that Sun doesn't care about developers just doesn't hold true either. Sure, they can't suit everyone. Sure they don't do everything they promise - at least not right away. And you expect them to change anything just because somebody somewhere yells at them to get it done.

    But Sun's community process works well on a lot of APIs they're developing. I know lots of user feedback went into Java2 stuff like Swing, Collections. They work together alot with SERIOUS developers (and not just really big corporations).

    If you want to get involved it's quite a bit of work: download the early releases, try them out (and maybe waste alot of work cause your code won't be compatible with the official release later), write up serious bug-reports, write up serious requests and don't just yell "I want it for Linux!"

    BTW should this be a RFE and not a bug-report?

  • I notice Sun has just 404ed the top25 [sun.com] bug page without explanation. :)
  • After chceking out IBM's compiler on the opensource site I was wondering if it is possible to get jikes to compile a Java App with the 1.2 ClassLibs under BSD? Any thoughts?
  • by Anonymous Coward
    I've gone back and forth in my head with regards to Java, but this has sealed it.

    Sun has created a product for which it touts portability as a primary feature, yet they refuse to port the JDK to platforms that have significant developer mindshare.

    Its obvious that Java is simply being used in a massive PR project to build up support for Solaris and Sun hardware, and that support for Win32 is only grudgingly offered due to its overwhelming userbase.

    Come to think of it, it really isn't that much of a loss. Estimates of working Java programmers from independent firms show numbers only around 10% of the hyper-inflated tallies offered by Sun (does anyone actually believe Sun numbers that there are 5 million working Java coders? What the hell are they building?). So its clearly not as popular as they would have us think.

    Added to which, its a dog of a language. I love it in here how people tout Java as "letting me forget about memory management". Ha! As if. You have to worry about memory management in every language and tool. Even if that doesn't mean malloc'ing and free'ing memory yourself. Most Java programmers I know have no problem doing stupid memory stunts like redeclaring objects inside loops, etc. This is memory management too folks.

    Added to that, the language doesn't let me choose a paradigm - its OO or nothing. You can debate this with me all day, but I still contend that hard OO doesn't cut it for real world problems, which rarely map well to a object model, and if they do, the implementor usually creates spaghetti hierarchies that make it impossible to add/subtract new classes.

    I prefer my tools small and simple. C, perl, and maybe C++ (but never RTTI, exceptions, multiple inheritance, templates, or polymorphic behavior). They're time proven and they actually work in solving real problems.

  • I think most people here are missing the point. When Sun says "Java everywhere",what they mean is "Java on Windows and Solaris." McNealy couldn't care less about anything else.

    Linux on x86 is a serious competitor to low end Sun hardware, as is *BSD although it gets less publicity. Why does Sun want a free OS on cheap commodity hardware getting more software support? It will just make the transition from SPARC/Solaris-&gtLinux easier, something Sun doesn't want. Yes, I know Sparc/Linux exists, but honestly what kind of support does it get compared to x86? With the newer x86s like Athlon SPARC doesn't have the staggering performance advantage it used to. (I'm not talking here the Sun "big iron"- we won't be seeing 64 processor x86 anytime soon.)

    "Java everywhere" is a weapon to try and kill MS. Nothing more.

    Eric

  • See the platform page [transvirtual.com] of the Kaffe Java Virtual Machine. They ported it to about anything... But it's only a 1.1 compliant VM.

    The Blackdown ports overview can be found here [blackdown.org]. But AFAIK they're Linux only (although on several platforms). They have a pre-1.2 JDK which runs pretty well.
  • You can moderate THIS offtopic too. I thought it was a netscape bug that the colors in this topic looked awful, but am I led to understand that this is some sort of feature?

    Gack, it's awful. Bring back slashdot green in all sections. Consistency is a GOOD THING.

  • This must be one of the most agressive color
    schemes I've seen.Hey, Rob, you forgot
    to use the BLINK tag.
  • Hopefully this will compile under BSD with no- or little modification.

    No, it won't. One of the things holding up Blackdown's JDK 1.2 release has been getting Linux' kernel threads into a state that the JDK can deal with. (And incidentally the work on kernel threads is also why Mozilla works best on glibc 2.1 machines and not so well on glibc 2.0 machines...)

    BSD's kernel threading mechanism is not at all like Linux's. Not to mention there are many other kernel dependencies in the JDK that needed to be ported to the Linux OS specifically that would bear no resemblance to BSD syscalls.

    If porting the JDK were that easy, Blackdown would have just taken Sun's Solaris JDK source (which you can easily get, even if the license sucks) and "typed make and it would have worked."

    There are a lot of OS/libc/kernel dependencies inside the JDK that need to be ported specifically to the system. Fortunately, from what little has leaked out of the black box around Blackdown, this little fiasco getting the JDK ported over to Linux has made the JDK code somewhat less platform-dependent.

    -=-=-=-=-

  • If FreeBSD/OpenBSD/NetBSD etc... has such a great mindshare, why not download the reference implementation and port it!

    I find it hard to believe that BSD people would adopt java in a big way, I mean you are all obsessed with having the source anyway, so why should binary cross-plattform compatability matter?

    Anyway Java 1.1 works very nicely for server-side deployment, so what is the big argument for Java 2 on BSD?

  • Gack, it's awful. Bring back slashdot green in all sections. Consistency is a GOOD THING.
    Agreed. That's why in my slashdot user profile, I opt for low-impact (lynx friendly) transmissions, and then either use lynx (sometimes) or else Netscape with its "OBEY MY OWN COLORS" preference. Or simply run it through the color-stripping proxy.
  • I couldn't find any information on Transvirtual's Web site [transvirtual.com] about funding from Microsoft. Can you substantiate this?

    Vovida, OS VoIP
    Beer recipe: free! #Source
    Cold pints: $2 #Product

  • Yes, please work on a 1.2 Kaffe version instead! Then you'll actually be contributing to free software, rather than helping a company (Sun) that has shown itself to be no friend of open source.

    Vovida, OS VoIP
    Beer recipe: free! #Source
    Cold pints: $2 #Product

  • by Anonymous Coward
    Why let reality get in the way when we can be breathless advocates for the cause of the day?

    BSD is the fastest server OS on the planent!
    NT is stable!
    Linux is easy to use!
    MacOS doesn't suck!
    BeOS has users!
    OS/2 -- LOL.
  • Reading from most comments, it seems that SUN is not supporting the cross platform suport for non-SUN platforms. Well if this is their strategy they might loose much more then just their OS. They are probably getting nervous on their return of investment on Java. But having Java mainly working on Solaris and NT is not enough. It's not just words. We need the support as well. If they can't give it, they definitly should move it to open source. (And not wait till the boat is sinking). I've became a bit more carefull. I don't want to depend on one companies strategy. When the Java developers are dropping out because of a lacking cross platform and are returning to gcc, what did sun gain ?
  • Kaffe is insufficient, it leaves you stuck in the dark ages (awt) and it is not interoperable with the JDK, which has become a defacto standard. Platforms that are not supported by the JDK are kind of dead as viable java platforms.

    As for blackdown, they're doing their best, but they're always playing catch up to Sun who seem to change java every week. Once the language stabilises, blackdown will probably have something in due course.

  • Good point. Those who have a problem doing free labor for Sun could work on Kaffe ( which has done a much better job on getting ports to all platforms btw ). I hope that Kaffe can catch up to the point that it's interoperable with Sun's JDK, otherwise, it's as good as dead as a viable java platform.

  • by TWR (16835)
    . They've ported 1.1.x to at least three platforms I can think of (AIX, Linus & OS/2) and their implementations have been superior to Sun's. And Jikes, their java compiler, is already open sourced which may help with the porting.

    JDKs for BSD are the least of the Java2 problems. Right, but the problem is that NO ONE BESIDES SUN has finished a port of 1.2 (aka Java2). IBM has a beta for AIX, but Sun's already on a beta of 1.3!

    IMHO, writing a fast and reliable JVM is proving to be a heck of a lot harder than anyone anticipated.

    Sun screwed up Java licences out of the gate. They should have been selling exclusive platform franchises to the highest bidders, with specific commitments of support from Sun and specific commitments of implementation from franchisees. If a franchisee didn't execute, they'd lose their franchise, and their code would be transferred to the next holder of that platform's franchise. If Sun failed, the fee paid to the franchisee would be refunded. Seems simple enough.

    Instead, Sun did silly things, like license 5 companies to write JVMs for the Mac (Netscape, Roaster, Metrowerks, Microsoft, and Apple). None of them did a good job of it, because Sun gave them some god-awful work to base it on (Sun's own Mac JDK 1.0.2, written by people who never used Macs or written a Mac program). Apple's JVM team has been re-writing everything from scratch, putting them over a year behind Sun's Java progress. Most of the other licencees have now given up (Roaster, Netscape, Metrowerks). One of the licencees (Microsoft) has tried to screw Sun. Obviously, this has not been a successful licensing program.

    Meanwhile, the only vendor for Java2 remains Sun. While Sun talks about "write once, run anywhere" the only two platforms Sun actually cares about are Solaris (obviously) and Win32 (because its the common one). I wonder how "helpful" Sun has been for IBM, Apple, and others who have been trying to get Java2 support completed. The FreeBSD people should just get at the back of the line...

    -jon

  • While I am a Java developer primarily and I use FreeBSD for almost all my machines, this is not a real concern for me. I use FreeBSD on older machines (486,386,etc) to make them useful (probably more useful than my p-II monster running NT, etc), and with Java's performance I wouldn't want to try to run in on a 486. Maybe when FreeBSD's SMP support is better I'll worry about Java, but there are other things more important to me about FreeBSD than Java support.
  • Actually, you can write non-OO programs in Java. Just make a class and use all static methods. This way, the class names just become more like a namespace for the functions, and you have to go through the horrible process of typing ClassName.method() instead of just method(). I'm shuddering just thinking about it.

    As for memory management, it does make things easier by your not having to worry about freeing memory yourself. Incidentally, you must know some moronic "Java programmers" to declare variables inside a loop. I program primarily in Java, and I wouldn't do that. If someone is stupid enough to do that, then it doesn't matter what language they know, and I'm fairly sure it's not Java that's making them do it. Thinking so is somewhat stupid.

    As for portability, it is my understanding that Sun probably won't support all platforms itself. They're supposed to give people from non-Sun-supported OSes the code to help them with a port, like they did with Blackdown. I don't want them porting Java to 20 different OSes, because that uses up resources that I would rathar have them spend on improving the quality of their existing implementations and libraries (although they don't seem to enjoy doing that either, but that's another matter entirely). If the *BSD people want a Java implementation, they should get a group together to port it. If they don't, I wouldn't hold my breath for Sun to support one of their currently unsupported operating systems.

    I enjoy your argument about the popularity of Java. Your argument goes something like this:

    • Sun says there are 5 million Java developers
    • I say this number is obviously inflated
    • Since I'm right, Java isn't as popular as they say it is
    • Believe me, not Sun!!
    I don't know if I believe that there are 5 million Java developers, but I haven't read anything saying there are that many (I usually read stuff at www.javalobby.com, not java.sun.com). I don't know if you were exaggerating or not. However, from what I hear, there are lots of companies that are using Java to develop their intra-company applications, as well as other stuff. Don't ask me for proof, because these are things that people say their employer does in discussion forums, so I have to take their word for it (and I think I can trust them more than you think you can trust Sun).

    I'm sorry this got so long. I take no responsibility for errors in the spelling, grammar or usage in this post, so don't nag me about it.

  • What else can you say about a language whose hook is 'platform-independence' and which runs on so few platforms? I can think of few modern languages which are less portable than Java.

    I hope Java teaches everyone some painful lessons about what to avoid. A language born as a pimple on the butt of a moribund set-top box and thrust into the limelight artificially by corporate/marketing imperatives was doomed to failure from the outset. The only question is how long the decaying corpse will be left out on the street.

    The main sucker for Java is the corporate manager riding herd on a bunch of keyboard monkeys he doesn't quite trust and hoping that a bondage-and-discipline language will limit the amount of feces they can throw. I've talked to a couple of these, and they pale with horror at the idea of unleashing their monkeys with Perl.

    I think a secondary and less acknowledged motivation for the sucker choosing java is that it reduces the dynamic range between smart and dumb programmers, thus protecting his fragile ego. If Abigail coded Java, it would probably look just like Mike Monkey's Java. So the sucker manager could be spared the realization that he is an order of magnitude less intelligent than some of his programmers.

    Oh, about that 'memory management' issue:

    You have to worry about memory management in every language and tool. Even if that doesn't mean malloc'ing and free'ing memory yourself. Most Java programmers I know have no problem doing stupid memory stunts like redeclaring objects inside loops, etc.
    Try this: % perl -e'for(0..10) {for(0..1000) {my $x=7;} print `ps u $$`;}' and notice that the memory consumption doesn't increase.

    The point is that in 1999 there is no reason for an application programmer to have to worry about that. It seems like Java has stuck the application programmer with responsibility for memory management while attempting to hide the details, a predictably disastrous combination.

    Anyway, this whole mess illustrates the perils of a proprietary programming language. A world that has C, Perl, Python and TCL should laugh Java off the planet.

  • I think a lot of people are missing the point about Java. It's a language with a well defined specification. Why should Sun have to port it to n platforms? I don't hear people asking for Sun to port their C++ compiler to Linux, or their NFS source code.

    At work, I used it used it to develop code on NT, and dropped the class files straight on Tru64 with no problems. Neither JDK was made by Sun but they passed the Sun compatibility tests.

    Can people really not tell the difference between this and M$'s proprietary lock in APIs?

  • Sun don't have to port java to anything, but until there's an acceptable version of Java available on my platform(s) of choice, it's useless as far as I'm concerned. All the hype about "portability" is meaningless to me if I can't run a decent JVM on my platform(s). Far from being "write once, run anywhere", Java is looking more like "write once, run on Windows/Sys V UNIX".

Premature optimization is the root of all evil. -- D.E. Knuth

Working...