64-bit Native COBOL Programming

Restriction: The following information applies to native COBOL only.

For information about JVM COBOL applications running on a 64-bit platform, see 64-Bit Applications in the .NET Environment.

As 64-bit architecture is becoming increasingly prevalent, the consideration of moving towards producing 64-bit applications is also increasing. Many of the major operating system vendors now default to 64-bit support, and whilst still supporting the running of 32-bit applications, have signalled intent to stop supporting the building of 32-bit applications on future platforms. In fact, certain platforms (for example, SUSE SLES 12, service pack 2) are only supported in 64-bit by Micro Focus products.

Enterprise Developer makes it easy for you to take advantage of the benefits that 64-bit programming offers. The IDE and command line tools both enable you to compile your source code to target both a 64-bit and a 32-bit run-time environment, and Enterprise Server provides both a 32-bit and 64-bit execution environment.

Existing 32-bit applications (applications compiled with the 32-bit Compiler) can still run in a 64-bit run-time environment, but they will not be taking advantage of the benefits of 64-bit programming. When you compile a native COBOL program with the 64-bit Compiler, its elements are addressed using 64-bit pointers, which enables you to point to virtual address ranges in memory that are greater than 4GB in size (a limit of 32-bit pointers). The increased range can result in significantly improved processing times for certain types of programs (for example, computational programs). 64-bit programs are only designed to run in 64-bit run-time environments.

If you intend to transition your existing code to a 64-bit environment, Enterprise Developer contains a number of features that help make it easier, such as prototyping of library routines..

There are other considerations when preparing to move your applications to a 64-bit environment, such as the compatibility of third-party applications, plugins, hardware, etc.... You will almost certainly need to ensure that a 64-bit driver is used to interact with that software or hardware; for example, if connecting to a database or printer, you will now need a 64-bit driver in order to interact. This consideration is not just limited to Enterprise Developer, but when moving to a 64-bit environment as a whole.