Java is a beautifully crafted OO language but the first thing I noticed is how slow it is (compared to C++). This is probably because it has to go through another layer of translation (the VM) instead of running directly in the CPU's native microcode.
My question: Do you know of any attempts to create Java-specific CPU's that run Java natively without requiring the software-implemented VM?
"Over 90% of Java byte codes are executed directly by a Java-enabled core with no overhead," Cormie says. The remainder are cracked into small pieces and interpreted as short se-quences of ARM instructions. Typical examples are functions like complex divisions, method invocation, and floating-point operations.
Java is platform-independent but JVM is platform dependent In Java, the main point here is that the JVM depends on the operating system – so if you are running Mac OS X you will have a different JVM than if you are running Windows or some other operating system.
Yes, there are several hardware Java implementations. However, they don't always perform better than software running on more general-purpose silicon.
A Java processor is the implementation of the Java virtual machine (JVM) in hardware. In other words, the Java bytecode that makes up the instruction set of the abstract machine becomes the instruction set of a concrete machine.
Sun designed the picoJava processor about 10 years ago, but it never went anywhere - there was no market for it at the time, and modern VMs render the concept pretty pointless.
Then there's the fledgling ARM Jazelle architecture.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With