The Basics of COBOL Cross Compile

Organizations that want to modernize COBOL applications have a broad range of options, depending on their unique circumstances and vision of leveraging the intellectual property (IP) contained in the logic and processes of the applications. They usually consider three key factors: Cost, Risk, and Control.

Some organizations may determine the application has little future value and modernize using a replacement strategy. Others may decide that the logic and IP have a great deal of value in transformation and innovation efforts and rearchitect into a cloud application. Still, others may determine that the cost, disruption, and risk associated with transformation are best mitigated by keeping the application in COBOL and executing on the mainframe.  

Cost-Oriented Modernization Strategy

Organizations in that last category, remaining on mainframe COBOL, must still evaluate modernization alternatives because mainframe costs rise yearly at 5% or more. The focus should be on reducing or avoiding future spending on General Purpose Processors (GPP), for which its consumption is measured in Millions of Service Units (MSU). 

This modernization route is supported using IBM’s z Systems Integrated Information Processor (zIIP), an IBM specialty processor. Generally speaking, the zIIP is a less expensive environment to execute applications. But not everything is “eligible” to run on the zIIP. The good news is Java objects are zIIP-eligible, and you can transform COBOL applications into Java objects (and move their execution to the less expensive zIIP).

Therefore, the question is: How do you move COBOL into Java objects? The answer is Cross-compile.

What is Cross-compile? How can it be used to reduce costs?

Understanding the answers to these questions is key to helping you achieve cost savings in months, not years. You can mitigate risk and maintain complete control utilizing an incremental conversion mode with the right tools.

What is Cross-Compile?

Cross compile is the ability to compile executable code for a different platform. So, for our purposes, you can cross-compile COBOL code into a Java executable. This would create Java byte code that could run on any Java Virtual Machine (JVM), including the zIIP specialty engine.

Cross-compile is not new. Cross-compiled code was first used in 1979, when an ALGOL 68C program generated ZCODE to port the ALGOL 68C compiler to other platforms, like the Z80, which didn’t have the memory to compile the compiler natively. We’ve come a long way since 1979, and cross-compiling is now a time-tested tool for modernization. As we’ll see, it opens up a world of possibilities for modernization and cost savings opportunities.

The Difference Between Cross-Compile and Transpile

It’s important not to confuse cross-compile with transpile. Cross-compile creates executable code from the source for a different target system than the one the code is hosted on.

In contrast, transpile takes source code from one language and translates it to the equivalent source code in the same or another language. So, where cross-compile compiles COBOL on the mainframe to run in a JVM, transpile would theoretically take the COBOL source code as input and translate it into nearly equivalent Java source code.

While transpile can be incredibly useful, cross-compile doesn’t change the underlying source code. As we’ll see, that can result in a credible path to controlling mainframe costs.

How Cross-compile Creates Savings

The question then becomes, how does cross-compile save organizations money? When the existing COBOL code can be compiled into a JVM-ready application, businesses have options on where that code is run. They can take advantage of cloud compute or leverage zIIP within their mainframe environment.

If you are not familiar, zIIP workloads are not charged in the same way that mainframe GPP workloads are based on MSUs. The processing capacity of the zIIP is not included in the organization’s MIPS/MSUs, nor are many of the other mainframe charges applicable to zIIPs – such as license costs, upgrades, and maintenance fees. There are limits on the number of zIIPs a business can buy, although IBM increased the number from 1 zIIP per GP to 2 zIIPs per GP in 2013.

CloudFrame recommends cross-compiling COBOL applications using CloudFrame Relocate and utilizing the zIIP specialty processor to achieve cost savings.

While the cross-compiled COBOL application can still access its data (i.e., DB2, VSAM, etc.) located on the mainframe (a feature of CloudFrame products), it runs in a lower cost processing environment thus reducing the MSUs required for processing. Reducing the MSUs – especially if the 4-hour high traffic window measurement is used to calculate your mainframe billing – means lowered costs.

The critical point here is that once COBOL code is cross-compiled to Java, the executable can be run in the same environment and access the existing processes and data without massive changes or updates.

CloudFrame’s Relocate guarantees that the cross-compiled code output will match the outputs of the original source exactly (functional and data equivalence), thus limiting the amount of regression testing required to validate the new executable.

Your mainframe development process and staging management will remain the same for your COBOL developers and change management team.

Achieving the savings realized from reducing MIPS on the mainframe, organizations can begin to fund their modernization efforts without increasing their budgets and do so quickly and with minimal risk.

Conclusion

CloudFrame’s Relocate is a unique incremental modernization approach focused on cost reduction and delivering low risk and control.

The product has a straightforward implementation of both setup and use. Once installed and configured, mainframe teams can quickly define proof of concept transform COBOL applications that can result in significant savings for the organization in just months. With these initial wins and the prospect of millions of dollars in savings, it’s simple to get internal stakeholders behind further Relocate projects and funding other, more intensive modernization efforts.

Want to know more about Relocate? Download the CloudFrame Relocate factsheet today to discuss how you’re less than 90 days away from reduced mainframe bills.

FIND OUT MORE

Download cloudFrame Relocate Product Fact Sheet

Related Articles

Options for Converting from COBOL to Java

Our last post looked at the five significant benefits of Java and zIIPs, detailing how the combination can reduce cost, simplify support and maintenance, deliver

Next Event

Recent Events