MP/M

From Wikipedia, the free encyclopedia

MP/M
Website: http://www.cpm.z80.de/
Company/
developer:
Digital Research, Inc. / Gary Kildall
OS family: Not Applicable
Source model: Open source
Latest stable release: II / date unknown
Kernel type: Not Applicable
Default user interface: Command line interface
License: Proprietary
Working state: Historic

MP/M was the multi-user version of the CP/M operating system, created by Digital Research. It allowed multiple users to connect to a single computer, each using a separate terminal.

MP/M was a fairly advanced operating system for its era, at least on microcomputers. It included a priority-scheduled multitasking kernel (before such a name was used, they referred to it as the nucleus) with memory protection, concurrent input/output and support for spooling and queueing. It also allowed for each user to run multiple programs, and switch between them.

The system required a minimum of 32 kB of RAM to run, but this left little memory for user applications. In order to support reasonable setups, MP/M allowed for memory to be switched in and out of the machine's "real memory" area, the lower 32 kB. So for instance a program might be loaded into a "bank" of RAM that was not addressable by the CPU, and when it was time for the program to run that bank of RAM would be "switched" to appear in the lower 32 kB and thus become visible to the OS. This technique, known as bank switching, is a rudimentary version of virtual memory. It was subsequently added to the single user version of CP/M with version 3.0.

One of the primary uses of MP/M, perhaps to the surprise of DRI, was as a "power user" version of CP/M for a single user. The ability to run several programs at the same time and address large amounts of memory made the system worth the extra price.

Like CP/M before it, MP/M was eventually ported to the Intel 8086, and appeared as MP/M-86.

MP/M-86 absorbed some of the technology of CP/M-86 to become Concurrent CP/M, later developed into an MS-DOS compatible 386-specific version, Concurrent DOS 386. For more information on this, see Multiuser DOS.