Rollins Software

Quality AS/400 Programming and Support

 
About the AS/400 PDF Print E-mail

On June 21, 1988, IBM introduced the Application System/400 (AS/400), a new family of easy-to-use computers designed for small and intermediate-sized companies. As part of the worldwide introduction, IBM and IBM Business Partners worldwide rolled out more than 1,000 software packages in the biggest simultaneous applications announcement in computer history.

Seen here are the AS/400 B-series models (IBM 9404 and IBM 9406), which illustrate the varying sizes and configurations available in the initial offering.

The AS/400 quickly became one of the world's most popular business computing systems. By 1997, IBM had shipped nearly a half-million AS/400s. The 400,000th AS/400 was presented on October 9, 1996, in Rochester, Minn., to Greg LeMond, the three-time winner of the Tour de France bicycle race and a small business entrepreneur.

The AS/400 family was succeeded in 2000 by the IBM eServer iSeries -- high-performance, integrated business servers for mid-market companies.

 

 

Summary

The AS/400 was introduced in 1988 by IBM as a minicomputer for general business and departmental use. It underwent several rebrandings until its last rebrand in 2000 to the name of IBM System i. It remained in production until April 2008 when it was replaced by the IBM Power Systems line. It uses an object-based library-based operating system called IBM i. The operating system also suffered rebrandings in accordance to the name changes of the general line. At first it was called OS/400 (following the name schema that gave birth to OS/2 and OS/390). Later on became known as i5/OS in line with the introduction of the powerful eServer i5 servers featuring POWER5 processors. Finally, it was called just IBM i coinciding with the 6.1 release.

Features include a DBMS (DB2/400), a menu-driven interface, multi-user support, dumb terminal support (IBM 5250), printers, as well as security, communications and web-based; which could be programmed either inside the (optional) IBM WebSphere application server or in PHP/MySQL[1] using a native port of the Apache web server.

While in Unix-like systems everything is a file, on the System i everything is an object, with built-in persistence and garbage collection. It also offers Unix-like file directories using the Integrated File System. Java compatibility is implemented through a native port of the Java virtual machine.

Features

The IBM System i platform extended the System/38 architecture of an object-based system with an integrated DB2 database that was designed to implement E. F. Codd's relational database model, which is based on Codd's 12 rules, in the operating system and hardware. Equally important were the virtual machine and single-level storage concepts which established the platform as an advanced business computer.

Instruction set

One feature that contributes to the longevity of the IBM System i platform is its high-level instruction set (called TIMI for "Technology Independent Machine Interface" by IBM), which allows application programs to take advantage of advances in hardware and software without recompilation. TIMI is a virtual instruction set; it is not the instruction set of the underlying CPU. User-mode programs contain both TIMI instructions and the machine instructions of the CPU, thus ensuring hardware independence. This is conceptually somewhat similar to the virtual machine architecture of programming environments such as Smalltalk, Java and .NET. The key difference is that it is embedded so deeply into the AS/400's design as to make applications effectively binary-compatible across different processor families.

Note that, unlike some other virtual-machine architectures in which the virtual instructions are interpreted at runtime, TIMI instructions are never interpreted. They constitute an intermediate compile time step and are translated into the processor's instruction set as the final compilation step. The TIMI instructions are stored within the final program object, in addition to the executable machine instructions. This is how application objects compiled on one processor family (e.g., the original CISC AS/400 48-bit processors) could be moved to a new processor (e.g., PowerPC 64-bit) without re-compilation. An application was saved from the older 48-bit platform and restored onto the new 64-bit platform, where the operating system discarded the old machine instructions and re-translated the TIMI instructions into 64-bit instructions for the new processor.

The IBM System i's instruction set defines all pointers as 128-bit. This was an original design feature of the System/38 (S/38) in the mid 1970s. For PowerPC processors, the virtual address resides in the rightmost 64 bits of a pointer (48 bits in the S/38 and CISC AS/400), leaving room for addresses to be expanded past 64 bits in future processors. The 64-bit address space addresses all of main memory and disk (the single-level storage concept).

The original AS/400 CISC models used the same 48-bit address space as the S/38. This was expanded to 64-bits in 1995 when the PowerPC RISC 64-bit CPU processor replaced the 48-bit CISC processor.

Software

The IBM System i includes an extensive library-based operating system, i5/OS, and is also capable of supporting multiple instances of AIX, Linux, Lotus Domino, Microsoft Windows 2000 and Windows Server 2003. While i5/OS, AIX, Linux and Lotus Domino are supported on the POWER processors, Windows is supported with either single-processor internal blade servers (IXS) or externally-linked multiple-processor servers (IXA and iSCSI). iSCSI also provides support for attachment of IBM Bladecenters. Windows, Linux, and VMWare ESX(VI3) are supported on iSCSI attached servers.

LPAR (Logical PARtitioning), a feature introduced from IBM's mainframe computers, facilitates running multiple operating systems simultaneously on one IBM System i unit. A system configured with LPAR can run various operating systems on separate partitions while ensuring that one OS cannot run over the memory or resources of another. Each LPAR is given a portion of system resources (memory, hard disk space, and CPU time) via a system of weights that determines where unused resources are allocated at any given time. The operating systems supported (and commonly used) under the LPAR scheme are i5/OS, AIX, and Linux.

Other features include an integrated DB2 database management system, a menu-driven interface, multi-user support, non-programmable terminals (IBM 5250) and printers, security, communications, client-server and web-based applications. Much of the software necessary to run the IBM System i is included and integrated into the base operating system.

The IBM System i also supports common client-server-based technologies such as ODBC and JDBC for accessing its database from client software such as Java, Microsoft .NET languages and others.

The IBM System i also provides an environment for AIX applications to run natively on i5/OS without the need for an AIX LPAR.

AIX programs are binary compatible with OS/400 when using OS/400's PASE (Portable Applications System Environment). PASE is essentially "an operating system within an operating system", supporting the most recent stable version of AIX. Binaries need to be re-compiled on the AIX system, with 16-bit (quadword) pointer alignment enabled. Once the program is compiled with this option, it can be executed under the PASE Korn Shell.

Programming

Programming languages available for the AS/400 include RPG, assembly language, C, C++, Pascal, Java, EGL , Perl, Smalltalk, COBOL, SQL, BASIC, PHP, PL/I, Python and REXX. Several CASE tools are available: AllFusion Plex (see *Plex Wiki), ADELIA, Synon, AS/SET, IBM Rational Business Developer Extension, LANSA and ProGen Plus.

The IBM System i fully supports the Java language, including a 32-bit Java Virtual Machine (JVM) and a 64-bit JVM.

Commands in the Control Language (CL) are promptable using the keyboard F4 function key, and most provide cursor-sensitive help to make specifying command parameters simpler. All command names and parameter keywords are based upon uniform standardized and mostly 3-letter abbreviations for verbs and subjects, making for easy rendering and interpretation by the application developer, as opposed to other operating systems with often cryptic or inconsistent command names for related functions or command parameter switches. For instance, the parameter keyword to apply a text description to any object to be created or changed is spelled the same way for all such commands.

Examples:

  • CRTUSRPRF - Create user profile

  • DSPUSRPRF, CHGUSRPRF, DLTUSRPRF - Display, change, and delete user profile

  • DLTLIB - Delete library

  • CRTLIB, DSPLIB, CHGLIB - Create, display, and change a library

  • ADDLIBLE, CHGLIBL - Add to or change library list

  • CPYF, CRTF, DSPF, CHGF, DLTF - Copy, create, display, change, and delete file

  • WRKACTJOB - Work with Active Jobs

  • WRKSYSSTS - Work with System Status

  • STRSST, STRPASTHR, STRSBS - Start System Service Tools, start pass through (remote login), start subsystem

  • VRYCFG - Vary configuration, bring interfaces up or down

  • PWRDWNSYS - Power Down System

  • WRKSPLF - Work with spool files

For traditional business programming languages such as RPG, COBOL, and C, the IBM System i provides an interface to the integrated database that allows these languages to treat database files much like other platforms treat ISAM or VSAM files.

Support for 5250 display operations is provided via display files, an interface between workstations, keyboards and displays, and interactive applications, as opposed to batch processing with little or no user interaction. ASCII terminals and PC workstations are equally and well supported, also via internet or LAN network access supplemented by either IBM or non-IBM communication software, for example TELNET or TELNET 5250.

History

The IBM System i, then known as the AS/400, was the continuation of the System/38 database machine architecture (announced by IBM in October 1978 and delivered in August 1979). The AS/400 removed capability-based addressing.[2] The AS/400 added source compatibility with the System/36 combining the two primary computers manufactured by the IBM Rochester plant. The System/36 was IBM's most successful mini-computer but the architecture had reached its limit. The first AS/400 systems (known by the development code names Silverlake and Olympic) were delivered in 1988, and the product line has been refreshed continually since then. The programmers who worked on OS/400, the operating system of the AS/400, did not have a UNIX background. Dr Frank Soltis, the chief architect, says that this is the main difference between this and any other operating system.

The AS/400 was the first general-purpose computer system to attain a C2 security rating from the NSA, and in 1995 was extended to employ a 64-bit processor and operating system.

In 2000 IBM renamed the AS/400 to iSeries, as part of its e-Server branding initiative. The product line was further extended in 2004 with the introduction of the i5 servers, the first to use the IBM POWER5 processor. The architecture of the system allows for future implementation of 128-bit processors when they become available. Existing applications can use the new hardware without modification.

Although announced in 1988, the AS/400 remains IBM's most recent major architectural shift that was developed wholly internally. Since the arrival of Lou Gerstner in 1993, IBM has viewed such colossal internal developments as too risky. Instead, IBM now prefers to make key product strides through acquisition -- e.g., the takeovers of Lotus Software and Rational Software -- and to support the development of open standards, particularly Linux. It is noteworthy that after the departure of CEO John Akers in 1993, when IBM looked likely to be split up, Bill Gates commented that the only part of IBM that Microsoft would be interested in was the AS/400 division. (At the time, many of Microsoft's internal systems ran on the AS/400 platform.[3])

Hardware

The AS/400 was originally based on a custom IBM CISC CPU which used a CPU architecture known as Internal MicroProgrammed Interface (IMPI) and an instruction set similar to the IBM 370. It was later migrated to a POWER-based RISC CPU family eventually known as RS64.[4]

CPU in AS/400, iSeries, i5

The System i5 uses IBM POWER CPUs. These CPUs are developed and manufactured by IBM. The POWER 4/5/5+ chips contain two cores. There are Multi-Chip Modules (MCM) available. They have 2 CPUs (4 cores) or 4 CPUs (8 cores) in one MCM.

CPU

Year

Clock Speed

Server-Model

Cobra (A10)

since 1995

55 or 75 MHz

Model: 4xx, 5xx

Muskie (A25/A30)

since 1995

125 or 154 MHz

Model: 53x

Apache (RS64) (A35)

since 1997

125 MHz

Model: 6xx, 150

NorthStar (RS64 II)

since 1998

200, 255 or 262 MHz

Model: 170, 250, 7xx, 650, S40, SB1[5]

Pulsar (RS64 III)

since 1999

450 MHz

Model: 270, 820

IStar

since 2000

400, 500, 540 or 600 MHz

Model: 820, 830, 840, SB2, SB3

SStar (RS64 IV)

since 2001

540, 600 or 750 MHz

Model: 270, 800, 810, 820, 830, 840

POWER4

since 2002

1.3 GHz

Model: 890

POWER4

since 2003

1.1 or 1.3 GHz

Model: 825, 870

POWER5

since 2005

1.5 or 1.65 GHz

Model: i5-520; i5-550; i5-570; i5-595

POWER5

since 2006

1.9 GHz

Model: i5-595

POWER5+

since 2006

1.9 GHz
2.2 GHz

Model: i5-520, i5-550, i5-515, i5-525
Model: i5-570

POWER6

since 2007

4.0 GHz
4.7 GHz

Model: BladeCenter JS22, JS12
Model: i5-570 (MMA)
Models: M50, M25 & M15

Models of AS/400, iSeries, i5 systems

Model

Year

CPU Group

Base - CPW

B10, B20, B30, B35, B40, B45, B50, B60, B70

1988, 1989

P10, P20

2,9 - 20

C04, C06, C10, C20, C25

1990

P10

3,1 - 6,1

D02, D04, D06, D10, D20, D25, D35, D45, D50, D60, D70, D80

1991

P10, P20, P30

3,8 - 56,6

E02, E04, E06, E10, E20, E25, E35, E45, E50, E60, E70, E80, E90, E95

1992

P10, P20, P30, P40

4,5 - 116,6

F02, F04, F06, F10, F20, F25, F35, F45, F50, F60, F70, F80, F90, F95, F97

1993

P05, P10, P20, P30, P40

5,5 - 177,4

P01, P02, P03

1993, 1994, 1995

P05

7,3 - 16,8

150

1996

P05

10,9 - 35,0

S10, S20, S30, S40

1997

P05, P10, P20, P30, P40, P50

45,4 - 4550

SB1, SB2, SB3

1997, 2000

P30, P40

1794 - 16500

10S, 100, 135, 140

1995, 1993

P05, P10, P20

17,1 - 65,6

170

1998

P05, P10, P20,

30 - 1090

200, 20S, 236

1994

P05, P10

7,3 - 17,1

250

2000

P05

50 - 75

270

2000

P05, P10, P20

50 - 2350

300, 30S, 310

1994

P10, P20, P30, P40

11,6 - 177,4

400, 40S, 436

1995

P05, P10

13,8 - 91,0

500, 50S, 510, 530, 53S

1995

P10, P20, P30, P40

18,7 - 650

600, 620, 640, 650

1997

P05, P10, P20, P30, P40, P50

22,7 - 4550

720

1999

P10, P20, P30

240 - 1600

730

1999

P20, P30, P40

560 - 2890

740

1999

P40, P50

3660 - 4550

800

2003

P05, P10

300 - 950

810

2003

P10, P20

750 - 2700

820

2000, 2001

P05, P10, P20, P30, P40

100 - 3700

825

2003

P30

3600 - 6600

830

2000, 2002

P20, P30, P40, P50

1850 - 7350

840

2000,2001,2002

P40, P50

10000 - 20200

870

2002

P40, P50

7700 - 20000

890

2002

P50, P60

20000 - 37400

520

2004 - 2006

P05, P10, P20

500 - 7100

550

2004 - 2006

P20

3300 - 14000

570

2004 - 2006

P30, P40

3300 - 58500

595

2004 - 2006

P50, P60

24500 - 216000

515

2007

P05

3800 - 7100

525

2007

P10

3800 - 7100

570

2007

P40

16700 - 58500

MMA (9406)

2007

P30

5500 - 76900

M15

2008

P05

4300

M25

2008

P10

4300 - 8300

M50

2008

P20

4800 - 18000

MMA (9117)

2008

P30

8150 - 76900

JS22

2008

P10

13800

JS12

2008

P05

7100