Slashdot Mirror


Eclipse Now Runs On Jikes Research Virtual Machine

jscribner writes "IBM reached another key milestone in open source: Eclipse, a completely open source platform, now runs on the Jikes Research Virtual Machine (RVM) improving its teaching/research potential because it provides the community with a significant open source Java benchmark that runs on top of a flexible open testbed (Jikes RVM). The testbed runs on Linux and uses the GNU Classpath implementation of Java libraries (read: complete open source solution). Although Jikes RVM was developed by IBM researchers at the IBM TJ Watson Research Center, it was donated to the community in October 2001 and now has a steering committee and core team that include both IBMers and other university researchers."

20 comments

  1. Does anyone care? by Anonymous Coward · · Score: 1, Interesting

    I don't mean to offend, but the fact that after 20 minutes there's not even a FP here seems a little odd.

    1. Re:Does anyone care? by Elwood+P+Dowd · · Score: 1

      I care. This is rad. There's not much to say about it, though.

      --

      There are no trails. There are no trees out here.
    2. Re:Does anyone care? by Anonymous Coward · · Score: 0

      "Does anyone care?"

      Absolutely. Eclipse is one of the best open source projects out there. If you don't know what it is, you definately should check it out. It's not just about java.

  2. "Java application runs under [a third] JVM" by clem.dickey · · Score: 1

    Congratulation to all who made this possible. I don't imagine it was easy.

  3. What makes this VM different is by Anonymous Coward · · Score: 4, Interesting

    - it's 99% written in Java itself (not C).
    - it uses a modified reference counting scheme for garbage collection.

    1. Re:What makes this VM different is by Anonymous Coward · · Score: 0

      How is it possible? Does it use a Java to native code compiler?

    2. Re:What makes this VM different is by Anonymous Coward · · Score: 0

      Yes ... it compiles all Java code to native binary.

  4. well, this is interesting by Anonymous Coward · · Score: 0

    Damn, getting a Java program to run on a Java virtual machine is quite a feat. My hat goes off to this team of brilliant engineers. Now if they can just get x86 binaries to run on my P4, we'll be set!

    1. Re:well, this is interesting by Amomynos+Coward · · Score: 3, Funny

      > Now if they can just get x86 binaries to run on my P4, we'll be set!

      Hmm, you must be using Windows:

      Move the mousepointer to the lower left corner and click the button saying Start. From the opening menu select "Run...", type the name of a program to the appearing window and press Ok. Here is a complete list of the executables you can run:

      winmine.exe
      sol.exe
      pinball.exe
      freecell.exe

    2. Re:well, this is interesting by saugart · · Score: 2, Insightful

      > > Now if they can just get x86 binaries to run on my P4, we'll be set! > Hmm, you must be using Windows: I assume by P4 the author meant "Power 4", the name Apple uses to describe a generation of PowerPC processors.

    3. Re:well, this is interesting by aled · · Score: 1

      If I don't get winmine, pinball, sol and freecell in Java my customers won't be motivated to migrate. Linux is reaching the same usability levels of window by having solitaire...

      --

      "I think this line is mostly filler"
  5. A selection of memory managers by saugart · · Score: 5, Informative
    Even better than just having a modified reference counting scheme, it has a choice of memory managers you can plug in. You can write your own, too. The API for it is JMTk (the Java Memory management Toolkit).

    There's more info on the memory management system in the Jikes RVM user's guide.

    The memory managers supported include:

    • SemiSpace (copying),
    • MarkSweep (non-copying),
    • CopyMS (non-generational copy/mark-sweep hybrid)
    • GenCopy (classic copying generational),
    • GenMS (generational with mark-sweep mature space), or
    • RefCount (a reference counting collector with non-concurrent cycle collection)
    • NoGC (allocation only, no garbage collection)
  6. IBM PR by turgid · · Score: 0, Flamebait

    It's just yet another IBM PR fluff piece. There seems to be one or so a week here. Funny how it's always IBM, when there's so much other, often more important, interesting and novel stuff going on out there. IBM is doing a very good job of publicising itself these days.

    1. Re:IBM PR by daveho · · Score: 3, Insightful
      It's just yet another IBM PR fluff piece.
      I disagree. IBM has put a huge amount of time and resources into free software that lots of people use: Eclipse, Linux, etc. The effort to get Eclipse to work on Jikes RVM gives users a world-class Java IDE which is entirely based on open source software. One of the most interesting things about Eclipse on Jikes RVM is that it does not require any changes to Eclipse; the porting effort consistent entirely of fixing bugs and implementing missing functionality in Jikes RVM and its libraries.

      Disclaimer: As an intern at IBM, I was one of the people involved in the effort to get Eclipse to run on Jikes RVM. I don't work for them at the moment.
    2. Re:IBM PR by rowanxmas · · Score: 1

      Well, I can't get it to compile:
      Building the library Making all in lib make[1]: Entering directory `/users/xmas/rvmRoot/classpath/i686-pc-linux-gnu/l ib' top_builddir=.. /bin/sh ./gen-classlist.sh standard F -bootclasspath '' -extdirs '' -sourcepath '' -classpath ../../classpath:../../classpath/external/jaxp/sour ce:../vm/current:.: -d . @classes make[1]: F: Command not found make[1]: *** [compile-classes] Error 127 make[1]: Leaving directory `/users/xmas/rvmRoot/classpath/i686-pc-linux-gnu/l ib' make: *** [all-recursive] Error 1 jBuildClasspathJar: Aborted due to a command exiting with error status (2) jbuild:232: some command we just ran (probably with a final argument of "--check") exited with status 2, possibly in source file line # 232 I give up; aborting execution. Exiting due to an error

      Maybe because I am using RH9? I need to pass the --with-nptl flag?

  7. Eclipse without VM - gcj news last month by okock · · Score: 3, Interesting

    More options came in August, when the gcj team announced to compile/run eclipse natively without a vm and much better startup time.

    Olaf

  8. why is this great by Anonymous Coward · · Score: 1, Insightful

    ok, so i program in java and i think i have unknowingly actually used jikes...

    but someone please explain the implications...
    - speed?
    - open source?
    - portability?

    1. Re:why is this great by jkauzlar · · Score: 2, Informative
      Jikes is reportedly faster than Sun's JVM and may have better memory management. Many have said they were disappointed with their application's performance, but when they ran it under Jikes, it was like a breath of fresh air. I've heard no portability advantages since Sun does a good job developing for just about every popularly used OS. Open source code could be ported anywhere there's a compiler, of course.

      My hope is that an open source solution would allow for further experimentation with the JIT compiler (compiling byte code to native code on the fly) could actually result in faster JVM code than C code (disregarding load times of course). Experimenters may also find tricks to speed up and improve the GUI as well, which Java seriously needs.

    2. Re:why is this great by dhk42 · · Score: 2, Insightful

      The jikes that you "have unknowingly acually used" was most likely just the compiler (which has been available for ages and is excellent).

      It probably was not the virtual machine described here.

  9. Another thing to look forward to with OS java by jkauzlar · · Score: 1

    Oh, and I forgot one giant feature we may get to see if Java goes open-source: Multiple applications under one JVM! Sun is working this out although I think they're reluctant to release anything due to issues with security and stability. An open-source developer may be less reluctant. This may be equivalent to having a JVM running as a service and would allow almost perl-like load-times if you want to script in Jython or JRuby or something. Having an unstable JVM like this may not be such a big deal if you're not running critical business applications and I think it would allow languages like Jython to take off as scripting languages.