Linux and USS: Heavy hitters for zSeries
Linux is the fastest growing implementation of a UNIX based operating system in the server market. In fact, with International Data Corp. reporting Linux having 132% growth in the year 2000, it is the fastest growing server operating system produced! So what makes IBM's adoption of Linux so special? Well, for the first time, developers have the opportunity to bring their applications and tools rooted in UNIX technology to the legendary reliability of enterprise hardware manufactured by IBM. The door is now open to new and powerful uses for the mainframe.
Linux paired with over three decades of innovation and ingenuity that comprise z/OS makes the zSeries a potential host to all workloads, new and existing. The two operating systems work seamlessly alongside one another, allowing a business to leverage the strengths of each operating system on the same machine. IBM has embraced the differences between z/OS and Linux, giving developers the freedom to choose which operating system will best meet the needs of their application. For a developer, an examination of the Qualities of Service offered by Linux and z/OS is needed to make good decisions as to how each workload will be handled efficiently and effectively.
Linux on the zSeries provides new developers a familiar path to the mainframe landscape. Boasting fast development time, low development costs, a flexible application environment, and the backing of IBM, Linux is making strong headway into server environments all around the world. IBM is expediting this adoption with a commitment to invest over one-billion dollars in Linux development, service, and support in 2001. A major advantage in the effort to bring Linux to the mainframe is the ease with which existing Linux code, originally written for Intel x86-based architecture or other hardware platforms, can be ported to the IBM family. Further enhancing this portability, the top distributors such as SuSE, Turbo Linux, and Red Hat have made their distributions of Linux compatible with the zSeries platform.
UNIX System Services is essential to the e-business run time environment of z/OS. It is a key element in IBM's support for middleware and applications, and is an integral part of some of IBM's most strategic solutions such as WebSphere EE. It provides a sound and robust UNIX environment, carrying with it the qualities of service (i.e., security, availability, scalability) expected and delivered with z/OS. IBM will continue to enhance USS to support the e-business infrastructure, as well as for vendor and customer applications running on z/OS.
While there are dozens of qualities on which a comparison between the two operating systems could be based, five main categories remain paramount in the eyes of the enterprise customer. They are: Performance, Portability, Security, Availability, and Scalability.
Linux provides a thin, flexible OS with the ability to be tailored for an application-specific use. Developers have the freedom to implement services found under USS (i.e. address space isolation, memory management, and classification of work for workload and resource management) themselves. This custom-fit, with its decreased complexity, can result in increased application performance when compared to USS, as well as giving the developer the ability to implement only the services necessary to meet their requirements.
USS can provide an application with the tools necessary to perform well by letting the operating system handle tasks such as memory management at the operating system level. While not allowing application-tailored API's, USS provides refined, and tested services so developers can realize their performance requirements without having to devote development resources to the back-end functionality.
Linux gives developers a quick and efficient way to bring applications to the zSeries platform. Applications will instantly benefit from the Hardware Qualities of Service offered by zSeries and have a starting block from which working ideas can demonstrate proof-of-concept, with a goal of finally being transformed into full-fledged z/OS programs. In a server environment where short-term deadlines must be met, Linux makes an easy transition to the zSeries mainframe.
USS allows applications to benefit from the full spectrum of Qualities of Service offered by z/OS and the zSeries. The initial re-architecture of the code will be met with less hesitation once an idea is proven to be workable on a Linux image. Once running on z/OS, the application is a robust, business ready tool with the ability to natively exploit both the zSeries and any legacy data housed therein. z/OS and USS gives developers a long-term solution for porting from other platforms to the proven reliability of the zSeries.
Linux provides developers with a multithreading, multi-user operating system capable of isolating critical tasks or processes through the use of VIF (Virtual Image Facility) and VM (Virtual Machine). Pairing a single application to a single Linux image allows a developer to assure many of the levels of data integrity expected by users of the zSeries. Through the use of technologies such as LDAP (Lightweight Directory Access Protocol), multiple Linux images have access to a shared repository of user privileges and access permissions.
USS allows programmers new to the zSeries platform to work using the UNIX-Security model. This familiar environment can help the transition from a UNIX world to the enterprise mainframe. Developers can take advantage of all z/OS services and API's, such as address space isolation, to provide their application with the level of security inherent to the operating system. Data integrity is paramount in z/OS, and developers will be able to exploit this over multiple applications without the need of managing multiple images.
Linux boasts heightened availability status through attributes found in hardware, on the zSeries, alone. The zSeries has matured into a self-healing machine, boasting features such as the ability to replace faulty processors and memory with working spares on-the-fly, with no manual intervention. However, a developer must contend not only with hardware failure, but software failure as well. Right now, Linux images must be implemented with high-availability clustering software such as the package shipped with Turbo Linux for Intel that enable fast drop-and-recover of Linux images.
USS on z/OS has the built-in resiliency to ensure that the operating system, and the applications running, can recover in the event of a fault. Having processes built into the operating system decreases the dependency on clustering currently experienced by Linux. Coupled with IBM's Sysplex clustering technology, z/OS provides the developer a rock-solid and dependable platform to deploy multiple simultaneous applications.
Linux enables quick and relatively easy horizontal growth by the ability of adding more images as workload increases. Applications such as a web-server will benefit from this model without much tuning of the individual image. In this way, increased performance in times of demand can be realized using a fast and modular method of expansion. However, Linux (in its current state) is unable to scale vertically in a large SMP environment efficiently, leaving no other option then to rely on multiple images.
Developing for USS allows an application to take advantage of the vertical scalability of z/OS. In a hardware environment consisting of 8 or more processors, z/OS can easily and efficiently scale to meet demand. Also, Sysplex clustering allows z/OS to scale horizontally when the workload requirements are such.
Two powerful weapons
Linux and z/OS are very different, both in the technology they employ and in the business solutions they provide. Linux is not a replacement for z/OS or USS. It is a way to help bring new and different workloads to the IBM mainframe. It gives an IBM developer the power to use the IBM eServer in more ways than ever, consolidating dozens of UNIX or Linux machines onto the best UNIX box ever produced. Linux on the zSeries is the perfect tool for an IBM software developer to demonstrate Proof of Concept projects. Development tools such as Cprof, LTrace, and YAMD allow fast deployment in time-critical situations. These tools, and others, are available on the Linux Application Tools website at: http://www.ibm.com/servers/eserver/zseries/os/linux/ldt/.
Once the application has proven itself if it requires the full qualities of service it can be ported to the most secure, scalable, and available operating system to ever grace the big iron - z/OS. Working together, Linux and z/OS broaden the strength and scope of software for IBM's . And IBM is committed to working with customers who are looking to bring new workload to the enterprise server, either through Linux or through USS.
So, when the next project arrives at your desk, you don't have to pick your weapon Linux or z/OS you can use both. Workloads, big and small, don't stand a chance.
- Find more resources on the eServer developer domain.
- Find development tools such as Cprof, LTrace, YAMD, and others on the Linux Application Tools website at: http://www.ibm.com/servers/eserver/zseries/os/linux/ldt/.