The Mainframe’s Complex Relationship with Open Source Software
Many people think of open source software and the mainframe as conceptually orthogonal — they just don’t mix. In reality, the mainframe has been an important presence in the history of open source software, and it’s worth understanding the rich, if complicated, relationship between the two.
The first thing to understand in any conversation about open source and the mainframe is which operating system you’re talking about. Linux on IBM Z has been available for over 20 years, and IBM has been a supporter of the Linux Foundation from its earliest days. The first Linux kernel patches for the mainframe were published by IBM for the 2.2.13 kernel in 1999, right as the Linux Foundation was being formed. The mainframe continues to be a premier hardware platform for Linux enterprise deployments today that supports a robust ecosystem of open source software.
IBM Z supports other operating systems as well. When people talk about the mainframe, they often think about z/OS, which traces its roots back to the original IBM 360 mainframe. This is the flagship OS that runs so much of the world’s critical backend infrastructure. z/OS’ relationship with open source software is more complicated.
Many open source projects have embraced the “freemium” model — give away base functionality around which they build a robust developer ecosystem, and up-sell premium features and support to enterprise customers. Popular projects gather a following from educators and enthusiasts, some of whom join the developer population, and the whole ecosystem continues to sustain and reinforce itself.
Configurations of popular projects become the accepted means to implement classes of workloads like AI, cloud deployment, or blockchain — in some cases forming de-factor standards. Open source software practices have captured the means of innovation. For example, it would be very difficult to create a new web server today that does things much better than the dozens of projects currently available. It would be foolish to create a proprietary implementation of a new web server, because no one will pay for it.
IBM z/OS is a proprietary operating system that supports a base of enterprise customers who have written a large collection of proprietary applications over years and decades. A great deal of open source software has come to the platform as well, as today’s generation of developers have embraced the open source model. Both z/OS and the IBM Z hardware have been enhanced to include the prerequisite languages, libraries, and frameworks for these newer workloads.
The IBM Z development teams have kept up with the technical challenges of supporting open source, and done so with some very creative solutions to problems that have challenged the industry as a whole. The friction and complexity of open source software on z/OS arise from the operational policies and best practices that were created long before open source existed, and which don’t often mesh well with the OPs portion of open source DevOPs.
Operational realities on a z/OS system are fundamentally different from other platforms. The consequences of an outage or breach are greater than with nearly any other platform, and as a result, those who operate these systems are understandably quite risk-averse. This not only results in some of the most conservative operational policies in the IT industry, it affects the way software is packaged, installed, and serviced on z/OS.
There are significant challenges to overcome in reconciling the operational requirements of the mainframe with best DevOPs practices of the open source software community. The technical issues are manageable. Trust, understanding and cooperation across communities and between members in different roles is key to making progress.
There is a growing community that promotes open source software development and deployment for the mainframe where you can find lots of useful information.
The Open Mainframe Project (OMP) is a Linux Foundation effort to create an umbrella organization providing many different kinds of resources to support open source software on the mainframe. There are several sub-projects that focus on different issues — some general, and some specific.
Ambitus is sub-project focused on developers and administrators from the open source community who want to know more about what runs on the mainframe today, and how to bring their workloads to a mainframe environment.
Zowe is a key project that focuses on modernization of mainframe applications and interfaces to z/OS. There is lots of good information here for the z/OS system programmer and application developer who wants to know more about how their work fits in with the cross-platform enterprise.
The mainframe platform of today has unique capabilities and strengths that bring a great deal of value to any open-source-based enterprise workload. A lot of benefit can be realized by locating strategic workload components on z/OS and Linux on Z to make the enterprise more resilient, secure and performant. Now there is also an active expert community that architects, developers, and administrators can consult for advice, and pointers to useful resources.