In the span of two years and two acquisitions, Sun found itself in possession of two Java Virtual Machines. Now it has the task of merging the two into a single JVM, a task that won't be rushed because it won't be simple and because Oracle does not want to disrupt either JVM.
Oracle (NASDAQ: ORCL) acquired BEA Systems in 2008 and the JRockit JVM along with it. With the purchase of Sun, Oracle now has HotSpot as well. When the deal was finally consummated at the end of January, Oracle said then that it would eventually merge the two.
Now the image is becoming more clear.
In a Webcast this week, Mark Reinhold, Oracle's principal engineer and a former Sun staffer, said the company would continue to develop both platforms in the short term (JVM talk begins at the 16:42 mark).
"The plan is still evolving. We've got leads from the HotSpot and JRockit teams spending lots of quality time together. It's not an easy problem, taking the best of each, figuring out the long-term convergence plan," he said. "Customers have things in production on both, taking advantage of specific features in both. We're not going to cause an earthquake and make systems fall over," he said.
Reinhold added that, "at some point in time there will be one VM. Will it be in the next three months? Probably not. In the next year and a half to two years? Yeah, I think so."
He said one of the nice things about Oracle is that when the company buys another firm with a duplicate product, if the acquired product is better than what Oracle already has, the software giant is willing to put its product aside in favor of the better and newly acquired offering.
"Frankly, there's stuff in JRockit we've been jealous of for years. The mission control stuff is pretty sweet," said Reinhold. HotSpot's strength is in server performance. "There's a lot more head room there. It's a lot more sophisticated system," he said.
The Webcast began with a discussion of the Java Development Kit 7, which will introduce the next version of Java Standard Edition. There are four significant features in JDK 7: it's modular, which will address performance issues and allow for modular code; it's multilingual; it gets a real file system API instead of Java I/O file system, "which we all know was kind of a joke," he said. Finally, the Java team will add Project Coin, which looks to determine what small language changes should be made to the JDK.
Reinhold also said that Project Jigsaw, which will also pertain to Java modularity, will be available in mid-March for testing. It won't be complete or ready for the core Java platform but it will be "at a point where people can sensibly play with it."