Concurrent CP/M
| Company type | Operating system |
|---|---|
| Industry | Computer software |
| Founded | 1979 |
| Founder | Tom Rolander |
| Products | MP/M operating system |
MP/M (short for Multi-Programming Monitor Control Program) was a multi-user iteration of the CP/M operating system, created by Digital Research's Tom Rolander in 1979. This system allowed several users to access a single computer simultaneously through distinct terminals.
At the time, MP/M was considered sophisticated for microcomputer environments, featuring a priority-based multitasking kernel—referred to as the nucleus—that included memory protection, simultaneous input/output handling (XIOS), and capabilities for spooling and job queue management. It enabled users to execute and switch among multiple applications concurrently.
MP/M-80
This 8-bit variant required an Intel 8080 or Zilog Z80 processor along with a minimum of 32 KB RAM, which left limited space for software. To make better use of available memory, MP/M implemented bank switching—loading programs into otherwise inaccessible RAM banks that could be swapped into lower memory as needed. This approach was later incorporated into CP/M version 3.0.
Interestingly, MP/M found unexpected favor among "power users" as a single-user system due to its multitasking abilities and expanded memory support, justifying its premium price.
The release of MP/M II 2.0 in 1981 introduced file sharing capabilities, followed by MP/M II 2.1 in January 1982, which enhanced file locking mechanisms.
Versions include:
- MP/M 1.0 (1979)
- MP/M 1.1 (January 1980)
- MP/M II 2.0 (July 1981; added file sharing)
- MP/M II 2.1 (January 1982; added extended file locking)
MP/M-86
Similar to CP/M, MP/M was adapted for the 16-bit Intel 8086, with MP/M-86 2.0 debuting in September 1981. Among its principal developers was Francis "Frank" R. Holsworth, who later assumed a marketing director role at Digital Research. Known editions of MP/M-86 2.0 were released in September and October 1981, succeeded by MP/M-86 2.1 in July 1982.
The version 2.1 incorporated elements from CP/M-86 1.1 (BDOS 2.2), evolving into Concurrent CP/M-86 version 3.0 (BDOS 3.0) by late 1982, which introduced features such as "virtual screens." Kathryn Strutynski continued managing the project for Concurrent CP/M-86. In December 1983, an optional DOS emulator called PC-MODE was launched for Concurrent CP/M-86 3.1 (BDOS 3.1), which appeared in February 1984. This platform eventually transformed into the MS-DOS compatible Concurrent DOS (BDOS versions beyond 3.1), later developing into FlexOS and Multiuser DOS, systems still operational in certain industrial sectors.
Concurrent CP/M is commonly abbreviated as CCP/M.
MP/M 8-16
The designation MP/M 8-16 (or MP/M-8/16) referred to CompuPro’s integration of multi-user 16-bit MP/M-86 with single-user CP/M features and multi-user 8-bit MP/M operations on the multi-processor CompuPro System 816 hardware platform. Subsequent releases supported execution of Concurrent DOS 3.1.
MP/M-286
In 1982, Digital Research announced MP/M-286, designed to exploit the Intel 80286’s enhanced memory management and protection capabilities to run both MP/M-86 and CP/M-86 software. Although it did not launch as originally intended, this effort evolved into Concurrent CP/M-286, which served as the foundation for Concurrent DOS 286 (1985) and FlexOS 286 (1986).
Commands
The Console Command Processor (CCP) for MP/M II recognizes and executes the following commands:
- ABORT
- ATTACH
- ASM
- CONSOLE
- DDT
- DIR
- DSKRESET
- DUMP
- ED
- ERA
- ERAQ
- GENHEX
- GENMOD
- GENSYS
- LIB
- LINK
- LOAD
- MPMLDR
- MPMSTAT
- PIP
- PRINTER
- PRLCOM
- RDT
- REN
- RMAC
- SCHED
- SDIR
- SET
- SHOW
- SPOOL
- STAT
- STOPSPL
- SUBMIT
- TOD
- TYPE
- USER
- XREF
CP/NET, CP/NOS, MP/NET, and MP/NOS
During the early 1980s, Digital Research introduced CP/NET, a networking software designed to link an MP/M server with several CP/M clients running CP/NET. Initially created by Tom Rolander, CP/NET facilitated file and printer sharing as well as electronic mail capabilities.
MP/NET expanded MP/M functionality by allowing it to act simultaneously as a server and requester for CP/M clients. Diskless client machines operated using CP/NOS (Network Operating System), which stored the operating system in ROM, while MP/NOS provided MP/M without local disk storage, handling disk operations over the network.
Key supporting modules included:
- NIOS – Network I/O System
- SNIOS – Slave Network I/O System
- NDOS – Network Disk Operating System
Versions 1.0 through 1.2 of CP/NET were available for the 8080 and Z80 CPUs, alongside CP/NET-86 tailored for the 8086 processor. Digital Research's networking products later evolved into DR Net and FlexNet.
Legacy
Starting in 1997, Caldera granted permissions for redistribution and modification of original Digital Research software files, including source code from the CP/M and MP/M series, through Tim Olmstead's "The Unofficial CP/M Web site." After Olmstead passed away in 2001, Lineo—then holding the rights—broadened the free distribution license to encourage ongoing community involvement and preservation initiatives.