This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)(Learn how and when to remove this template message)
RSX-11 is a discontinued family of real-time operating systems mainly for PDP-11 computers created by Digital Equipment Corporation (DEC), common in the late 1970s and early 1980s. RSX-11D first appeared on the PDP-11/40 in 1972. It was designed for and much used in process control, but was also popular for program development.
|Developer||Digital Equipment Corporation|
|OS family||DEC OS family|
|Source model||operating system source included; filesystem and utilities closed source|
|Default user interface||Command line interface|
Henry Krejci was the project leader for RSX-11D up to version 4. Garth Wolfendale was the project leader for RSX-11D from 1972–1976 and led the redesign and commercial release of the operating system as well as adding support for the 22-bit PDP-11/70 system. Dr. Wolfendale, originally from the UK, set up the team that designed and prototyped IAS in the UK; IAS, based on RSX-11D, provided time-shared user access to operating system resources. Andy Wilson then led the full development and release of the IAS system, based in Digital's UK development facility.
Ron McLean was the project leader for RSX-20F/RSX10F a version of RSX-11D not RSX11-M as many suspected. This was a PDP-10 front end.
Dave Cutler was the project leader for RSX-11M, which was an adaptation of the earlier RSX-11D for a smaller memory footprint. Principles first tried in RSX-11M later appeared in DEC's VMS. Microsoft's Windows NT system is in some areas a conceptual descendant of RSX-11M and VMS but is more directly descended from an object based operating system Cutler developed for a RISC processor (Prism) which was never released. This lineage is made clear in Cutler's foreword to "Inside Windows NT" by Helen Custer.
RSX-11 existed in many versions:
- RSX-11A, C – small paper tape real time executives.
- RSX-11B – small real time executive based on RSX-11C with support for disk I/O. To start up the system, first DOS-11 was booted, and then RSX-11B was started. RSX-11B programs used DOS-11 macros to perform disk I/O.
- RSX-11D – a multiuser disk-based system. Evolved into IAS.
- IAS – a timesharing-oriented variant of RSX-11D released at about the same time as the PDP-11/70. The first version of RSX to include DCL (Digital Command Language), which was originally known as PDS (Program Development System).
- RSX-11M – a multiuser version that was popular on all PDP-11s.
- RSX-11S – a memory-resident version of RSX-11M used in embedded real-time applications. RSX-11S applications were developed under RSX-11M.
- RSX-11M-Plus – a much extended version of RSX-11M, originally designed to support the multi-processor PDP-11/74, a computer that was never released, but also used widely as a standard operating system on the PDP-11/70.
- RSX-20F – PDP-11/40 front end processor operating system for the DEC KL10 processor. Derived from RSX-11D.
- Micro/RSX – a pre-generated full version of RSX-11M-Plus with hardware autoconfiguration, implemented specifically for the Micro/PDP-11, a low-cost multi-user system in a box, featuring ease of installation, no system generation, and a special documentation set.
- P/OS – A version of RSX-11M-Plus that was targeted to the DEC Professional line of PDP-11-based personal computers.
Clones in the USSREdit
- DOS/RV, Russian: ОСРВ-СМ – Two names for the clandestine clone of RSX-11M that was produced in the Socialist bloc. This system appeared to be an exact duplicate of RSX-11M save that the prompt was changed in the binary files. The full RSX-11M source code was always delivered with the distribution of the operating system (and used in the system generation process), so it was easy to make a copy. If read as Cyrillic, the name ОСРВ is an abbreviation for 'Операционная Система Реального Времени' – the Russian for 'Real-time Operating System'. Not surprisingly, the six-character string 'OCPBCM' fits nicely in the same 16-bit RADIX-50 word as 'RSX11M'. Two last symbols 'СМ' is an abbreviation for 'Система Малых [электронно-вычислительных машин]' – the Russian for 'System of the Small [electronic computation machines]' (SM). 'СМ ЭВМ' is the name of DEC compatible computers developed in USSR (although not all of the СМ ЭВМ was compatible with PDP-11).
- There are differences between RSX and ОСРВ because of differences between SM and PDP hardware and Soviet engineers fixed bugs in RSX. (ОСРВМ is the next model of ОСРВ-СМ for the SM-1425.) RSX11M, however, was used more often than rewritten ОСРВ, because of better work by the RSX-11 re-coders, stability of patched RSX, and a faster update cycle for SM-RSX drivers and patches made possible by the SM users community.
- "RSX was a separate path at DEC and the progenitor more than anything of VMS that went to NT via Dave Cutler." — Gordon Bell, Vice President, Research and Development, Digital Equipment Corporation.
- "My purpose was to come up with a good acronym and then find some appropriate words to justify it. ... Oh, by the way, the acronym stood for Real-Time System Executive. Years later that was changed to Resource Sharing Executive, which I think is even better." — Dennis J. Brevik who designed the forerunner RSX-15, about which Brevik said: "At first I called the new system DEX-15. It was an acronym for Digital's Executive - for the PDP-15".
- "My first operating system project was to build a real-time system called RSX-11M that ran on Digital's PDP-11 16-bit series of minicomputers. ... a multitasking operating system that would run in 32 KB of memory with a hierarchical file system, application swapping, real-time scheduling, and a set of development utilities. The operating system and utilities were to run on the entire line of PDP-11 platforms, from the very small systems up through the PDP-11/70 which had memory-mapping hardware and supported up to 4 MB of memory." — Dave Cutler
RSX-11 was often used for general-purpose timeshare computing, even though this was the target use for the RSTS/E operating system. RSX-11 provided features to ensure less than a maximum necessary response time to peripheral device input (i.e. real-time processing), its intended use. These included the ability to lock a process (called a task under RSX) into memory as part of system boot up and to assign a process a higher priority so that it would execute before any processes with a lower priority.
- In order to support large programs within the PDP-11's relatively small virtual address space of 64 KB, a sophisticated semi-automatic overlay system was used; for any given program, this overlay scheme was produced by RSX's taskbuilder program (called TKB). If the overlay scheme was especially complex, taskbuilding could take a rather long time. Outside the office of the engineer in charge of ongoing maintenance of the taskbuilder was a whiteboard labeled "Taskbuilder wishlist". For several years, the top item on the wishlist was "same day service".
- Before DCL, the usual RSX prompt was ">" or "MCR>", standing for the "Monitor Console Routine". All commands could be shortened to their first three characters when entered and correspondingly all commands were unique in their first three characters. Only the login command of "HELLO" could be executed by a user not yet logged in. Not so much to be friendly, "HELLO" was used as the login command because only the first three characters, "HEL", were relevant and this allowed a non-logged in user to execute a "HELP" command which was passed to the "HEL" command processing program and handled.
- When run on certain PDP-11 processors, each DEC operating system displayed a characteristic light pattern on the front of the processor in the "Data" lights when the system was idle. In RSX, this light pattern was created by an idle task that ran at the system's lowest scheduling priority. The light pattern was produced when the processor displayed the contents CPU register R0 when the "WAIT" instruction was executed. The RSX-11M light pattern was two sets of lights that swept outwards to the left and right from the center of the light display (or inwards if the IND indirect command file processor program was currently running). By contrast, the IAS light pattern was a single bar of lights that swept leftwards. Correspondingly, a jumbled light pattern (reflecting memory fetches) was a visible indication that the computer was under load as this meant that the system idle task was not being run. Other PDP-11 operating systems such as RSTS/E had their own distinctive patterns in the console lights.
- Dan Brevik posted a history of precursors to RSX-11 in alt.sys.pdp11.
- Dan's RSX-11 prehistory at the Wayback Machine (archived April 4, 2005) - contains documents which trace RSX-11 back through RSX-15 and the real time executive written by John Neblett in the late 1950s for the RW-300 process control computer by TRW
- Al Kossow posted some further notes on RSX-11 in alt.sys.pdp11.