Running Java on iOS
Briefly

Running Java on iOS
"He told InfoQ that the concept of "One Java, that runs on any platform" remains key and that while Java remains a great option for performant, scalable and maintainable applications for backend and cloud systems, there is no reason why Java developers should not be able to use the language and ecosystem they love and are skilled at to create mobile applications."
"The project is baselining on the Zero interpreter (so called because it is written in pure C++ and contains zero platform-specific assembly code). This is one of two different interpreters that Hotspot can be configured with at build time. Most Java builds use the "template interpreter", which is based on dynamically building a dispatch table for bytecode when the JVM starts up."
""If developers write Java code, they expect that that code should run on any device that supports the same Java version. The major reason we focused on Zero in the past few months is that it allows us to stay aligned with the latest upstream OpenJDK code. Using Zero allows us to test all the JDK classes and features, and it allows to make a clear distinction between work on functionality and work on performance.""
OpenJDK Mobile reached a milestone enabling static libjvm builds so iOS binaries can execute Java code. The effort is led by a longtime Java porter with porting experience back to the Blackdown days. The initiative aims to realize a single Java runtime across platforms and to let Java developers build mobile applications using familiar languages and libraries. The project baselines on the Zero interpreter, written in pure C++ with no platform-specific assembly, allowing alignment with upstream OpenJDK and separation between functionality and performance work. Apple disallows runtime-generated assembly, excluding the template interpreter and JIT and creating performance challenges for iOS Java applications.
Read at InfoQ
Unable to calculate read time
[
|
]