IBM System i
From Wikipedia, the free encyclopedia
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
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
- ^ Soltis, Frank G.. When Is PowerPC Not PowerPC?. The 400 Squadron. Retrieved on 2006-03-18.