Porting Central
Skip to main content

Porting Central


SystemsSystem iSystem pSystem xSystem z
Introduction  |   Linux  |   Other operating environments

Porting

Tailoring Porting Infrastructure General References Java Debug/Performance

Porting


Porting from another UNIX platform to an pSeries server, is the most common type of porting. Here we provide information for porting from other UNIX platforms, including some specific material geared for migrating applications from Sun Solaris. We also address the migration of Java applications to the pSeries platform. As Java is often more portable across platforms, many of the references below focus on porting C and C++ applications which may encounter more tricky issues. Our porting team has gathered together this set of resources to help you with porting from other UNIX platforms such as Solaris, HP-UX, and Compaq Tru64. We also include some resources specifically comparing AIX 5L and Windows 2000. The UNIX-oriented resources are also generally applicable to migration of C/C++ or Java applications on the Windows platform to pSeries servers. Many other reference books, other than those listed here, are available on the IBM Redbooks Web site. Also, please see the IBM Redbooks Portal for pSeries Web site. A good general third-party resource for AIX is available at the RootVG.net Web site.

We have divided up the resources into the following categories:

For porting Linux applications to POWER Linux on pSeries, use the pSeries Linux section of this site.

General Porting Guides

Code samples, porting tools and AIX documentation

Java applications

Java applications promise cross platform portability, though there may be some platform-specific changes you may need or want to make in order to achieve optimal performance. IBM's core Java APIs are identical to those from Sun. We provide the following resources for Java applications, both general to all IBM eServer platforms and also specific to the pSeries platform (AIX and Linux).

Application Servers and Debugging/Analysis tools for Java (AIX and other platforms):

Debugging and Performance Tuning

There is also an IBM tool on AIX which is called the Performance Toolbox that helps to pinpoint performance issues.

The following third-party tools are available for debugging:

Third-party debugging tools

  • Insure++ from ParaSoft.
    Insure++ is a comprehensive debugging and code analysis tool. It consists of a code instrumentation front end that you need to compile your code with. This tool analyzes your code against a known set of memory (and other) problems and instruments the code such that messages for any detected errors show up at runtime. The tool supports both C and C++.
    The types of error/warning messages that show up at runtime can be customized. The messages can be displayed either in a graphical tool (Insra) or to standard error.
    It is also possible to compile the code with IBM's VisualAge C/C++ compiler and then link with Insure++. An application built in this fashion connects to a graphical tool and memory usage is shown graphically in time. Memory that is suspected to be leaked is shown in one color, while allocated and free memory are shown in other colors. To help locate the source of the leak, the code has to be compiled and linked with Insure++.
    tca is a code coverage analyzer tool that is part of Insure++. When an application that has been compiled and linked with Insure is executed, it creates log files that can then be analyzed by tca for code coverage. This is a useful tool during testing when you need to create various metrics for code coverage.
  • ZeroFault (from The Kernel Group, now a part of VERITAS).
    ZeroFault detects and eliminates memory errors and leaks in any AIX program. It evaluates instruction and system calls, and can detect memory errors and leaks in the program's runtime environment as well.
  • GreatCircle from Geodesic.
    Great Circle® is an advanced debugging environment that diagnoses and resolves memory problems. It finds errors such as excessive application memory use and errors that could cause a crash of the application. It is a fast diagnostic tool that can also profile an application's memory use in real time and even detect third-party errors.

System Administration

 

 
  Topics
Overview
Porting
Infrastructure
Tailoring
Highlights
IBM WebSphere Developer Domain
IBM Systems and Linux