Dear Power Systems clients:

We are very pleased with the response to the recent announcements on our POWER8™ products. The new POWER8 servers run both AIX 7 and AIX 6, all with binary compatibility for applications currently running on AIX 6 and AIX 5L — and AIX 7 will even run on older servers based on POWER7, POWER6, POWER5™ and POWER4™ processors. This broad support for multiple levels of the AIX operating system on multiple generations of POWER systems is the strongest ever.

Some of you would like to hear our commitment to binary compatibility directly from me. So here it is: We are offering a guarantee1 that your applications, whether written in house or supplied by an application provider, will run on AIX 7 if they currently run on AIX 6 or AIX 5L – without recompilations or modification. Even well-behaved 32-bit applications from AIX V4.1, V4.2, and V4.3 will run without recompilation.

I encourage you to find out for yourselves. We assume (and require) that these applications comply with reasonable programming standards, but if they do and the applications will not run on AIX 7, contact us. We will investigate and assign our developers to work on any binary compatibility issues. That’s how confident I am that we have done things right in AIX 7.

The unique qualities of AIX — virtualization, security, performance and quality — have won many new clients to AIX. AIX 7 will be the next step forward in the evolution of UNIX, while allowing existing AIX 6 and AIX 5L applications to continue to run. AIX is and will remain the strategic UNIX operating system for IBM.

Thank you for your continued confidence in IBM Power Systems servers and in AIX. Keeping your applications up and running is one of our primary goals. I want you to know that we have taken great care to insure that when you upgrade to AIX 7, your AIX 6 and AIX 5L applications will not only run unmodified, but you will also be able to take advantage of the new innovations in AIX 7.

Sincerely,


Doug Balog
General Manager, IBM Power Systems
IBM Systems

1 Terms and conditions apply. Customers who wish to participate in the AIX Binary Compatibility Guarantee must accept the AIX Binary Compatibility Agreement by signing and faxing the Submission Form to IBM.

The goal of AIX® binary compatibility is to allow applications created on earlier releases or technology levels of AIX to run unchanged and without recompilation on later releases or technology levels of AIX. The ability to run applications created on earlier versions of an operating system on a later level of the operating system is known in the IT industry as backward compatibility. Binary compatibility on any platform requires that the application use only portable programming techniques. A list of some non-portable programming techniques is detailed below.

AIX 7 is designed so that applications created on AIX 6 and AIX 5L can be executed on AIX V7 without recompilation. AIX 7 is planned to support POWER7™, POWER6™, POWER5™, POWER4™, and PPC970 processor systems that implement the Power Architecture platform reference architecture.

Any program that must run in all processor environments supported by AIX 7 must be compiled using the common mode or PowerPC® option of the compiler. Programs that were compiled using the original POWER mode do not need to be recompiled to operate on the supported AIX 7 processors.

Historically, few clients or ISVs have reported binary compatibility issues when moving from one release of AIX to the next. We anticipate similar results for the move to AIX 7.

All statements regarding IBM’s future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only.

Restrictions on binary compatibility

As stated earlier, binary compatibility on any platform requires that application use only portable programming techniques such as only using published interfaces and avoiding programming techniques that are processor or AIX release specific.

AIX does not support the execution of binaries created on later releases or technology levels of AIX on an earlier release or technology level of AIX. For example, execution of binaries created on the AIX V7.1 operating system (OS) would not be supported on a system running AIX V6.1 OS.

Non-portable programming techniques

Some examples of non-portable programming techniques that may affect binary compatibility include:

  • Applications compiled using a processor-specific compiler option but executed on models other than that processor
  • Non-shared compiles of AIX-shared libraries
  • Features explicitly described as non-portable by IBM in the AIX reference manuals
  • 32-bit kernel extensions, or binaries which explicitly depend on a 32-bit kernel
  • Undocumented AIX internal features
  • X11R5 Server Extensions
  • Locales based on IBM-850 code sets
  • Legacy security library interfaces executing on AIX 7 systems with long usernames enabled

Applications running on AIX releases with long usernames enabled

The AIX V5.3, AIX 6, and AIX 7 operating systems can be configured to accommodate user and group names exceeding 8 characters. Applications which have not been specifically structured to handle long user and group names and which use legacy security library interfaces with 8-character name limits or which depend on user and group names not exceeding 8 characters in length may not work correctly on systems which have been enabled for long user and group names. AIX V5.3, AIX 6, and AIX 7 commands which display user and group names will truncate user and group names to 8 characters to accommodate existing use unless command-specific options are used to display long user and group names.

Legacy Security Library Interface

Username-Enabled

Long

  • ckuserID()
  • cuserid()
  • getuinfo()
  • getuinfo_r()
  • getuserpw()
  • newpass()
  • putuserpw()
  • putuserwhist()

Alternative

  • authenticatex()
  • getpwuid()
  • getuinfox()
  • getuinfox()
  • getuserpwx()
  • newpassx()
  • putuserpwx()
  • putuserpwxhist()

X11R5/X11R6 compatibility issues on AIX Version 7

The AIX 7 X-server uses the X-Consortium release 6 of X (commonly known as X11R6). The libraries shipped by IBM with X11R6 are backward compatible and the client applications that access these libraries work as on AIX 4, AIX 5L and AIX 6. As on AIX 4, AIX 5L, and AIX 6, IBM will also ship X11R3, X11R4, X11R5 compatibility installation options for maximum flexibility.

The majority of applications using X fall into this category and will not cause any difficulty. However, a small number of X-applications use the loadable extension facility provided by the X-server.

The X-server allows for the addition of new functionality through its extension mechanism. For each extension, part of the extension is loaded into the X-server before it can be executed. X11R6 has modified how this mechanism works in the course of improvements to X, and it is this part of the extension that must be made compatible with X11R6 to execute properly. All extensions supplied by IBM have been made compatible. In some circumstances, you may have an extension that does not work with X11R6; for example:

  • Sample extension downloaded from the X-Consortium FTP site
  • End user-developed extension
  • Third-party extension

In these cases, the extension needs to be made compatible with X11R6 before it executes properly. End user-developed extensions and sample X consortium extensions need to be recompiled with the X11R6 environment. For third-party extensions, contact the vendor for a X11R6-compatible update.

If you use non-IBM display adapters, you may also be using vendor supplied software specific to those devices that uses X11R6 server capabilities. If so, this software must be compatible with X11R6 to operate properly. Contact the vendor of the display adapter for this software.

32-bit device drivers and kernel extensions

Beginning with AIX 6, the AIX operating system simplified its kernel environment by providing only the 64-bit kernel. AIX 6 and AIX 7 maintain application binary compatibility with previous AIX versions as specified above, but device drivers and kernel extensions that are 32-bit only are not supported on AIX 6 or AIX 7. Dual-mode (32/64 bit) kernel extensions built on AIX 5L will continue to run on AIX 6 and AIX 7, but only in 64-bit mode.

Application binary compatibility for specific prior AIX releases

Applications from AIX 5L and AIX 6 releases

AIX 7 is designed so that 32-bit and 64-bit applications created on AIX 5L and AIX 6 can be executed on AIX 7 without recompilation as long as those applications do not use non-portable programming techniques such as are listed above.

32-bit applications from AIX Version 4 releases

32-bit applications compiled on AIX 4 can be executed on AIX 7 as long as those applications do not use non-portable programming techniques such as are listed above.

64-bit applications from AIX Version 4 releases

Any 64-bit applications compiled on AIX 4 are not binary compatible with the AIX 5L, AIX 6, or AIX 7 operating systems. AIX 5L, AIX 6, and AIX 7 are source compatible with 64-bit applications created on AIX 4. These applications need to be recompiled on a system running AIX 5L, AIX 6, or AIX 7.

Applications from AIX Versions 3

32-bit applications created on AIX V3.2 or later AIX 3 releases can be executed on AIX 7 without recompilation.

IBM has a long history of allowing applications created on earlier releases or technology levels of AIX to run unchanged and without recompilation on later releases or technology levels of AIX. This capability has allowed you to take advantage of new AIX releases without having to recompile your applications.

The AIX 7 release continues this legacy of binary compatibility by allowing clients to run applications created on AIX V5 (and in some cases, earlier AIX releases) without recompiling the application.

IBM underscores this commitment to binary compatibility by providing a binary compatibility guarantee for clients moving up to AIX 7 from previous AIX releases.
The terms and conditions of the guarantee are available in the AIX Binary Compatibility Guarantee Agreement and Submission Form below. In general, the guarantee provides that 32-bit or 64-bit applications that are well-behaved and do not use non-portable programming techniques can be executed on AIX 6 without recompilation if they executed on AIX 6 or AIX 5L.

The guarantee also provides that well behaved 32-bit applications that execute on AIX V4.1, V4.2, or V4.3 can be executed on AIX 7 without recompilation.

Submission process

The submission process uses the existing IBM AIX support infrastructure to resolve binary compatibility issues. To be eligible for the AIX Binary Compatibility Guarantee, you must read and accept the terms and conditions of the AIX Binary Compatibility Guarantee Agreement according to this process.

  • Read the AIX Binary Compatibility Guarantee Agreement (available in multiple languages).
  • Open a Problem Management Record (PMR) with IBM AIX support using your normal procedures. You must have a valid Software Maintenance Agreement in place to submit a claim under the AIX Binary Compatibility Guarantee.
  • After opening a PMR, fill out the submission form available below. Be sure to include the PMR number obtained in step 2 on the form.
  • Sign and fax the completed submission form to the number included on the form. All submissions must be in English.
  • The IBM AIX support team will provide support for your binary compatibility issues through the normal support process.