User:Bbump/work

RSTS (pronounced as "RIST-ess" or "RIST-uhs") is a multi-user time-sharing operating system, developed by Digital Equipment Corporation ("DEC"), (now part of Hewlett Packard) for the PDP-11 series of 16-bit minicomputers. The first version of RSTS (RSTS-11, Version 1) 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 (RSTS/E, Version 10.1) was released in September of 1992. RSTS-11 and RSTS/E are usually referred to just as "RSTS" and this article will generally use the shorter form.

Acronyms

 * BTSS (Basic Time Sharing System) -- (never marketed) -- The first name for RSTS.
 * CCL (Concise Command Language)
 * CIL (Core Image Library)
 * CILUS (Core Image Library Update and Save)
 * CLI (Command Line Interpreter)
 * CUSPS (Commonly Used System Programs)
 * DCL (Digital Command Language)
 * DMA (Direct Memory Addressing)
 * DTR (Datatrieve)
 * IOX (Input Output eXecutive)
 * KBM (Keyboard Monitor) -- Analogous to Command Line Interpreter.
 * LAT (Local Area Transport)
 * PBS (Print Batch Services)
 * PPN (Project Programmer Number) -- Analogous to GID and UID in Unix.
 * RDC (Remote Diagnostics Center)
 * ROSS/V (RSTS/E Operating System Simulator for VMS) -- RSTS on the VAX by EG&H.
 * RSTS-11 (Resource Sharing Time Sharing System) -- The first commercial product name for RSTS.
 * RSTS/E (Resource Sharing Timesharing System Extended) -- The current implementation of RSTS.
 * RTS (Run Time System)
 * RTSS (Resource Time Sharing System) -- (never marketed) The second name for RSTS.
 * SATT (Storage Allocation Truth Table)
 * SIL (Saved Image Library)
 * SILUS (Creates Save-Image Libraries)

The 70s
The kernel of RSTS was programmed in the assembly language MACRO-11, compiled and installed to a disk using the CILUS program, running on a DOS-11 operating system. RSTS booted into an extended version of the BASIC programming language which DEC called "BASIC-PLUS." All of the system software CUSPS for the operating system, including the programs for resource accounting, login, logout and managing the system, were written using BASIC-PLUS. From 1970 to 1973, RSTS ran in only 56K of memory (64K including the DMA IO space). This would allow a system to have up to 16 terminals with a maximum of 17 jobs. The maximum program size was 16K. By the end of 1973 DEC estimated there were 150 licensed systems running RSTS.

In 1973 memory management support was included in RSTS (now RSTS/E) for the newer DEC PDP-11/40 and PDP-11/45 minicomputers (the PDP-11/20 was only supported under RSTS-11). The introduction of memory management in the newer PDP-11 computers not only meant these machines were able to address four (4) times the amount of memory (18bit addressing, 256K), it also paved the way for the developers to separate user mode processes from the core of the kernel.

In 1975 memory management support was again updated for the newer 22bit addressable PDP-11/70. RSTS systems could now be expanded to use as much as two (2) megabytes of memory running up to 63 jobs. The RTS and CCL concepts were introduced although they had to be compiled in during "SYSGEN". Multi-terminal service was introduced which would allow a single job the ability to control multiple terminals (128 total). Large-message send/receive and interprocess communication became very sophisticated and efficient. By August there are 1,200 licensed systems.

In 1977 the installation process for RSTS was no longer dependent on DOS-11. The RSTS kernel could now be compiled under the RT-11 RTS, formatted as a SIL file with RT-11 SILUS, and copied to the system or other disks, while the computer was time-sharing. The BASIC-PLUS RTS (as well as RT-11, RSX-11, TECO and third party RTSs) all ran as user mode processes, independent of the RSTS kernel. A systems manager could now decide during the bootstrap phase which RTS he/she wanted as the systems default KBM. There are now 3,100 licensed systems.

In 1978 the final memory management update was included for all machines that could support 22bit addressing. RSTS could now use the maximum amount of memory available to a PDP-11 (4 megabytes). Support was also included for SUPERVISORY mode which made RSTS the first DEC operating system with this capability. DECnet was also supported as well as remote diagnostics from field service technicians at the RDC in Colorado Springs, Colorado (a DEC subscription service). By the end of the decade, there are over 5,000 licensed systems.

The 80s
In 1981 support for separate Instruction & Data space for users with Unibus machines (PDP-11/44, PDP-11/45, PDP-11/55 and PDP-11/70) provided an extension to the memory constraints of an individual program. Compiling programs to use separate Instruction & Data space would soon give a program up to 64k for instructions, and up to 64k for buffering data. The DCL RTS is included as well as support for the newer revision of DECnet III.

In 1983 RSTS/E V8.0-06 included support for the smallest PDP-11 sold by DEC (the MicroPDP-11). A pre-generated SIL and CUSPS were included in this distribution to make installation on the MicroPDP-11 easier. DEC sold the pre-generated version on the MicroPDP-11 as MicroRSTS at a reduced price, however users needed to purchase the full version if they had a need to generate their own kernel. The file system was upgraded and given the designation RSTS Directory Structure 1 (RDS1). All previous versions of the RSTS file system are given the designation RDS0. The newer file system is designed to support more than 1700 user accounts. "It is now thought that there are well over 10,000 licensed users and at least an equal number of unlicensed users!!!" .

From 1985 to 1989 RSTS became a mature product in the Version 9 revisions. DCL was installed as the primary RTS and the file system was again upgraded (now RDS1.2) to support new user account features. Passwords were now hashed instead of limited to six (6) characters stored in RADIX-50 format. Before Version 9, there was a non-user system account in the project (group) zero (the designation is [0,1]), and all accounts in project number 1 were privileged (not unlike the root account on Unix systems). After Version 9 was released, additional accounts could be created for project zero, and multiple privileges could be individually set for any account. Support for the LAT protocol was included as well as the ability to run the newest version of DECnet IV. These network enhancements gave any user connected to a terminal through a DECserver the ability to communicate with a RSTS machine, just as easily as they could with a VAX running VMS. The DCL command structure between DEC operating systems also contributed to the familier look and feel:

"'This is not just another pseudo command file processor; it is based on VMS features. The DCL command file processor is fully supported and integrated in RSTS through extensive changes to DCL and the monitor. DCL executes command files as part of your job; therefore, no pseudo keyboard or forcing of commands to your keyboard is necessary (as with ATPK).'"

The 90s
In 1994 DEC sold its PDP-11 software business to a company named Mentec, and DEC then essentially discontinued releases of RSTS in order to concentrate on their VAX series of minicomputers.

Mentec would later publicly grant a no-cost license to anyone for non-commercial hobby purpose use of the operating system software developed for the PDP-11, and as the result of the release (for non-commercial use) of a PDP-11 emulator for the IBM-PC, as well as image copies of disk drives of RSTS which exist on the Internet, it is possible for a hobbyist to run RSTS/E on a personal computer in software emulation as fast or faster than it originally ran on the real hardware.

Documentation
The standard complement of documentation manuals that accompanies a RSTS distribution consists of at least 11 large 3-ring binders, 1 small 3-ring binder containing the RSTS/E Quick Reference Guide and 1 paperback copy of Introduction to BASIC AA-0155B-TK. Each of the 11 3-ring binders contain:

thumb|right|300px|Example of RSTS/E Document shelf

Volume 1 General Information and Installation


 * Documentation Directory
 * Release Notes
 * Maintenance Notebook
 * System Installation and Update Guide

Volume 2 System Management


 * System Manager's Guide

Volume 3 System Usage


 * System User's Guide
 * Guide to Writing Command Procedures

Volume 4 Utilities


 * Utilities Reference Manual
 * Introduction to the EDT Editor
 * SORT/MERGE User's Guide
 * RUNOFF User's Guide

Volume 4A Utilities


 * EDT Editor Manual

thumb|right|300px|MicroPDP-11/53 with various RSTS/E Documents

Volume 4B Utilities


 * Task Builder Reference Manual
 * Programmer's Utilities Manual
 * RT11 Utilities Manual
 * TECO User's Guide

Volume 5 BASIC-PLUS


 * BASIC-PLUS Language Manual

Volume 6 System Programming


 * Programming Manual

Volume 7 MACRO Programming


 * System Directives Manual
 * ODT Reference Manual

Volume 7A MACRO Programming


 * MACRO-11 Language Manual
 * RMS-11 MACRO Programmer's Guide

Volume 8 RMS


 * RMS-11: An Introduction
 * RMS11 User's Guide
 * RMS-11 Utilities

Features
The last Software Product Description from DEC, outlined the following topics as the major features of RSTS/E, Version 10.1:


 * Interactive timesharing.
 * Dynamic allocation of system resources.
 * DCL (Digital Command Language).
 * DCL command file processing.
 * Command line editing and command recall.
 * CCL system manager defined command interface.
 * User and system logical names for devices and/or accounts.
 * System security features.
 * User and job privileges and resource quotas allocated to accounts as required.
 * Batch services provide centralized background execution of DCL command files.
 * Print services provide centralized background printing on terminal printers, line printers, or Terminal Server printers.
 * Operator/Message Services provide dispatching and logging of operator messages and requests sent from users or programs.
 * Extensive file processing including file sharing, protection mechanisms, and virtual (memory) disk support.
 * Integrated system and account management using DCL.
 * Magnetic tape processing (single or multi-volume).
 * Terminal handler designed for interactive environments.
 * Shared common code.
 * Software-maintained cache of frequently-accessed disk data.
 * Intertask communication.
 * Disk file and device backup and restore utilities with streaming support for streaming tape drives supported by RSTS/E.
 * Support for the RQZX1 SCSI adapter on MicroPDP-11/53+, MicroPDP-11/93, and upgraded PDP-11/73 and PDP-11/83 systems. Also, support for a specific set of Digital SCSI devices (RZ23L and RZ24L hard disks)using the RQZX1 SCSI adapter.
 * Disk-to-disk volume copying between disks of different sizes and types.
 * System reliability and maintainability features.
 * DCL, RT-11, RSX, and BASIC-PLUS run-time system support.
 * Program Development Tools

Communication
RSTS uses a serial communication connection to interact with the operator. The connection might be a local computer terminal with a 20 mA current loop interface, an RS-232 interface (either local serial port or remote connection via modem), or by an ethernet connection utilizing DECnet or LAT. As many as 128 terminals (using multi-terminal service) could be connected to a RSTS system, running under a maximum of 63 jobs (depending on the processor being used, the amount of memory and disk space, and the system load). Most RSTS systems had nowhere near that many terminals. Users could also submit jobs to be run in batch mode. There was also a batch program called "ATPK" that allowed users to run a series of commands on an imaginary terminal (pseudo-terminal) in semi-interactive mode similar to batch commands in MS-DOS.

Login [Project,Programmer]
Users connected to the system by typing the LOGIN command (or HELLO) at a logged-out terminal and pressing return. Actually, typing any command at a logged-out terminal simply started the LOGIN program which then interpreted the command. If it was one of the commands which were allowed to be used by a user that is not yet logged in ("Logged Out"), then the associated program for that command was CHAINed to, otherwise the message "Please say HELLO" was printed on the terminal. Prior to Version 9, a user could also initiate a 1 line login, however this left your password on the screen for anyone behind you to view (examples follow):



Bye HELLO 1,2;SECRET Ready

or

I 1,2;SECRET Ready

or

LOGIN 1,2;SECRET Ready

One could determine the status of a terminal from the command responses, printed by the command interpreter. A logged-in user communicating with the BASIC-PLUS KBM was given the prompt "Ready" and a user who is logged out is given the prompt "Bye".

A user would log in by supplying their PPN number and password. User numbers consisted of a project number (this would be the equivalent of a group number in Unix), a comma, and a programmer number. Both numbers were in the range of 0 to 254, with special exceptions. When specifying an account, the project and programmer number were enclosed in brackets. A typical user number could be [10,5] (project 10, programmer 5), [2,146], [254,31], or [200,220], etc. When a user was running a system program while logged out (because the system manager had enabled it) their PPN number was [0,0], and would appear in the SYSTAT CUSP as **,**. Thus that is not a valid account number.

System and User Accounts
In every project, the programmer number 0 was usually reserved as a group account, as it could be referenced by the special symbol #. If one's user number were [20,103], a reference to a file name beginning with "#" would refer to a file stored in the account of the user number [20,0]. This feature would be useful in educational environments, as programmer number 0 could be issued to the instructor of a class, and the individuals students given accounts with the same project number, and the instructor could store in his account files marked as shared only for that project number (which would be students in that class only, and no other).

Two special classes of project numbers existed. The project number 0 is generally reserved for system software, and prior to Version 9 there was only 1 project 0 account (named [0,1]). Programmers in the project number 1 were privileged accounts, equivalent to the single account "root" on Unix systems, except that the account numbers [1,0] through [1,254] were all privileged accounts. After Version 9 was released, any account could be granted specific privileges by the systems manager.

The account [0,1] is used to store the operating system file itself, all run-time library systems, and certain system files relating to booting the system (author's comments appear on the right in bold):

DIR [0,1] Name .Ext   Size   Prot    Date       SY:[0,1] BADB .SYS       0P  < 63> 06-Jun-98         List of bad blocks SATT .SYS       3CP < 63> 06-Jun-98         Bitmap of allocated disk storage INIT .SYS     419P  < 40> 06-Jun-98         Operating system loader program ERR  .ERR      16CP < 40> 06-Jun-98         System error messages RSTS .SIL     307CP < 60> 06-Jun-98         Operating system itself BASIC .RTS     73CP < 60> 06-Jun-98         BASIC-PLUS run time system RT11 .RTS      20C  < 60> 06-Jun-98         RT-11 run time system SWAP .SYS    1024CP < 63> 06-Jun-98         System swap file CRASH .SYS     35CP < 63> 06-Jun-98         System crash dump RSX  .RTS      16C  < 60> 23-Sep-79         RSX-11 run-time system TECO .RTS      39C  < 60> 24-Sep-79         TECO text editor Total of 1952 blocks in 11 files in SY:[0,1] (Editor's Note: This directory listing is previous to Version 9.)

The DIR command is an installed CCL equivalent to a RUN command for the DIRECT program. [0,1] is the account number (and directory name) of the operating system storage account. It would be referred to as "project number 0, programmer number 1".

The numbers shown after each file represent its size in disk blocks, a block being 512 bytes or 1/2 kilobyte (K). "C" indicates the file is contiguous (is stored as one file without being separated into pieces, similar to files on a Microsoft Windows system after a drive has been defragmented), while "P" indicates it is specially protected (cannot be deleted, even by a privileged user unless the P bit is cleared by changing the protection code). The numbers in brackets (like "< 40>") represent the protections for the file, which is always displayed in decimal. Protections indicate if the file may be seen by any other user, by other users with the same programmer number, if the file is read only or if it may be altered by another user, and whether the file may be executed by an ordimary user giving them additional privileges. These protection codes are very similar to the r, w and x protections in Unix and similar operating systems such as BSD and Linux. Code 60 is equivalent to a private file, code 63 is a private non-deletable file, and 40 is a public file.

Library files are kept in account [1,1] and it is usually referenced by the logical name LB:. The account [1,2] is the system startup account (much like a unix system starting up under root), and contains the system CUSPS that could be referenced by prefixing the CUSP name with a dollar sign ($). "!" is used for account [1,3], "%" for [1,4] and "&amp;" for [1,5]. The account [1,1] also had the special privilege of being the only account where a user logged in under that account is permitted to execute the POKE system call to put values into any memory in the system. Thus the account number [1,1] is the closest equivalent to "root" on Unix-based systems.

Run-Time Environments
One of the features of RSTS is the means for the execution of programs and the environment used to run them. The various environments allowed for programming in BASIC-PLUS, the enhanced BASIC Plus 2, and in more traditional programming languages such as COBOL and FORTRAN. These environments were separate from each other such that one could start a program from one environment and the system would switch to a different environment while running a different program, and then return the user to the original environment they started with. These environments were referred to as an RTS. The term for the command line interface that most of these RTS's had was called the KBM. Prior to Version 9, the systems manager needed to define which RTS the system would start under, and it had to be one that would execute compiled programs.

A Systems Manager may also install special CCL commands, which take precedence over all KBM commands (with the exception of DCL). A CCL is analogous to a shortcut to a program on a Windows system or a symbolic link on Unix-based systems. CCL's are installed as a memory-resident command either during startup, or dynamically while the system is running by a system's manager (ie: it is not permanent like a disk file).

When logged in, a user can "SWITCH" to any of these environments, type language statements in the BASIC-PLUS programming language, issue RUN commands to specific programs, or issue a special command called a CCL to execute a program with command options. Most RSTS systems managers generated the kernel to include the "Control-T" one line status option which could tell you what program you were running, under what RTS the program was using, how much memory the program was taking, how much it could expand to, and how much memory the RTS was using.

BASIC-PLUS
Programs written in BASIC-PLUS ran under the BASIC RTS, which allowed them up to 32K bytes of memory (out of 64K total). The rest of the memory was used by the BASIC RTS itself. If one wrote programs in a language that permitted true binary executables such as BASIC Plus 2, FORTRAN-IV or Macro Assembler, then the amount of memory available would be 56K (8K allocated to the RTS). The standard BASIC-PLUS prompt is the "Ready" response (example):

new New file name--HWORLD Ready 10 Print "Hello World" 20 Input "Press Control-T for 1 line status: ";a$ 30 End run HWORLD 10:17 PM        01-Jan-08 Hello World Press Control-T for 1 line status: ? 1      KB0     HWORLD+BASIC    KB(0R)  2(16)K+14K      0.2(+0.0) +0 Ready save Ready compile Ready DIR HWORLD.*/na/ex/si/pr SY:[1,2] HWORLD.BAS      1   < 60> HWORLD.BAC      7C Total of 8 blocks in 2 files in SY:[1,2] Ready

DCL
Starting with Version 9, DCL became the primary startup RTS even though it does not have the ability to execute binary programs. This became possible with the advent of the disappearing RSX RTS (see below). DCL was incorporated into all of the recent versions of DEC's operating systems (RSX-11, RT-11, VMS and later, OpenVMS) for compatibility. The standard DCL prompt is the dollar "$" sign (example):

$ write 0 "Hello World, it is "+F$TIME Hello World, it is 01-Jan-08 10:20 PM $ inquire p1 "Press Control-T for 1 line status:" Press Control-T for 1 line status: 1      KB0      DCL+DCL       KB(0R)       4(8)K+24K       0.1(+0.1) -8 $ set verify/debug/watch $ show memory (show memory) (SYSTAT/C) Memory allocation table: Start  End  Length  Permanent   Temporary 0K -  85K (  86K) MONITOR 86K - 1737K (1652K)  (User) 1738K - 1747K ( 10K)   (User)    DAPRES LIB 1748K - 1751K (  4K)   (User)    RMSRES LIB 1752K - 2043K ( 292K) ** XBUF ** 2044K - *** END *** $

RSX
Programs that were written for the RSX RTS such as COBOL, Macro Assembler, or later releases of BASIC Plus 2, could utilize the maximum amount of memory available for a binary program (56K due to the requirements of an RTS needing the top 8K to use for itself). RSTS Version 7 and later allowed the RSX RTS to be included in the kernel, making it completely "disappear" from the user address space, thus allowing 62K of memory for user programs. The remaining 2K still could not be used, either because of software limitations in RSTS memory management, or deliberately, to catch accidental wraparound of addresses in user programs.

Programs got around the limitations of the amount of available memory by using libraries (when permissible), by complicated overlay strategies, or by calling other programs ("Chaining") and passing them commands in a shared memory area called "Core Common," among other practices. When RSX is the default KBM, the standard RSX prompt (both logged in and logged out) is the ">" (or MCR "Monitor Console Routine") sign (example):

>run Please type HELLO >HELLO 1,2;SECRET >run ?What? >help Valid keyboard commands are: ASSIGN   DISMOUNT  HELP      RUN     UNSAVE BYE      EXIT      MOUNT     SHUTUP DEASSIGN HELLO     REASSIGN  SWITCH >run CSPCOM CSP>HWORLD=HWORLD CSP>^Z >RUN TKB TKB>HWORLD=HWORLD,LB:CSPCOM.OLB/LB TKB>// >run HWORLD.TSK Hello World Press Control-T for 1 line status: ? 1      KB0     HWORLD+...RSX   KB(0R)  7(32)K+0K       0.8(+0.2) +0 >DIR HWORLD.*/na/ex/si/pr SY:[1,2] HWORLD.BAS      1   < 60> HWORLD.BAC      7C HWORLD.OBJ      2   < 60> HWORLD.TSK     25C Total of 35 blocks in 4 files in SY:[1,2] >

RT-11
The RT-11 RTS emulated the Single Job version of the RT-11 distribution. Like the RSX emulation, RT-11 occupied the top 8K of memory, leaving the bottom 56K for CUSPS, programs written in FORTRAN-IV or Macro Assembler. When RT-11 is the default KBM, the standard RT-11 prompt (both logged in and logged out) is the "." sign (example):

.VERSION Please type HELLO .HELLO 1,2;SECRET .VERSION RT-11SJ V3-03; RSTS/E V8.0 .R PIP *HWORLD.MAC=KB: .MCALL .TTYIN,.PRINT,.EXIT HWORLD: .ASCII /Hello World/<15><12> .ASCIZ /Press Control-T for 1 line status:/ .EVEN Start: .PRINT #HWORLD .TTYIN .EXIT .END   START ^Z *^Z .R MACRO HWORLD=HWORLD *^Z .R LINK *HWORLD=HWORLD *^Z .R HWORLD.SAV Hello World Press Control-T for 1 line status: 1      KB0     HWORLD+RT11     KB(0R)  2(28)K+4K       0.6(+0.2) +0 ..DIR HWORLD.*/na/ex/si/pr SY:[1,2] HWORLD.BAS      1   < 60> HWORLD.BAC      7C HWORLD.TSK     25C HWORLD.MAC      1   < 60> HWORLD.OBJ      1   < 60> HWORLD.SAV      2C Total of 37 blocks in 6 files in SY:[1,2] .

TECO
One of the most powerful text editors ever developed, the TECO editor, was itself implemented as an RTS due to the amount of memory it used, (i.e. if it had run within another run-time system there probably would have been no memory available to edit user documents.)

EG&H
The original BASIC-PLUS language that has carried through all versions of RSTS was subcontracted by Evans Griffiths & Hart, Inc. for a fixed price of $10,500. In 1981 Evans Griffiths & Hart would market the ROSS/V product. ROSS/V would allow all user mode processes of RSTS (CUSPS, RTSs and user programs) the ability to run unmodified under VMS on the VAX-11 machines.

Versions
Following on the heels of TSS-8, the IOX code that would create the first time-sharing operating system for the PDP-11 is named BTSS. The name was again changed (from BTSS to RTSS) as a product with the name BTSS was currently marketed by Honeywell. A simple typing mistake changes the the name from RTSS to RSTS.


 * RSTS-11 Version 1 (Never Released)
 * RSTS-11 Version 2A-19 (1971) -- Installed at Carleton College and Seattle Pacific College.
 * RSTS-11 Version 2B (June 1971) -- Installed at the Delaware School Auxiliary Association.
 * RSTS-11 Version 2C (October 1971) -- Enhanced software support (Record I/O).
 * RSTS-11 Version 3A-19 (January 1972)
 * RSTS-11 Version 3B (May 1972)
 * RSTS-11 Version 3C (June 1972) -- Enhanced software support (UPDATE mode).
 * RSTS-11 Version 4A (October 1972) -- New hardware supported.
 * RSTS-11 Version 4B (July 1975) -- A patched version of V4A with no new features.

The addition of new memory management support and the ability to install more memory in the PDP-11/40 and PDP-11/45 create a name change. RSTS-11 now becomes RSTS/E.


 * RSTS/E Version 5A/21 (July 1973) -- Memory management extensions from 64K to 256K.
 * RSTS/E Version 5B/24 (November 1974) -- Multiple SWAP files, RTS and CCL introduced.
 * RSTS/E Version 5C-01 (March 1975) -- A patched version of V5B with no new features.
 * RSTS/E Version 6A-02 (August 1975) -- New hardware, 22bit addressing (2mb), 63 jobs.
 * RSTS/E Version 6B-02 (February 1977) -- New hardware, SYSGEN under RT-11, CCL at runtime.
 * RSTS/E Version 6C-03 (February 1978) -- DECnet, DTR, DIBOL supported. SUPERVISOR mode.
 * RSTS/E Version 7.0 (August 1978) -- New hardware, (4mb), RDC support.
 * RSTS/E Version 7.1 (February 1981) -- Kernel mode Instruction & Data space support, DECnet III.
 * RSTS/E Version 7.2 (August 1982) -- New hardware (UDA50 drives).
 * RSTS/E Version 8.0-06 (April 1983) -- New hardware (MicroPDP-11).
 * RSTS/E Version 9.0-14 (May 1985) -- New hardware, DCL default, PBS, multiple privs, hashed passwords and Stardate.
 * RSTS/E Version 9.1-05 (October 1985) -- Enhanced hardware support, multi-threaded FIP, LOAD INDEX.
 * RSTS/E Version 9.2-10 (June 1986) -- New hardware supported.
 * RSTS/E Version 9.3-20 (January 1987) -- Enhanced hardware support, DECnet IV.
 * RSTS/E Version 9.4 (July 1987) -- New hardware, Scheduler and Terminal Service improvements.
 * RSTS/E Version 9.5-08 (December 1987) -- Clustersize increased to 64, BACKUP/DIR added.
 * RSTS/E Version 9.6 (September 1988) -- LAT suport, HELP SPIKE.
 * RSTS/E Version 9.7 (July 1989) -- New hardware, DV0: at runtime, ANSI PDP-11C available.
 * RSTS/E Version 10.0 (May 1990) -- Command line history in TTDRV.
 * RSTS/E Version 10.1 (September 1992)

Wikipedia Related Articles

 * Asynchronous System Trap
 * BASIC-PLUS
 * BASIC Plus 2
 * Command line interpreter
 * Concise Command Language
 * CP/M
 * Datatrieve
 * DECnet
 * Digital Equipment Corporation
 * Disk operating system
 * DOS-11
 * Easter egg (virtual)
 * Front panel
 * Kevin Mitnick
 * Local Area Transport
 * Minesweeper (computer game)
 * Octal Debugging Technique
 * OS/8
 * PDP-11
 * QIO
 * Record Management Services
 * RSX-11
 * RT-11
 * Run-time system
 * Shell (computing)
 * Star Trek (text game)
 * SYSTAT
 * Text Editor and Corrector
 * Time-sharing
 * Time-sharing system evolution
 * TSS-8