Misplaced Pages

IBM System/38

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

The System/38 is a discontinued minicomputer and midrange computer manufactured and sold by IBM . The system was announced in 1978. The System/38 has 48-bit addressing, which was unique for the time, and a novel integrated database system. It was oriented toward a multi-user system environment. At the time, the typical system handled from a dozen to several dozen terminals . Although the System/38 failed to displace the systems it was intended to replace, its architecture served as the basis of the much more successful IBM AS/400 .

#688311

63-466: The System/38 was introduced on October 24, 1978 and delivered in 1980. Developed under the code-name "Pacific", it was made commercially available in August 1979. The system offered a number of innovative features, and was designed by a number of engineers including Frank Soltis and Glenn Henry . The architecture shared many similarities with the design of the failed IBM Future Systems project , including

126-523: A 10x15" circuit board. It includes a memory management unit supporting demand paging , used by the system software to implement a single-level store architecture. The System/38 CPU features a 48-bit address space, which was selected as a compromise between 64-bit addressing, which certain IBM engineers wanted for the sake of future proofing, and 32-bit addressing, which other engineers wanted for cost saving purposes. The System/38 console incorporates

189-495: A backing store. Other open source databases have been ported to IBM i, including PostgreSQL , MongoDB and Redis . These databases run on the PASE environment, and are independent of the operating system's integrated database features. IBM i supports TCP/IP networking in addition to the proprietary IBM Systems Network Architecture . IBM i systems were historically accessed and managed through IBM 5250 terminals attached to

252-399: A keyboard and a display screen with 16 lines of 64 characters, inconsistent with the locally attached 5250 terminals, which are either 12x40 or 24x80, depending on model. The keyboard is available to the system operator to enter Control Language commands. The diskette magazine drive is standard on all models. The System/38 and its descendants use a machine interface architecture to isolate

315-545: A processor architecture similar to the System/38, before adopting PowerPC -based processors in 1995. The IBM 5381 System Unit contains processor, main memory, disk storage, a diskette magazine drive, and a system console with keyboard and a display. 5381 was available in Model 100 and Model 200. The IBM 5382 System Unit is physically identical to 5381, but with more powerful processors, more memory, and more disk storage. 5382

378-618: A processor with another native instruction set, the MI instructions will be re-translated into the native instruction set of the new machine before the program is executed for the first time on the new machine. The TIMI (Technology Independent Machine Interface) of OS/400 is a backwards compatible extension of the System/38 MI. As a result, it is possible for a program originally developed on a System/38 to run on current IBM i hardware without ever being recompiled. IBM referred to all code below

441-655: A rewrite of most of the code below the TIMI . Early versions of OS/400 inherited the Horizontal and Vertical Microcode layers of the System/38, although they were renamed to the Horizontal Licensed Internal Code (HLIC) and Vertical Licensed Internal Code (VLIC) respectively. The port to the new hardware led to the IMPI instruction set and the horizontal microcode implementing it being replaced by

504-486: A user-by-user basis. This has been continued and expanded throughout the AS/400 and iSeries computer lines. The System/38 was superseded by the AS/400, which also provided compatibility with System/36 data and software. S/38 programs with 'observability' intact, that is source code embedded within the compiled binary executive at the expense of larger compiled object sizes, can still run on the AS/400 and successor systems as

567-590: Is IBM's internal name for this layer, and as the name suggests, began as an evolution of the System/38 Control Program Facility . The XPF is mostly implemented in PL/MI , although other languages are also used. PASE (Portable Applications Solutions Environment) provides binary compatibility for user mode AIX executables which do not interact directly with the AIX kernel, and supports

630-421: Is addressed with 64-bit pointers. This was necessary since all IBM i jobs (i.e. processes) typically share the same address space. PASE applications do not use the hardware-independent TIMI instructions, and are instead compiled directly to Power machine code. Ports of open source software to IBM i typically target PASE instead of the native IBM i APIs in order to simplify porting. Open source software for IBM i

693-545: Is an evolution of the System/38 CPF operating system, with compatibility layers for System/36 SSP and AIX applications. It inherits a number of distinctive features from the System/38 platform, including the Machine Interface which provides hardware independence, the implementation of object-based addressing on top of a single-level store , and the tight integration of a relational database into

SECTION 10

#1732772762689

756-674: Is most well known for his contributions to the System/38 and IBM AS/400 architectures, in particular - the design of the single-level store used in those platforms, and the RS64 processor architecture. He retired from IBM in 2008 upon the merger of the System i and System p product lines into IBM Power Systems . Prior to his retirement, he held the title of Chief Scientist at IBM. In 1968, Soltis completed his PhD in electrical engineering from Iowa State University . His PhD dissertation

819-613: Is similar to the Unix / Linux concept of volume groups ; however, with IBM i it is typical for all disk drives to be assigned to a single ASP. Security in IBM i is defined in terms of authorities , which represents the permission to carry out a specific action on a specific object. Authorities can be granted to individual users (known as user profiles ), groups (known as group profiles ) or all users ( public authorities). Related objects can be grouped together in an authorization list , making it possible to grant authorities on all objects in

882-668: Is typically packaged using the RPM package format, and installed with the YUM package manager . PASE is distinct from the Qshell environment, which is an implementation of a Unix shell and associated utilities built on top of IBM i's native POSIX-compatible APIs. Introduced in 1994, the Advanced/36 platform ran unmodified System/36 applications and the SSP operating system in emulation on top of

945-559: The Advanced 36 Machine environment which ran System/36 SSP applications in emulation. IBM often uses different names for the TIMI, SLIC and XPF in documentation and marketing materials, for example, the IBM i 7.4 documentation refers to them as the IBM i Machine Interface , IBM i Licensed Internal Code and IBM i Operating System respectively. The TIMI isolates users and applications from

1008-501: The application software and most of the operating system from hardware dependencies, including such details as address size and register size. Compilers for System/38 and its successors generate code in a high-level instruction set known as the Machine Interface , or MI. MI is a virtual instruction set; it is not the instruction set of the underlying CPU. MI operates on objects instead of traditional memory addresses or registers. Unlike some other virtual-machine architectures in which

1071-626: The single-level store , the use of microcode to implement operating system functionality, and the Machine Interface abstraction. It had been developed over eight years by IBM's laboratory in Rochester , Minnesota. The president of IBM's General Systems Division (GSD) said at the time: "The System/38 is the largest program we've ever introduced in GSD and it is one of the top three or four largest programs ever introduced in IBM." The system

1134-493: The 1990s and 2000s. As part of the 2004 rebranding to eServer i5 , OS/400 was renamed to i5/OS ; the 5 signifying the use of POWER5 processors. The first release of i5/OS, V5R3, was described by IBM as "a different name for the same operating system". In 2006, IBM rebranded the AS/400 line one last time to System i . In April 2008, IBM consolidated the System i with the System p platform to create IBM Power Systems . At

1197-576: The 1990s and early 2000s, in addition to his IBM responsibilities, Soltis served as an adjunct professor of electrical engineering at the University of Minnesota where he taught graduate courses on high performance computer design. Soltis retired from IBM on December 31, 2008 after 40 years with the company. In February 2009, Vision Solutions announced that Soltis had joined their Technology Advisory Board. Soltis' By Design column appears in iPro Developer magazine. His books include Inside

1260-514: The 32-bit and 64-bit AIX Application Binary Interfaces . PASE was first included in a limited and undocumented form in the V4R3 release of OS/400 to support a port of Smalltalk . It was first announced to customers at the time of the V4R5 release, by which time it had gained significant additional functionality. PASE consists of the AIX userspace running on top of a system call interface implemented by

1323-531: The 64-bit RS64 architecture in 1995. Applications compiled on systems using the IMPI instruction set could run on top of the newer RS64 systems without any code changes, recompilation or emulation, while also allowing those applications to avail of 64-bit addressing. There are two different formats of TIMI instructions, known as the Original Machine Interface (OMI) and New Machine Interface (NMI) formats. OMI instructions are essentially

SECTION 20

#1732772762689

1386-471: The AS/400 and Fortress Rochester, The Inside Story of the IBM iSeries . IBM i IBM i (the i standing for integrated ) is an operating system developed by IBM for IBM Power Systems . It was originally released in 1988 as OS/400 , as the sole operating system of the IBM AS/400 line of systems. It was renamed to i5/OS in 2004, before being renamed a second time to IBM i in 2008. It

1449-605: The Advanced/36 product line as a whole. The Advanced 36 Machine feature is distinct from the System/36 Environment introduced in the initial OS/400 release and still supported in current IBM i versions. Prior to the Advanced/36, the System/36 line used two different processors in each system - the Main Storage Processor (MSP) which ran most of the SSP operating system as well as user code, and

1512-835: The Control Storage Processor (CSP) which ran so-called "microcode" which implemented core operating system functionality as well as I/O. The CSP microcode was invoked from the MSP through the use of the Supervisor Call (SVC) instruction. On the Advanced/36, the CSP microcode was reimplemented inside the SLIC. An MSP emulator was also built into the SLIC, sometimes referred to as the Technology Independent Emulation Interface . Even with

1575-656: The Fort Knox hardware. In addition to adding support for System/36 applications, some of the user interface and ease-of-use features from the System/36 were carried over to the new operating system. Silverlake was available for field test in June 1988, and was officially announced in August of that year. By that point, it had been renamed to the Application System/400 , and the operating system had been named Operating System/400 . The port to PowerPC required

1638-566: The HLIC code, and most of the VLIC code. Owing to the amount of work needed to implement the SLIC, IBM Rochester hired several hundred C++ programmers for the project, who worked on the SLIC in parallel to new revisions of the VLIC for the CISC AS/400 systems. The first release of OS/400 to support PowerPC-based hardware was V3R6. The AS/400 product line was rebranded multiple times throughout

1701-610: The IBM System/34 and System/36. CPF objects are files, programs, message queues, user profiles, and libraries. While CPF is considered to be the operating system of the System/38, it sits on top of the System/38 Machine Interface layer, and consequently much of the traditional operating system functionality of the platform is implemented in the Horizontal and Vertical Microcode. The System/38 also has

1764-663: The IMPI and microcode as the underlying hardware evolved. Early AS/400 systems inherited the System/38 microcode structure, but the term microcode was dropped, leading IBM to rename the layers to the Vertical Licensed Internal Code and Horizontal Licensed Internal Code . The operating system of the System/38 is the Control Program Facility (CPF). CPF is not related to the System Support Program operating system of

1827-404: The Machine Interface layer of the System/38 architecture as microcode , and treated it as part of the hardware. The term microcode was used to cover a wide array of low-level code, ranging from traditional microcode , up to functionality typically associated with the kernels of other operating systems, as well as the implementation of the integrated database. There were two levels of microcode in

1890-486: The OS/400 SLIC using hardware which was mostly identical to that of contemporary AS/400 systems. This functionality was incorporated into OS/400 itself from V3R6 through V4R4, making it possible to run up to four System/36 "virtual machines" (to use IBM's term) using the so-called Advanced 36 Machine feature of the operating system. Support was discontinued in the V4R5 release, coinciding with IBM's discontinuation of

1953-687: The PowerPC AS instruction set and its implementation in PowerAS processors. This required the VLIC to be rewritten to target PowerPC instead of IMPI, and for the operating system functionality previously implemented in the HLIC to be re-implemented elsewhere. This led to the HLIC and VLIC being replaced with a single layer named the System Licensed Internal Code (SLIC). The SLIC was implemented in an object-oriented style with over 2 million lines of C++ code, replacing some of

IBM System/38 - Misplaced Pages Continue

2016-561: The PowerPC port, native support for the OMI format was removed, and replaced with a translator which converted OMI instructions into NMI instructions. The storing of the TIMI instructions alongside the native machine code instructions is known as observability . In 2008, the release of i5/OS V6R1 (later known as IBM i 6.1) introduced a number of changes to the TIMI layer which caused problems for third-party software which removed observability from

2079-416: The SLIC. The system call interfaces allows interoperability between PASE and native IBM i applications, for example, PASE applications can access the integrated database, or call native IBM i applications, and vice versa. During the creation of PASE, a new type of single level storage object named a Teraspace was added to the operating system, which allows each PASE process to have a private 1TiB space which

2142-540: The System/36 – an upgraded System/34 – after the launch of the S/38. Although the System/38 did not sell in large numbers, it commanded a higher profit margin than IBM's other midrange systems, and thus was a profitable product line for IBM. In the marketplace, IBM thus found itself with three overlapping, but incompatible, ranges. The System/34, the System/38 and the mainframe System/370 architecture. Digital Equipment Corporation , at that time one of IBM's main competitors,

2205-463: The System/38, and when Fort Knox was cancelled, this project evolved into an official project to replace both the System/36 and System/38 with a single new hardware and software platform. The project became known as Silverlake (named for Silver Lake in Rochester, Minnesota ). The operating system for Silverlake was codenamed XPF (Extended CPF ), and had originally begun as a port of CPF to

2268-484: The System/38: The use of the term microcode stemmed from a 1969 antitrust case against IBM which resulted in IBM unbundling software from its hardware products (i.e. requiring software to be purchased separately from the hardware). By treating the low level code of the System/38 as part of the hardware, IBM was able to treat the MI as the native instruction set of the System/38, and thus have the freedom to change

2331-554: The TIMI, such as IBM i's integrated relational database. The SLIC implements IBM i's object-based storage model on top of a single-level store addressing scheme, which does not distinguish between primary and secondary storage, and instead manages all types of storage in a single virtual address space . The SLIC is primarily implemented in C++, and replaced the HLIC and VLIC layers used in versions of OS/400 prior to V3R6. The XPF consists of

2394-456: The application objects shipped to customers. The SLIC consists of the code which implements the TIMI on top of the IBM Power architecture. In addition to containing most of the functionality typically associated with an operating system kernel , it is responsible for translating TIMI instructions into machine code, and it also implements some high level functionality which is exposed through

2457-685: The code which implements the hardware-independent components of the operating system, which are compiled into TIMI instructions. Components of the XPF include the user interface, the Control Language , data management and query utilities, development tools and system management utilities. The XPF also contains the System/36 Environment and System/38 Environment , which provide backwards compatibility APIs and utilities for applications and data migrated from SSP and CPF systems. The XPF

2520-618: The default character encoding , but also provides support for ASCII , UCS-2 and UTF-16 . In IBM i, disk drives may be grouped into an auxiliary storage pool (ASP) in order to organize data to limit the impact of storage-device failures and to reduce recovery time. If a disk failure occurs, only the data in the pool containing the failed unit needs to be recovered. ASPs may also be used to improve performance by isolating objects with similar performance characteristics, for example journal receivers, in their own pool. By default, all disk drives are assigned to pool 1. The concept of IBM i pools

2583-467: The default Security Officer user profile, named QSECOFR , is the closest equivalent to the root user of a Unix-like operating system. IBM i can be set to use one of five levels of security, which control the extent to which the operating system's security features are enforced: The first three levels correspond to the security levels available in CPF and the initial releases of OS/400. Security level 40

IBM System/38 - Misplaced Pages Continue

2646-488: The distinction of being the first commercially available IBM Midrange computer to have a database management system (DBMS) integrated into the operating system. The operational control language of the System/38 is called CL , for Control Language . CL programs, similar in concept to shell scripts , can be compiled and executed natively . The System/38 was designed with security built in as part of its architecture. Each object or library can have access controlled on

2709-405: The first five years of availability, according to articles published in industry magazines NEWS 34/38 and Midrange Computing. Although billed as a minicomputer , the S/38 was much more expensive than IBM's established best-selling System/34, and its replacement, the System/36. Of equal importance was the difficulty of upgrading from a System/34 to a S/38. IBM tacitly acknowledged this by bringing out

2772-597: The hardware-independent Extended Control Program Facility (XPF). These are divided by a hardware abstraction layer called the Technology Independent Machine Interface (TIMI). Later versions of the operating system gained additional layers, including an AIX compatibility layer named Portable Application Solutions Environment (originally known as the Private Address Space Environment ), and

2835-611: The integrated database - the so-called native interface , which is based on the database access model of the System/38, and SQL . The native interface consists of the Data Description Specifications (DDS) language, which is used to define schemas and the OPNQRYF command or QQQQRY query API. Certain Db2 for i features such as object-relational database management require SQL and cannot be accessed through

2898-444: The list by granting authorities on the authorization list. User profiles have an associated user class which dictates the set of default authorities available to that user profile. There are five standard user classes which, in order of increasing privilege, are: Workstation User , System Operator , System Programmer , Security Administrator and Security Officer . IBM i ships with a default user profile for each user class, and

2961-768: The native interface. IBM i has two separate query optimizers known as the Classic Query Engine (CQE) and SQL Query Engine (SQE). These are implemented inside the SLIC alongside a Query Dispatcher which selects the appropriate optimizer depending on the type of the query. Remote access through the native interface and SQL is provided by the Distributed Data Management Architecture (DDM) and Distributed Relational Database Architecture respectively. A storage engine for MySQL and MariaDB named IBMDB2I allows applications designed for those databases to use Db2 for i as

3024-652: The operating system itself, such as the Source Edit Utility (SEU) text editor and Programming Development Manager . IBM also provides an Eclipse -based integrated development environment (IDE) for IBM i named IBM Rational Developer for i which runs on developer workstations instead of IBM i. Prior to the Eclipse-based IDE, IBM provided an IDE based on WorkFrame/2 which ran on OS/2 named CODE/400 and an IDE based on VisualAge which ran on Microsoft Windows systems. IBM i uses EBCDIC as

3087-538: The operating system. OS/400 was developed alongside the AS/400 hardware platform beginning in December 1985. Development began in the aftermath of the failure of the Fort Knox project, which left IBM without a competitive midrange system. During the Fort Knox project, a skunkworks project was started at Rochester by engineers, who succeeded in developing code which allowed System/36 applications to run on top of

3150-442: The overhead of emulation, the Advanced/36 systems were significantly faster than the original System/36 systems they replaced due to the performance of their PowerPC AS processors. IBM i features an integrated relational database currently known as IBM Db2 for IBM i . The database evolved from the non-relational System/38 database, gaining support for the relational model and SQL . The database originally had no name, instead it

3213-477: The restore option incorporates a recompile for the then back-version source. However, most proprietary vendor application libraries of objects were compiled without such 'observability' and require original vendor replacement and consequent expense when upgrading to an AS/400. Pricing at the time was tiered, the same exact software, but priced based upon the model, its speed and capacity, of the system to be installed upon. IBM sold an estimated 20,000 System/38s within

SECTION 50

#1732772762689

3276-703: The same as the System/38 Machine interface instructions, whereas NMI instructions are lower-level, resembling the W-code intermediate representation format used by IBM's compilers. IBM partially documents the OMI instructions, whereas the NMI instructions are not officially documented. OMI instructions are used by the original AS/400 compilers, whereas NMI instructions are used by the Integrated Language Environment compilers. During

3339-545: The same executable and call procedures written in any of the other ILE languages. When PASE was introduced, it was necessary to compile code for PASE on an AIX system. This requirement was removed in OS/400 V5R2 when it became possible to compile code using the IBM XL compiler suite inside PASE itself. Since then, other compilers have been ported to PASE, including gcc . Certain development tools for IBM i run on top of

3402-445: The same time, i5/OS was renamed to IBM i , in order to remove the association with POWER5 processors. The two most recent versions of the operating system at that time, which had been released as i5/OS V5R4 and V6R1, were renamed to IBM i 5.4 and 6.1. Along with the rebranding to IBM i, IBM changed the versioning nomenclature for the operating system. Prior releases used a Version, Release, Modification scheme, e.g. V2R1M1. This

3465-727: The system with twinax cabling. With the decline of dedicated terminal hardware, modern IBM i systems are typically accessed through 5250 terminal emulators . IBM provides two terminal emulator products for IBM i: In addition, IBM provides a web-based management console and performance analysis product named IBM Navigator for i. Programming languages available from IBM for IBM i include RPG , Control Language , C , C++ , Java , EGL , COBOL , and REXX . Compilers were previously available for Pascal , BASIC , PL/I and Smalltalk but have since been discontinued. The Integrated Language Environment (ILE) allows programs from ILE compatible languages (C, C++, COBOL, RPG, and CL), to be bound into

3528-441: The underlying hardware. This isolation is more thorough than the hardware abstractions of other operating systems, and includes abstracting the instruction set architecture of the processor, the size of the address space and the specifics of I/O and persistence. This is accomplished through two interrelated mechanisms: The hardware isolation provided by the TIMI allowed IBM to replace the AS/400's 48-bit IMPI architecture with

3591-444: The virtual instructions are interpreted at runtime (see P-code machine ), MI 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 MI instructions are stored within the final program object, in addition to the executable machine instructions. If a program is moved from a processor with one native instruction set to

3654-477: Was able to exploit this by offering a wide range of products based on a single architecture - specifically the VAX architecture. IBM's counter to this, the 9370 , was a commercial failure, and at that time, The New York Times wrote, sales of the System/36 and System/38 were "lagging." Frank Soltis Frank Gerald Soltis (born 1940), is an American computer scientist . He joined IBM Rochester in 1969, and

3717-493: Was available in Models 300, 400, 500, 600, and 700. Users typically interacted with the system through IBM 5250 series terminals. In 1984, IBM added the ability to attach graphics-oriented terminals that previously required a mainframe. The system includes a central processing unit with 512K, 768K, 1024K, 1280K, or 1536K bytes of main storage. The processor is implemented across twenty-nine Schottky TTL LSI chips mounted on

3780-404: Was described simply as "data base support". It was given the name DB2/400 in 1994 to indicate comparable functionality to IBM's other commercial databases. Despite the Db2 branding, Db2 for IBM i is an entirely separate codebase to Db2 on other platforms, and is tightly integrated into the SLIC layer of IBM i as opposed to being an optional product. IBM i provides two mechanisms for accessing

3843-605: Was designed as a follow-on for the System/3 , but it is not compatible with those computers. The predecessors to the System/38 include the System/3 (1969), System/32 (1975), and System/34 (1977). In 1983 the System/36 was released as a low-end business computer for users who found the System/38 too expensive for their needs. The System/38 was succeeded by the IBM AS/400 midrange computer family in 1988, which originally used

SECTION 60

#1732772762689

3906-527: Was replaced with a Version.Release scheme, e.g. 6.1. Beginning with IBM i 7.1, IBM replaced the Modification releases with Technology Refreshes . Technology Refreshes are delivered as optional PTFs for specific releases of the operating system which add new functionality or hardware support to the operating system. When IBM i was first released as OS/400, it was split into two layers, the hardware-dependent System Licensed Internal Code (SLIC) and

3969-490: Was titled "Automatic Allocation of Digital Computer Storage Resources for Time-sharing". In November 1968, he took a position with IBM in Rochester, Minnesota . Soltis led the design of the "Amazon" instruction set architecture , an extended version of the 64-bit PowerPC architecture; the Amazon architecture is implemented by the RS64 , POWER4 , and POWER5 processors used in the IBM iSeries and pSeries computers. In

#688311