PRIMOS

Last updated

PRIMOS
Developer Prime Computer
Written in FORTRAN, Assembly language
OS family Multics-like
Working stateDiscontinued
Latest release 24.0.0.R52 / July 3, 1997;26 years ago (1997-07-03)
Available in English
Platforms Prime Computer
Kernel type Monolithic
Default
user interface
Text-based user interface
License Proprietary commercial software
A Prime 9950 computer system with CRT console showing PRIMOS on the screen, in Kean University computer room Prime9950 kean.jpg
A Prime 9950 computer system with CRT console showing PRIMOS on the screen, in Kean University computer room

PRIMOS is a discontinued operating system developed during the 1970s by Prime Computer for its minicomputer systems. It rapidly gained popularity and by the mid-1980s was a serious contender as a mainline minicomputer operating system.

Contents

With the advent of PCs and the decline of the minicomputer industry, Prime was forced out of the market in the early 1990s, and by the end of 2010 the trademarks for both PRIME [1] and PRIMOS [2] no longer existed. [3]

Prime had also offered a customizable real-time OS called RTOS. [4]

Internals

One feature of PRIMOS was that it, like UNIX, was largely written in a high level language [5] (with callable assembly language library functions available). At first, this language was FORTRAN IV, [6] which was an odd choice from a pure computer science standpoint: no pointers, no native string type, etc. [7] [8] FORTRAN was, however, the language most known to engineers, and engineers were a big market for Prime in their early years.

The unusual choice of FORTRAN for the OS programming language had to do with the people who founded Prime. They had worked for Honeywell on a NASA project. [9] FORTRAN was the language they had used both at NASA and, for many of them, at MIT. This connection with Honeywell extended to the point that the original Prime computers were compatible with Honeywell Series 16 minicomputers.

Honeywell, at that time, was uninterested in minicomputers, so they left and founded Prime, "taking" the code with them. [10] They developed hardware optimized to run FORTRAN, including machine instructions that directly implemented FORTRAN's distinctive 3-way branch operation.

Since Prime's hardware did not perform byte addressing, there was no impetus to create a C compiler. Late models of the hardware were eventually modified to support I-mode, and programs compiled in C.

Later, at version 16, a version of PL/1, called PL/P, became the high level language of choice within PRIMOS, and the PL/P and, later Modula-2, languages were used in the Kernel. Furthermore, some new PRIMOS utilities were written in SP/L, which was similar to PL/P.

The source code to PRIMOS was available to customers [4] [11] and, thanks to FORTRAN and PL/P, customers could reasonably modify PRIMOS as needed. For example, around 1990, the University of Salford in the UK, modified the PRIMOS running on its five 9955 systems so that undergraduates could no longer use the MESSAGE command, that wrapped the PRIMOS SMSG$() call, to send messages to other undergraduates, because online "chatting" using that command was becoming rife, tying up terminals from the limited pool available. Messaging using that command was akin to SMS text messaging today, except a maximum of 80 characters could be sent per message.

Very early versions of PRIMOS (revision 6) were originally called DOS (PRIMOS 2) and later DOSVM (PRIMOS 3), but starting with PRIMOS 4, on the P400 system, PRIMOS was the name that stuck. [5] There were many major releases of PRIMOS. The last official revision (24.0.0.R52) was released July 3, 1997. By this time, a company called Peritus (which employed a number of ex-Prime engineers) was maintaining PRIMOS.

From Revision 19, major portions of PRIMOS were written in the languages SPL and Modula-2, the usage of the Prime Macro Assembler _(PMA), FORTRAN IV and PL/P declined considerably around this time. Programs were guaranteed to run on all current Prime processors (subject to sufficient resources being available), as well as all subsequent Prime processors.

In the versions of PRIMOS ca. 1977 and later, the filesystem included a distinctive construct known as the Segment Directory. Unlike more traditional directories, the files anchored in a segment directory were located using an integer index, effectively reducing searches of the directory to a simple hash function. Segment Directories were used in their Keyed-Index/Direct Access (KI/DA) file access system and in later versions of the system loader.

Data access

Indexed data could be stored in a MIDAS file: Multi-Indexed Data Access System and be accessed via COBOL or FORTRAN. Among the third-party tools was a package named Queo, [12] which was more powerful than COBOL despite being less verbose.

The PRIMOS character set was basically ASCII but with the 8th bit inverted. The original 7-bit standard for ASCII left the 8th bit unspecified, but on the commonly available Teletype Model 33 ASR, the bit was customarily set to 1, and this became Prime's standard. This is vital to realize when transferring data from PRIMOS to almost any other system.

User tools

By the time of Prime Computer's demise, a list of languages supported by Primos included: [13]

BASICPrime BASIC compiler
BASICVVirtual memory BASIC compiler
COBOLCOBOL compiler
F77Compiles FORTRAN 77 or FORTRAN IV code
FTNCompiles FORTRAN IV code
NCOBOLNon-shared (non-virtual) COBOL compiler
PL1GCompiles PL/1, subset G code
PASCALUniversity of Sheffield Pascal
PMAAssembles Prime Macro Assembler code

Also available, but relatively uncommon, were:

Scripting

Late versions [14] of PRIMOS included a scripting language, CPL (Command Procedure Language). [15] This interpreted language, bearing similarities to Pascal, was both accessible to novice users and capable of powerful command line automation. ESRI used PRIMOS CPL as a basis for the platform-independent scripting languages AML (for ArcInfo) and SML (PC-ARC/INFO).

This was a step beyond what already was available via:

PHANTOMS vs JOBS

"Phantoms" were a form of unattended background processes that immediately began to run in the background when initiated by the PHANTOM command. "Conventional" batch jobs were initiated via the JOB command, including the ability to schedule them for a particular time.

Fault Tolerance

The PRIMOS operating system incorporated advanced fault tolerance features to ensure system reliability and data integrity. One notable feature was the MIRROR_ON command, which facilitated the creation of a pair of logically equivalent, identical partitions that were maintained in real-time. This command was instrumental in enhancing the system's resilience to hardware failures. When activated, the MIRROR_ON command initiated disk mirroring, duplicating all write operations to a primary disk onto a secondary disk. This redundancy allowed the system to seamlessly continue operations using the mirror partition in the event of a failure of the primary partition. Unlike RAID 1, which typically requires specific hardware support for disk mirroring, the MIRROR_ON command implemented this functionality at the software level, offering a flexible and cost-effective solution for data redundancy. [16]

Networking

Primes's main offerings, each covering a specific need, were:

PRIMENET

Prime's PRIMENET software was designed to enable "transparent access to any system in the network without burdening the user with extra commands." [17] With PRIMENET, a user on System A could access files on System B as if they were on System A, [18] or even log into another system using the RLOGIN (Remote Login) command. [19]

RINGNET

Released similar timing to PRIMENET, [20] [21] it enabled high-speed local area networking. [22]

RJE

2780/3790 emulation was included. [23]

Primix

In 1985, Prime's port of AT&T's UNIX System V, called Primix, became available with Primos Release 19.4.2 that was modified to include Unix functions. It co-existed with PRIMOS, allowing users to switch back and forth. [24]

See also

Related Research Articles

<span class="mw-page-title-main">IBM AIX</span> Series of Unix operating systems from IBM

AIX is a series of proprietary Unix operating systems developed and sold by IBM for several of its computer platforms.

<span class="mw-page-title-main">Multics</span> Time-sharing operating system

Multics is an influential early time-sharing operating system based on the concept of a single-level memory. Nathan Gregory writes that Multics "has influenced all modern operating systems since, from microcomputers to mainframes."

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

<span class="mw-page-title-main">History of operating systems</span> Aspect of computing history

Computer operating systems (OSes) provide a set of functions needed and used by most application programs on a computer, and the links needed to control and synchronize computer hardware. On the first computers, with no operating system, every program needed the full hardware specification to run correctly and perform standard tasks, and its own drivers for peripheral devices like printers and punched paper card readers. The growing complexity of hardware and application programs eventually made operating systems a necessity for everyday use.

RT-11 is a discontinued small, low-end, single-user real-time operating system for the full line of Digital Equipment Corporation PDP-11 16-bit computers. RT-11 was first implemented in 1970. It was widely used for real-time computing systems, process control, and data acquisition across all PDP-11s. It was also used for low-cost general-use computing.

<span class="mw-page-title-main">IBM Series/1</span> 1970s era IBM minicomputer

The IBM Series/1 is a 16-bit minicomputer, introduced in 1976, that in many respects competed with other minicomputers of the time, such as the PDP-11 from Digital Equipment Corporation and similar offerings from Data General and HP. The Series/1 was typically used to control and operate external electro-mechanical components while also allowing for primitive data storage and handling.

<span class="mw-page-title-main">General Comprehensive Operating System</span> Operating system from General Electric

General Comprehensive Operating System is a family of operating systems oriented toward the 36-bit GE-600 series and Honeywell 6000 series mainframe computers.

Tandem Computers, Inc. was the dominant manufacturer of fault-tolerant computer systems for ATM networks, banks, stock exchanges, telephone switching centers, 911 systems, and other similar commercial transaction processing applications requiring maximum uptime and zero data loss. The company was founded by Jimmy Treybig in 1974 in Cupertino, California. It remained independent until 1997, when it became a server division within Compaq. It is now a server division within Hewlett Packard Enterprise, following Hewlett-Packard's acquisition of Compaq and the split of Hewlett-Packard into HP Inc. and Hewlett Packard Enterprise.

OS/8 is the primary operating system used on the Digital Equipment Corporation's PDP-8 minicomputer.

<span class="mw-page-title-main">RSTS/E</span> Computer operating system

RSTS is a multi-user time-sharing operating system developed by Digital Equipment Corporation for the PDP-11 series of 16-bit minicomputers. The first version of RSTS was implemented in 1970 by DEC software engineers that developed the TSS-8 time-sharing operating system for the PDP-8. The last version of RSTS was released in September 1992. RSTS-11 and RSTS/E are usually referred to just as "RSTS" and this article will generally use the shorter form. RSTS-11 supports the BASIC programming language, an extended version called BASIC-PLUS, developed under contract by Evans Griffiths & Hart of Boston. Starting with RSTS/E version 5B, DEC added support for additional programming languages by emulating the execution environment of the RT-11 and RSX-11 operating systems.

<span class="mw-page-title-main">IBM System/32</span> IBM midrange computer (1975–1984)

The IBM System/32 introduced in January 1975 was a midrange computer with built-in display screen, disk drives, printer, and database report software. It was used primarily by small to midsize businesses for accounting applications. RPG II was the primary programming language for the machine.

Prime Computer, Inc. was a Natick, Massachusetts-based producer of minicomputers from 1972 until 1992. With the advent of PCs and the decline of the minicomputer industry, Prime was forced out of the market in the early 1990s, and by the end of 2010 the trademarks for both PRIME and PRIMOS no longer existed

<span class="mw-page-title-main">FLEX (operating system)</span> Single-tasking operating system for the Motorola 6800

FLEX is a discontinued single-tasking operating system developed by Technical Systems Consultants (TSC) of West Lafayette, Indiana, for the Motorola 6800 in 1976.

Stratus VOS is a proprietary operating system running on Stratus Technologies fault-tolerant computer systems. VOS is available on Stratus's ftServer and Continuum platforms. VOS customers use it to support high-volume transaction processing applications which require continuous availability. VOS is notable for being one of the few operating systems which run on fully lockstepped hardware.

The PL/P programming language is a mid-level programming language developed by Prime Computer to serve as their second primary system programming language after Fortran IV. PL/P was a subset of PL/I.

Pascal MicroEngine is a series of microcomputer products manufactured by Western Digital from 1979 through the mid-1980s, designed specifically to run the UCSD p-System efficiently. Compared to other microcomputers, which use a machine language p-code interpreter, the Pascal MicroEngine has its interpreter implemented in microcode; p-code is its machine language. The most common programming language used on the p-System is Pascal.

<span class="mw-page-title-main">Wang 2200</span> 1973 minicomputer from Wang Laboratories

The Wang 2200 was an all-in-one minicomputer released by Wang Laboratories in May 1973. Unlike some other desktop computers, such as the HP 9830, it had a cathode-ray tube (CRT) in a cabinet that also included an integrated computer-controlled cassette tape storage unit and keyboard. It was microcoded to run BASIC on startup, making it similar to home computers of a few years later. About 65,000 systems were shipped in its lifetime and it found wide use in small and medium-size businesses worldwide.

<span class="mw-page-title-main">Honeywell 316</span>

The Honeywell 316 was a popular 16-bit minicomputer built by Honeywell starting in 1969. It is part of the Series 16, which includes the Models 116, 316 (1969), 416 (1966), 516 (1966) and DDP-716 (1969). They were commonly used for data acquisition and control, remote message concentration, clinical laboratory systems, Remote Job Entry and time-sharing. The Series-16 computers are all based on the DDP-116 designed by Gardner Hendrie at Computer Control Company, Inc. (3C) in 1964.

<span class="mw-page-title-main">Honeywell Level 6</span> Minicomputer models

The Honeywell Level 6 was a line of 16-bit minicomputers, later upgraded to 32-bit, manufactured by Honeywell, Inc. from the mid 1970s. Honeywell literature for Models 6/06, 6/34 and 6/36 say "Series 60 ". In 1979 the Level 6 was renamed the DPS 6, subsequently DPS 6 Plus and finally DPS 6000.

CP-6 is a discontinued computer operating system, developed by Honeywell, Inc. in 1976, which was a backward-compatible work-alike of the Xerox CP-V, fully rewritten for Honeywell Level/66 hardware. CP-6 was a command line oriented system. A terminal emulator allowed use of PCs as CP-6 terminals.

References

  1. US Trademark No. 73123025
  2. US Trademark No. 73122880
  3. abandoned, expired,"cancelled" "The Ultimate Fate of Prime, PRIMOS".
  4. 1 2 "Comp.Sys.Prime FAQ". www.malch.com.
  5. 1 2 "Primos Internal Structure O.S. Notes - Computing History". www.computinghistory.org.uk.
  6. "Prime MAN2602 Primos Interactive User Guide". Prime Computer. June 1976.
  7. "history - Why was Fortran never used to develop an Operating System?". Software Engineering Stack Exchange.
  8. mentions that the Burroughs MCP operating system was written in ALGOL.
  9. "Oral History of John William (Bill) Poduska" (PDF).
  10. It was public domain, having been written with NASA funding.
  11. free at the beginning, but subsequently Prime charged
  12. from Computer Techniques, Inc. OLYPHANT, Pa. "Prime Users Offered Queo-IV Package". Computerworld. Vol. XV, no. 35. 31 August 1981.
  13. "INTRODUCTION TO THE PRIMOS OPERATING SYSTEM, Part V".
  14. "CPL - Primos command language (Computer Language)" . Retrieved 11 September 2018. Prime's command shell language, introduced with PRIMOS 18.2 in 1981
  15. https://sysovl.info/pages/blobs/prime/brochures/jim/PrimeCPL.pdf
  16. http://bitsavers.trailing-edge.com/pdf/prime/doc/DOC9304-6LA_Operators_Guide_To_System_Commands_Rev23.3_May92.pdf
  17. ".:: Phrack Magazine ::". phrack.org.
  18. "INTRODUCTION TO THE PRIMOS OPERATING SYSTEM, Part II".
  19. "INTRODUCTION TO THE PRIMOS OPERATING SYSTEM, Part IV".
  20. "7.2-Prime Computers".
  21. "Computerworld". IDG Enterprise. 31 August 1981 via Google Books.
  22. Allison Smith, ed. (22 October 2013). CAD International Directory 1986. Butterworth & Co. p. 228. ISBN   978-1483161471.
  23. Fahey, Michael (26 October 1987). "Planning for open systems takes Prime Importance". Network World. Vol. 4, no. 43. IDG Network World Inc. pp. 1, 33–35 via Google Books.
  24. Desmond, John (20 May 1985). "Prime adds Unix environment for 50 series users". Computerworld. Vol. XIX, no. 20. p. 7.