What is it different from the JVM? And why did they create it? What advantage to using it?
Can you use it in mobile?
Is Oracle official? Ready for use? Do you have any restrictions?
What is it different from the JVM? And why did they create it? What advantage to using it?
Can you use it in mobile?
Is Oracle official? Ready for use? Do you have any restrictions?
Do not take my answer as definitive because I do not know it, but it is a new virtual machine infrastructure created by Oracle with some advantages over the "official" JVM. In fact it still depends on the JVM to work, but I do not know if in the future it's to be 100% independent. It's all written in Java itself, and this is already a differential.
I think GraalVM was a response to .NET Core (Why is .NET Core created? ). It is a way to reduce bureaucracy and problems in the JVM, and be more suitable for use in scenarios where the JVM is very cumbersome and not very modular, especially in the cloud, in "containerized" images.
It was created thinking better about using various languages. The JVM could do this, but it was not originally intended for this. There are performance gains because it becomes natural.
It is not just a VM. It has other parts like a new compiler and a JITter that can be used in advance to generate the native code before running, so it works more like an AOT compiler, which gives more performance (most of the time).
All this is intended to improve performance, reduce dependence on C ++ that is problematic for maintenance. This allows the use within native applications as a sort of script .
Finally, look for mechanisms to meet the new demands that the industry began to require.
As far as I know, you can use it normally in any situation where the JVM could be used before as long as you can install it. It is not the normal case of Android that has its own Java VM. I do not say that it is impossible to use it together, but it is not normal, I still do not know if it can only extend the JVM or is compatible with other VMs. In iOS you have to deploy the VM together with the application so it seems well suited and if silly was one of the reasons to create the GraalVM.
You can test it from JDK 9 and improved on JDK 10 onwards. And as far as I know can use in production yes.
Only time will tell if it will succeed.