IBM System i

From Wikipedia, the free encyclopedia

i5 Model 570 (2006)
Enlarge
i5 Model 570 (2006)

The Application System/400 (also known as AS/400), now System i (also known as iSeries), is a type of computer produced by IBM. It was first produced in 1988. It was then renamed to the eServer iSeries in 2000 as part of IBM's e-Server branding initiative. Now with the global move of the server and storage brands to the System brand with the Systems Agenda, the family has been renamed to System i in 2006, with the POWER5-based members of the series being called the System i5.

Contents

[edit] Features

The AS/400 is 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.

[edit] Instruction set

The AS/400 and its successors survive because their instruction set (called TIMI for "Technology Independent Machine Interface" by IBM) allows the operating system and 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. All user-mode programs are stored as TIMI instructions, which means that it is not possible for them to use the instruction set of the underlying 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 all applications and even the bulk of its operating systems 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 a program compiled on one processor family (e.g. the original CISC AS/400 processors) can be moved to a new processor (e.g. PowerPC) without re-compilation. The program is saved from the old machine and restored onto the new machine, whereupon the operating system discards the old machine instructions and re-translates the TIMI instructions into machine instructions for the new processor.

The AS/400's instruction set defines all pointers as 128-bit. This is one of the surviving features of the System/38, which used the 128-bit address space to enable all devices, including disk and tape storage, to be directly addressable.

The S/38 used 48 bit addressing. This was expanded to 64 bits with the original release of the AS/400.

[edit] I/O architecture

An AS/400 system is actually an intelligent network of computers: database I/O is handled not by direct constant intervention of the CPU, but instead by processors dedicated to database and "channel" I/O. Likewise, the interactive terminal sessions are offloaded to a workstation processor. In this way, the apparently low-power/low clock-speed CPU is really not a limiting factor in the overall performance of the system - and performance can be modified to meet requirements: no terminal I/O processors and more disk subsystem for a dedicated web server, for example.

[edit] Software

Here Debian Linux is running natively on an iSeries Logical Partition.
Enlarge
Here Debian Linux is running natively on an iSeries Logical Partition.

The AS/400 includes an extensive library-based operating system, OS/400, and is also capable of supporting multiple instances of AIX, Linux, Microsoft Windows 2000 and Windows Server 2003. While OS/400, AIX and Linux are supported on the POWER processors, Windows is supported with either single-processor internal blade servers (IXS) or externally-linked multiple-processor servers (IXA).

LPAR (Logical PARtitioning), a feature introduced from IBM's mainframe computers, facilitates running multiple operating systems simultaneously on one AS/400 unit. A system setup with LPAR can even run different operating systems on different 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 OS/400, AIX and Linux.

Other features include an extremely fast database management system, a menu-driven interface, multi-user support, terminals (IBM 5250) and printers, security, communications, client-server and web-based applications. All software necessary to run the AS/400 is included and integrated. More than 2,500 business software applications were available when the first AS/400 was delivered in 1988. Applications can run without modification on any model in the product line, from small, single-processor machines up to those with 64 multi-core CPUs.

The later generations of the AS/400 - the iSeries and System i servers - also support common client-server-based technologies such as ODBC and JDBC for accessing its database from client-based software, created with languages such as Java, Microsoft .NET languages and others.

[edit] Programming

Programming languages available for the AS/400 include RPG, assembly language, C, C++, Java, Smalltalk, COBOL, SQL, BASIC, PHP, PL/I, and REXX. Several CASE tools are available: AllFusion Plex (see *Plex Wiki), Synon, AS/SET, LANSA, ProGen Plus and Magic EDeveloper.

Commands in the Control Language (CL) are promptable and most provide cursor-sensitive help to make entering parameters easier. A command name consists of a three-letter verb and a subject part, also referred to as a noun. Some command names provide a "modifier" as well. This is intended to make it easy to understand CL code.

Examples:

  • CRTUSRPRF - Create (verb) user (modifier) profile (noun)
  • DLTLIB - Delete (verb) library (noun)
  • CPYF - Copy file
  • WRKACTJOB - Work with Active Jobs
  • WRKSYSSTS - Work with System Status

For traditional business programming languages such as RPG, COBOL, C and SQL, the AS/400 has support for external files, display files and object-oriented programming, which allows for increased programming productivity. It also supports Unix-like file directories, support for Java, client-server technologies and a native Apache web server, for multi-tier applications.

[edit] Integrated language environment

Despite the lack of a "Unixy" background, the AS/400 has, over the years, picked up the programming/runtime model found on Unix, Linux, and Windows systems. Traditional AS/400 programming is a "one-stop shop", where a programmer writes computer code, compiles the code, and then executes the code. There is no link step that is found in other environments.

However, in 1995, that changed. IBM re-christened the one-stop shop programming style "OPM" (for Original Programming Model) and introduced a new language paradigm called "ILE" (for Integrated Language Environment). ILE had significant enhancements over OPM, including the ability to create modules (similar to .obj or .lib files), and then bind (link) the modules together into a single executable. The executable could be created as a program or a service program (service programs are similar to .lib or .dll files).

The real power of the ILE environment is in the "integrated" aspect, however. Modules in ILE-compliant languages (RPG, COBOL, C, C++, and CL) could be created and bound together. For the first time, AS/400 programmers could exploit the strengths of multiple ILE-compliant languages in a single program. Also, with the introduction of service programs, standard routines could be externalized more easily, and modularity increased. To ensure proper migration to the ILE environment, OPM RPG and COBOL programs could be migrated to ILE easily.

The iSeries fully supports the Java language, including a 64-bit JVM that is implemented below the Operating System layer, closer to the hardware for superior performance. With i5/OS V5R4 there is now a 32-bit JVM that is also supported.

[edit] History

The AS/400 is a continuation of the System/38 database machine architecture (announced by IBM in October 1978 and delivered in August 1979). The AS/400 added source compatibility with the System/36 combining the two primary computers manufactured by the IBM Rochester plant. The System/36 had been IBMs 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 programs will 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 [citation needed].)

[edit] 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.[1]

[edit] 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 4 CPU (8 cores) or 8 CPUs (16 cores) in one MCM.

CPU Year Speed Server-Model
Cobra (A10) since 1995 55 or 75MHz Model: 4xx, 5xx
Muskie (A25/A30) since 1995 125 or 154MHz Model: 53x
Apache (RS64) (A35) since 1997 125MHz Model: 6xx, 150
NorthStar; (RS64 II) since 1998 200, 255 or 262MHz Model: 170, 250, 7xx
Pulsar (RS64 III) since 1999 450MHz Model: 270, 820
IStar since 2000 400, 500, 540 or 600MHz Model: 820, 830, 840, SB2, SB3
SStar (RS64 IV) since 2001 540, 600 or 750MHz Model: 270, 800, 810, 820, 830, 840
POWER4 since 2002 1.3 GHz Model: 890
POWER4 since 2003 1.1 or 1.3GHz 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
Model: i5-570

[edit] Models of AS/400, iSeries, i5 systems

Model Year CPU Group Base - CPW OS/400 Release
B10,B20,B30,B35,B40,B45,B50,B60,B70 1988, 1989 P10, P20 2,9 - 20 V1R1 - V2R1
C04,C06,C10,C20,C25 1990 P10 3,1 - 6,1 V1R1 - V2R1
D02,D04,D06,D10,D20,D25,D35,D45,D50,D60,D70,D80 1991 P10,P20,P30 3,8 - 56,6 V2R2, V2R3
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 V2R3
P01, P02, P03 1993, 1994, 1995 P05 7,3 - 16,8 ?
150 1996 P05 10,9 - 35,0 V4R1
S10, S20, S30, S40 1997 P05, P10, P20, P30, P40, P50 45,4 - 4550 V4R1, V4R2, V4R3
SB1, SB2, SB3 1997, 2000 P30, P40 1794 - 16500 V4R1, V4R3
10S, 100, 135, 140 1995, 1993 P05, P10, P20 17,1 - 65,6 ?
170 1998 P05,P10,P20, 30 - 1090 V4R2
200, 20S, 236 1994 P05, P10 7,3 - 17,1 V3R0M5 (on model 236:V3R2)
250 2000 P05 50 - 75 V4R5
270 2000 P05, P10, P20 50 - 2350 V4R5 oder V5R1
300, 30S, 310 1994 P10,P20,P30,P40 11,6 - 177,4 V3R0M5 - V3R2
400, 40S, 436 1995 P05, P10 13,8 - 91,0 V3R6
500, 50S, 510, 530, 53S 1995 P10, P20, P30, P40 18,7 - 650 V3R6 - V4R3
600, 620, 640, 650 1997 P05, P10, P20, P30, P40, P50 22,7 - 4550 V4R1 - V4R3
720 1999 P10,P20,P30 240 - 1600 V4R3 - V5R1
730 1999 P20,P30,P40 560 - 2890 V4R3 - V5R1
740 1999 P40,P50 3660 - 4550 V4R3 - V5R1
800 2003 P05,P10 300 - 950 V5R2
810 2003 P10, P20 750 - 2700 V5R2
820 2000, 2001 P05,P10,P20,P30,P40 100 - 3700 V4R5, V5R1
825 2003 P30 3600 - 6600 V5R2
830 2000, 2002 P20,P30,P40,P50 1850 - 7350 V4R5, V5R1
840 2000,2001,2002 P40, P50 10000 - 20200 V4R5, V5R1
870 2002 P40,P50 7700 - 20000 V5R2
890 2002 P50, P60 20000 - 37400 V5R2
520 2004 - 2006 P05, P10, P20 500 - 7100 V5R3, V5R4
550 2004 - 2006 P20 3300 - 14000 V5R3, V5R4
570 2004 - 2006 P30, P40 3300 - 58500 V5R3, V5R4
595 2004 - 2006 P50, P60 24500 - 184000 V5R3, V5R4

[edit] See also

[edit] References

  1. ^ Soltis, Frank G.. When Is PowerPC Not PowerPC?. The 400 Squadron. Retrieved on 2006-03-18.

[edit] External links