Unisys OS 2200 programming languages

Last updated

OS 2200 has had several generations of compilers and linkers in its history supporting a wide variety of programming languages. In the first releases, the Exec II assembler (SLEUTH) and compilers were used. The assembler was quickly replaced with an updated version (ASM) designed specifically for the 1108 computer and Exec 8 but the early compilers continued in use for quite some time.

Contents

Universal Compiling System

The modern compiling system for OS 2200 is known as UCS, Universal Compiling System. [1] The UCS architecture uses a common syntax analyzer, separate semantic front ends for each language and a common back-end and optimizer. There is also a common language runtime environment. The UCS system was developed starting in 1969 and initially included PL/I and Pascal. FORTRAN and COBOL were soon added. Ada was added later. The currently supported languages include COBOL, [2] FORTRAN, [3] C, [4] and PLUS. [5] PLUS, Programming Language for Unisys (originally UNIVAC) Systems, is a block structured language somewhat similar to Pascal which it predates. [6]

Legacy compilers

Previous PLUS, COBOL [7] and FORTRAN [8] compilers are also still supported. An even earlier FORTRAN compiler (FORTRAN V), while no longer supported, is still in use for an application developed in the 1960s in that language.

Compilers previously existed for ALGOL, Simula, BASIC, Lisp, NELIAC, JOVIAL, and other programming languages that are no longer in use on the ClearPath OS 2200 systems.

Assembler

The assembler, MASM, [9] is heavily used both to obtain the ultimate in efficiency and to implement system calls that are not native to the programming language. Much of the MASM code in current use is a carryover from earlier days when compiler technology was not as advanced and when the machines were much slower and more constrained by memory size than today.

Linking

There are two linking systems used. The collector (@MAP) [10] combines the output relocatable elements of the basic-mode compilers and assemblers into an absolute element which is directly executable. While this linker is intended primarily to support basic mode, the relocatable and absolute elements may contain extended-mode as well. This is often the case when an existing application is enhanced to use extended mode or call extended mode libraries but still contains some basic mode code. The Exec is an example of such a program.

The linker (@LINK) is the modern linking environment which combines object modules into a new object module. It provides both static and dynamic linking capabilities. The most common usage is to combine the object modules of a program statically but to allow dynamic linking to libraries. [11]

Java

OS 2200 provides a complete Java environment. [12]

OS 2200 Java.png

Java on OS 2200 has evolved from an interesting additional capability for small servlets and tools to a full environment capable of handling large applications. The Virtual Machine for the Java Platform on ClearPath OS 2200 JProcessor is a Linux port of the Oracle Corporation Java release. The environment includes a full J2EE application server environment using the Tomcat open source web server from the Apache Software Foundation and the JBoss application server. [13] All of this has been integrated with the OS 2200 security, databases, and recovery environment.

Related Research Articles

Assembly language Low-level programming language

In computer programming, assembly language, sometimes abbreviated asm, is any low-level programming language in which there is a very strong correspondence between the instructions in the language and the architecture's machine code instructions. Because assembly depends on the machine code instructions, every assembly language is designed for exactly one specific computer architecture. Assembly language may also be called symbolic machine code.

PL/I is a procedural, imperative computer programming language developed and published by IBM. It is designed for scientific, engineering, business and system programming. It has been used by academic, commercial and industrial organizations since it was introduced in the 1960s, and is still used.

The Burroughs Large Systems Group produced a family of large 48-bit mainframes using stack machine instruction sets with dense syllables. The first machine in the family was the B5000 in 1961. It was optimized for compiling ALGOL 60 programs extremely well, using single-pass compilers. It evolved into the B5500. Subsequent major redesigns include the B6500/B6700 line and its successors, as well as the separate B8500 line.

CICS IBM mainframe transaction monitor

IBM CICS is a family of mixed-language application servers that provide online transaction management and connectivity for applications on IBM mainframe systems under z/OS and z/VSE.

TOPS-10 System is a discontinued operating system from Digital Equipment Corporation (DEC) for the PDP-10 mainframe computer family. Launched in 1967, TOPS-10 evolved from the earlier "Monitor" software for the PDP-6 and PDP-10 computers; this was renamed to TOPS-10 in 1970.

VisualAge was a family of computer integrated development environments from IBM, which supported multiple programming languages. VisualAge was first released in October 1993 and was discontinued on April 30, 2007. It had its web page removed in September 2011. VisualAge was also marketed as VisualAge Smalltalk, and in 2005, Instantiations, Inc. acquired the worldwide rights to this product. IBM has stated that XL C/C++ is the followup product to VisualAge.

The MCP is the operating system of the Burroughs small, medium and large systems, including the Unisys Clearpath/MCP systems.

The Microsoft Macro Assembler (MASM) is an x86 assembler that uses the Intel syntax for MS-DOS and Microsoft Windows. Beginning with MASM 8.0, there are two versions of the assembler: One for 16-bit & 32-bit assembly sources, and another (ML64) for 64-bit sources only. It was made by Ali Imran in 2005 while working with his microsoft group. He is still renowned for his contributions for MASM.

The USAS application suite is a series of diverse and relatively complex mainframe applications written for the Unisys 1100-series, 2200-series, and Clearpath IX environments. These applications are generally intended for use in the airline, transportation, and hospitality industries.

The Burroughs B2500 through Burroughs B4900 was a series of mainframe computers developed and manufactured by Burroughs Corporation in Pasadena, California, United States, from 1966 to 1991. They were aimed at the business world with an instruction set optimized for the COBOL programming language. They were also known as Burroughs Medium Systems, by contrast with the Burroughs Large Systems and Burroughs Small Systems.

LINC is a fourth-generation programming language, used mostly on Unisys computer systems.

Basic Assembly Language (BAL) is the commonly used term for a low-level programming language used on IBM System/360 and successor mainframes. Originally, "Basic Assembly Language" applied only to an extremely restricted dialect designed to run under control of IBM Basic Programming Support (BPS/360) on systems with only 8 KB of main memory, and only a card reader, a card punch, and a printer for input/output — thus the word "Basic". However, the full name and the initialism "BAL" almost immediately attached themselves in popular use to all assembly-language dialects on the System/360 and its descendants. BAL for BPS/360 was introduced with the System/360 in 1964.

Embedded SQL is a method of combining the computing power of a programming language and the database manipulation capabilities of SQL. Embedded SQL statements are SQL statements written inline with the program source code, of the host language. The embedded SQL statements are parsed by an embedded SQL preprocessor and replaced by host-language calls to a code library. The output from the preprocessor is then compiled by the host compiler. This allows programmers to embed SQL statements in programs written in any number of languages such as C/C++, COBOL and Fortran. This differs from SQL-derived programming languages that don't go through discrete preprocessors, such as PL/SQL and T-SQL.

OS 2200 is the operating system for the Unisys ClearPath Dorado family of mainframe systems. The operating system kernel of OS 2200 is a lineal descendant of Exec 8 for the UNIVAC 1108. Documentation and other information on current and past Unisys systems can be found on the Unisys public support website.

Unisys 2200 Series system architecture

The figure shows a high-level architecture of the OS 2200 system identifying major hardware and software components. The majority of the Unisys software is included in the subsystems and applications area of the model. For example, the database managers are subsystems and the compilers are applications.

Unisys OS 2200 databases

The OS 2200 database managers are all part of the Universal Data System (UDS). UDS provides a common control structure for multiple different data models. Flat files, network (DMS), and relational (RDMS) data models all share a common locking, recovery, and clustering mechanism. OS 2200 applications can use any mixtures of these data models along with the high-volume transaction file system within the same program while retaining a single common recovery mechanism.

Unisys OS 2200 communications

The OS 2200 communications management system includes CPComm and MCB along with many programs that provide communications related functions such as file transfer, e-mail, and distributed transaction processing protocols.

Unisys OS 2200 distributed processing

OS 2200 supports all commonly used, and many not so commonly used, distributed processing protocols, APIs, and development technology.

Many programming languages and other computer files have a directive, often called include, that causes the contents of a second file to be inserted into the original file. These included files are called copybooks or header files. They are often used to define the physical layout of program data, pieces of procedural code and/or forward declarations while promoting encapsulation and the reuse of code.

The OS/360 Object File Format is the standard object module file format for the IBM DOS/360, OS/360 and VM/370, Univac VS/9, and Fujitsu BS2000 mainframe operating systems. In the 1990s, the format was given an extension with the XSD-type record for the MVS Operating System to support longer module names in the C Programming Language. This format is still in use by the z/VSE operating system. In contrast, it has been superseded by the GOFF file format on the MVS Operating System and on the z/VM Operating System. Since the MVS and z/VM loaders will still handle this older format, some compilers have chosen to continue to produce this format instead of the newer GOFF format.

References

  1. Universal Compiling System (UCS) Conceptual Overview (Unisys publication 7831 0802) (PDF). Roseville, MN: Unisys Corporation. 1994.
  2. Universal Compiling System (UCS) COBOL Programming Reference Manual Volume 1, COBOL Statements (Unisys publication 7831 0448 (PDF). Roseville, MN: Unisys Corporation. 2010.
  3. FORTRAN Compiler Programming Reference Manual Volume 1: FORTRAN Statements (Unisys publication 7831 0489) (PDF). Roseville, MN: Unisys Corporation. 2010.
  4. C Compiler Programming Reference Manual Volume 1: C Language and Library (Unisys publication 7831 0505) (PDF). Roseville, MN: Unisys Corporation. 2013.
  5. Universal Compiling System (UCS) PLUS Programming Reference Manual Volume 1, PLUS Statements (Unisys publication 7831 0497) (PDF). Roseville, MN: Unisys Corporation. 2013.
  6. Application Development Programming Guide (Unisys publication 7831 4077) (PDF). Roseville, MN: Unisys Corporation. 2013.
  7. ASCII COBOL Programming Reference Manual (Unisys publication 7830 7709) (PDF). Roseville, MN: Unisys Corporation. 2010.
  8. ASCII FORTRAN Programming Reference Manual (Unisys publication UP8244-4B) (PDF). Roseville, MN: Unisys Corporation. 2013.
  9. Meta-Assembler (MASM) Programming Reference Manual (Unisys publication 7830 8269) (PDF). Roseville, MN: Unisys Corporation. 2012.
  10. ClearPath OS 2200 Collector Programming Reference Manual (Unisys publication 7830 9887) (PDF). Roseville, MN: Unisys Corporation. 2011.
  11. Linking System Programming Reference Manual (Unisys publication 7831 0505) (PDF). Roseville, MN: Unisys Corporation. 2005.
  12. Virtual Machine for the Java Platform on ClearPath OS 2200 JProcessor User Guide (Unisys publication 7861 5739) (PDF). Roseville, MN: Unisys Corporation. 2013.
  13. JBoss Application Server(tm) for ClearPath OS 2200 Installation, Administration, and Programming Guide (Unisys publication 3826 6425) (PDF). Roseville, MN: Unisys Corporation. 2013.