IBM Open Enterprise SDK for Go

Build fast and scalable applications on IBM z/OS

White and blue geometric pattern

Accelerate digital transformation on z/OS

IBM® Open Enterprise SDK for Go is an industry-standard Go compiler optimized for the z/OS® platform. The Go compiler uses the latest z/Architecture® instructions to provide an exceptional implementation on the z/OS platform.

Streamline Go application development and execution on IBM Z® systems. It uses Go's modern programming practices and rich ecosystem of packages, especially for cloud-enabled applications on z/OS.

Crypto support

Extensive cryptographic algorithm support that modern applications need in order to secure data or communications.

Comprehensive libraries

A rich set of standard and third-party libraries for diverse programming tasks.

Open source and community driven

Continuously improved by a growing community, ensuring access to the latest tools and modules.

Enhanced development efficiency

Developers can use Go’s simplicity and efficiency for rapid application development, reducing time-to-market.

Use cases

Porting applications to z/OS

Port applications to z/OS by adapting existing Go applications to run on z/OS, optimizing them for its unique environment. Use the Wharf program for automatic porting to automate much of the adaptation process, making it faster and easier to migrate applications to z/OS by handling many of the necessary adjustments automatically.

Porting applications to z/OS Using Wharf for automatic porting
Database management

Use Go to establish and manage databases. Direct read and write access to Virtual Storage Access Method (VSAM) and Db2® datasets through the Go recordio module. See example creating an employee database with key-sequenced dataset (KSDS).

Access Db2 natively on z/OS with Go Direct access to VSAM databases
Go container on z/OS

Colocate Go applications with critical z/OS assets to reduce response times and increate throughput. Create and run containerized Go applications on z/OS by using containerization for deployment, scalability and management. IBM Open Enterprise SDK for Go supports IBM z/OS Container Platform 1.1 Kubernetes and several other capabilities.

An interoperability screenshot with existing business-critical applications written in COBOL and PL/I with the CGO function.
Interoperability

Go can now directly call COBOL DLL (64-bit) by using standard XPLINK protocol and COBOL (64-bit) can directly call back to Go by using XPLINK protocol. Go has utilities to handle the switch to EBCDIC and back again.

Go on z/OS interaction with COBOL
Creating RESTful servers

Develop and deploy RESTful servers and localized packages with Go without needing the internet.

Connect compiled binary programs

Use Go to call an outside script or binary program to achieve program interoperability. It allows developers to integrate Go applications with existing z/OS programs, enhancing functions and leveraging the strengths of both environments.

Porting applications to z/OS

Port applications to z/OS by adapting existing Go applications to run on z/OS, optimizing them for its unique environment. Use the Wharf program for automatic porting to automate much of the adaptation process, making it faster and easier to migrate applications to z/OS by handling many of the necessary adjustments automatically.

Porting applications to z/OS Using Wharf for automatic porting
Database management

Use Go to establish and manage databases. Direct read and write access to Virtual Storage Access Method (VSAM) and Db2® datasets through the Go recordio module. See example creating an employee database with key-sequenced dataset (KSDS).

Access Db2 natively on z/OS with Go Direct access to VSAM databases
Go container on z/OS

Colocate Go applications with critical z/OS assets to reduce response times and increate throughput. Create and run containerized Go applications on z/OS by using containerization for deployment, scalability and management. IBM Open Enterprise SDK for Go supports IBM z/OS Container Platform 1.1 Kubernetes and several other capabilities.

An interoperability screenshot with existing business-critical applications written in COBOL and PL/I with the CGO function.
Interoperability

Go can now directly call COBOL DLL (64-bit) by using standard XPLINK protocol and COBOL (64-bit) can directly call back to Go by using XPLINK protocol. Go has utilities to handle the switch to EBCDIC and back again.

Go on z/OS interaction with COBOL
Creating RESTful servers

Develop and deploy RESTful servers and localized packages with Go without needing the internet.

Connect compiled binary programs

Use Go to call an outside script or binary program to achieve program interoperability. It allows developers to integrate Go applications with existing z/OS programs, enhancing functions and leveraging the strengths of both environments.

Compare editions

The pax format is popular in UNIX environments, including z/OS UNIX System Services, and supports easy DIY installation. For streamlined management, SMP/E images and fix packs can be handled with the SMP/E tool. The SMP/E Bill of Materials also includes an entitlement memo for downloading Go container images from the IBM Cloud Container Registry.

IBM’s world-class support lets you open service requests with documented turnaround times.

Editions pax edition

pax archive installable format for a DIY installation. Use your existing IBMid for access or create one upon registration.

Try it free
SMP/E edition

SMP/E (CBPDO, ServerPac) installable format can easily manage updates. Recommended for production deployments. Available through Shopz.

How to obtain from Shopz

No license charge

Run your own applications

Full functions

Includes Go on z/OS container image

IBM Software Subscription and Support (S&S)

No

Optional

         

Technical details

IBM Open Enterprise SDK for Go is available in three installation formats, SMP/E, PAX and the Go container image.

Resources

Using Go

Learn how to use Go-based utilities to achieve faster execution and lower cost for customers.

Killer Crypto in Go

Accelerate code for crypto algorithms to make it run multiple times faster and maintain security for crypto operations.

Debug your Golang Programs

Learn how to debug a program compiled with IBM Open Enterprise SDK for Go by using z/OS debugger.

Protocol buffer with Go on z/OS

Use Protocol Buffers to serialize data and run a client-server application with gRPC in Go.

Take the next step

Discover IBM Open Enterprise SDK for Go. Schedule a no-cost 30-minute meeting with an IBM Z representative.

Try it free
More ways to explore Product documentation Support Product lifecycle Ideas portal Mainframe application modernization services