Porting Central
Skip to main content

Porting Central


Application development and porting references

Following are references specific to porting an existing application to the System i5 family. In addition to these topics, if you are unfamiliar with the System i5 family, also see the System i5 fundamental references.

The information in every topic may not be exhaustive to provide all you need to know. Rather, it is intended is to provide you with what you need to know to be productive as quickly as possible.


Overview
C and C++
Java
UNIX-like interfaces
i5/OS-specific topics
Logical partitioning

Overview

The information in every topic may not be exhaustive to provide all you need to know. Rather, it is intended is to provide you with what you need to know to be productive as quickly as possible.

Deploying and Consolidating Solutions on IBM eServer i5 and iSeries server
This paper describes the System i5 deployment choices, outlining business and technical considerations for each. Special emphasis is on solutions ported to i5/OS.
IBM i5/OS porting methodology
This paper describes a process of taking an application originally developed for one platform and moving that application to another platform. Special emphasis is on the IBM System i5 family as a target platform.
Running AIX Applications in iSeries Environments
This presentation outlines choices available to run UNIX applications on the System i5 family. The choices are Integrated Language Environment (ILE), i5/OS PASE or a logical partition (either Linux or AIX).
IBM i5/OS PASE compatibility with IBM AIX 5L applications
This paper is intended for application architects and developers who plan to port solutions from IBM AIX operating system on the IBM i5/OS operating system. The enabling technology, i5/OS PASE), provides the ability to run many IBM AIX applications unchanged,but not always. This paper highlights the functional areas to examine when undertaking such a deployment.

C and C++
The following topics are specific to port a software solution written in C or C++ programming languages.
iSeries ILE Concepts
Discussing Integrated Language Environment (ILE) architecture, this book includes module creation, binding, the running and debugging of programs, and exception handling. The concepts pertain to all ILE languages.
Porting C/C++ Applications to an iSeries server
This presentation discusses choosing an ILE or i5/OS PASE deployment environment. Considerations include source platform and required system services. We will also evaluate editors, compilers, and debuggers.
C and C++ Lab
This lab gives you an opportunity to edit, compile, and debug C and C++ source code on the System i5 platform. You will get experience using build tools for ILE and i5/OS PASE.
Developer setup guide for porting to i5/OS ILE C/C++
This paper is a step-by-step guide to set up an ILE C/C++ programming environment that is familiar to PC and UNIX users. The uses of both a graphical client environment in Eclipse and a command-line environment on i5/OS are explained.
Deploying AIX applications in i5/OS PASE
In this lab, you will deploy and run simple AIX applications within i5/OS PASE. The lab demonstrates use of open source tools. As needed, this lab also provides information specifically related to the IBM System i5 family.
OS/400 PASE Programming Examples
This lab provides practical examples such as calling i5/OS programs from i5/OS PASE or calling i5/OS procedures from i5/OS PASE.
All ILE-related C and C++ references
This link provides guidance and reference material for the ANSI Standard C++ Library and ILE versions of the C and C++ programming languages.
Compiling your C source in i5/OS PASE
You can install one of the AIX compilers in i5/OS PASE to compile your programs on the System i, or an AIX system to compile i5/OS PASE programs.

Java
The following topics are specific to port a software solution written in Java programming language.
Java Deployment Topics
This document is written primarily for the application developer who is very familiar with Java, but less familiar with the System i5 family. It highlights Java support ISVs should be aware of when deploying a Java application to the iSeries.
Java Development Topics
This is a collection of helpful resources if you need to develop and deploy Java solutions on the System i5 family.
System i5 Java documentation
This link provides information about the IBM Developer Kit for Java, IBM Toolbox for Java, and the Qshell command environment.

UNIX-like interfaces
The following topics discuss i5/OS implementation of industry standard interfaces you are familiar with from UNIX operating systems. This is not an exhaustive list of all UNIX-like interfaces.
QSH
This link provides information about this POSIX and X/Open standards-based command interpreter that enables a common development environment.
i5/OS PASE shell and utilities
This link provides information about three PASE shells (Korn, Bourne, and C Shell) and over 200 utilities that run as i5/OS PASE programs. PASE shells and utilities provide industry-standard and defacto-standard commands.
OpenSSH
IBM Portable Utilities for i5/OS contains the OpenSSH, OpenSSL and zlib open source packages ported to i5/OS PASE runtime environment.
Understanding Perl on the System i platform
This white paper provides a history of Practical Extraction and Report Language (Perl) and its availability and flexibility for use on the IBM System i platform.
Socket programming
This link provides information on i5/OS support for this network standard in TCP/IP.
Network file system (NFS)
NFS provides the user with access to data and objects that are stored on a remote server. The System i5 family may be an NFS server or NFS client.
Bringing PHP to IBM iSeries
Though not supported by IBM, this paper provides instructions to download an open-source copy of a PHP engine to allow you to run PHP scripts on the iSeries.
Multithreaded applications
This link provides basic information on i5/OS implementation of threads, multithreaded programming techniques, debugging multithreaded jobs, performance considerations and sample programs.
OS/400 UNIX-Type APIs
This link provides a long list of varied UNIX-type programming interfaces.

i5/OS-specific topics
Some of the following topics you are likely familiar with from other operating systems. Other topics may not be immediately familiar. In either case, these are application development references to increase your programmer productivity and improve the ultimate acceptance of your solution on the System i5 family.
System Debugger
This link provides information on provides a graphical debugger. You can debug and test programs written in ILE, Java and programs i5/OS PASE.
OS/400 CL and Command Programming
This online presentation shows you how to create CL programs and CL commands. CL programs can automate repeated tasks. They are conceptually similar to UNIX shell scripts and DOS/Windows BAT files.
CL and Command Programming Lab
In this lab exercise you will create a sample CL program object. Next, you will create a CL command to call the program. Finally, you will create help text for the command.
iSeries Shared Memory Concepts
In this whitepaper you will learn several techniques to implement shared memory, including static data and heap data in a multi-threaded application, shared user spaces, and POSIX shared memory segments.
All system APIs, listed by category
This link provides a long list of varied i5/OS programming interfaces, accessible through numerous programming languages.
Distribute i5/OS application objects using CD or DVD media
This whitepaper explains support for image catalogs and virtual optical devices enabling a simple process for creating CD and DVD images.
iSeries Performance Tools for UNIX Application Developers
This whitepaper discusses performance tools available to assist in determining how well an application performs on the System i5 family. It compares UNIX-based tools to those available on the System i5 platform.
Performance management home page
This link provides information on performance capabilities, products and tools, data collection facilities, and instrumentation.

Logical partitioning
The following topics discuss how to partition (divide the physical and logical resources) of the System i5 family.
Logical Partitions on IBM PowerPC: A Guide to Working with LPAR on i5 Servers
This IBM Redbook gives a broad understanding of the POWER5 architecture as it applies to the logically partitioned System i5 platform.
AIX 5L on IBM eServer i5: Implementation Guide
This IBM Redbook discusses various aspects of AIX 5L implementation on the System i5 platform.