Mladen Turk wrote:
The major problem is the way how the native OS abstraction layer is
called. JNI is used as a single native interface from the ground up
and didn't change much for all those years.

Almost all VMs have their own "proprietary" non-JNI native method
interface that is much more efficient. E.g., JVCM has the "JCNI"
which actually has zero overhead (this is possible because in JC
both executing Java code and JCNI native code are are just compiled
C code).

On the other hand, optimizations (such as method inlining) involving
native code are often difficult or impossible, so they still can have
an indirect cost.

-Archie

__________________________________________________________________________
Archie Cobbs      *        CTO, Awarix        *      http://www.awarix.com

Reply via email to