Native COBOL compared with JVM COBOL

Native COBOL and JVM COBOL differ in how they compile and how the run-time management services, such as security, threading and memory management are provided.

JVM COBOL for JVM compiles to Java bytecode, and native COBOL compiles to machine code. Both JVM COBOL and native COBOL can run on any supported platform when compiled.

For JVM code, the management services are provided by JVM. For native COBOL, the management services are available in the operating system, and your code has to call the appropriate services depending on the operating system. The management services enable seamless interoperation of COBOL programs with programs in other JVM languages.

Building native and JVM COBOL applications

In the IDE (if you have Visual COBOL for Eclipse installed on a local machine) you can develop, compile and debug your applications, for both native and JVM COBOL.

When using Visual COBOL Development Hub in standalone scenarios, you use the command line to compile your native or JVM COBOL.

You can write new COBOL code or you can recompile existing COBOL as JVM COBOL or native code, potentially without any code changes.

You can deploy and further debug the native application under the run-time system provided by COBOL Server. JVM COBOL applications are deployed to the platform running the JVM.