Concurrent CP/M-86/80
| Company type | Operating system |
|---|---|
| Industry | Computer software |
| Predecessor | Concurrent CP/M-86, Concurrent DOS, Concurrent DOS 386 |
| Founder | Digital Research |
| Fate | Discontinued by Novell in 1992; development continued by licensees |
| Successor | Datapac Multiuser DOS, System Manager, CCI Multiuser DOS, IMS Multiuser DOS, REAL/32 |
Area served | IBM PC-compatible microcomputers |
Key people | Kathryn Strutynski, Francis "Frank" R. Holsworth |
| Products | Multiuser DOS operating system and variants |
| Owner | Digital Research (original), Novell (from 1991) |
| Parent | Digital Research; later Novell |
Multiuser DOS is a real-time, multitasking operating system designed to support multiple users simultaneously on IBM PC-compatible microcomputers.
This system evolved from earlier Digital Research products including Concurrent CP/M-86, Concurrent DOS, and Concurrent DOS 386. Initially created by Digital Research, it was acquired by Novell in 1991. Its lineage extends back to Digital Research’s 8-bit operating systems CP/M and MP/M, as well as the 16-bit, single-tasking CP/M-86, which was itself derived from CP/M.
Following Novell’s decision to discontinue Multiuser DOS in 1992, three primary master value-added resellers (VARs)—DataPac Australasia, Concurrent Controls, and Intelligent Micro Software—received licenses to continue independent development. These efforts resulted in Datapac Multiuser DOS and System Manager, CCI Multiuser DOS, and IMS Multiuser DOS alongside REAL/32, respectively.
The FlexOS family, which originated from Concurrent DOS 286 and Concurrent DOS 68K, was sold to Integrated Systems, Inc. (ISI) in July 1994.
Concurrent CP/M-86
The first release of CP/M-86 1.0 (featuring BDOS 2.x) was adapted for the IBM PC in 1982 but failed commercially against the more affordable PC DOS 1.0 from IBM. Neither operating system fully utilized the capabilities of the new 16-bit hardware at that time.
Shortly thereafter, an iteration of CP/M’s multitasking counterpart, MP/M-86 2.0, allowed PCs to support multiple concurrent users through dumb terminals connected via serial ports. This multi-user setup provided significant cost efficiencies compared to deploying separate PCs for each user and enabled shared-data applications such as accounting or inventory management during an era when PC networking was both rare and expensive.
Versions CP/M-86 1.1 (BDOS 2.2) and MP/M-86 2.1 were combined into Concurrent CP/M-86 3.0 (CCP/M-86) with BDOS 3.0 in late 1982. The project was led by Kathryn Strutynski with design contributions from Francis "Frank" R. Holsworth. Initially designed as a single-user OS supporting true multitasking of up to four CP/M-86 compatible programs, it could be configured for multi-processor environments and introduced "virtual screens" to switch between running applications. Subsequent releases added support for dumb terminals, enabling multi-user functionality. Concurrent CP/M-86 3.1 (BDOS 3.1) became available on February 21, 1984.
Concurrent CP/M-86 with Windows
In February 1984, Digital Research launched Concurrent CP/M with Windows for the IBM Personal Computer and Personal Computer XT, a variant of Concurrent CP/M-86 that incorporated windowing features.
Concurrent CP/M-86/80
This version targeted systems such as LSI-M4, LSI Octopus, and CAL PC that combined both 16-bit and 8-bit processors. Concurrent CP/M-86/80 enabled execution of both CP/M (8-bit) and CP/M-86 (16-bit) applications by dispatching commands to the appropriate processor based on file extensions (.COM or .CMD). It simulated a CP/M environment by converting 8-bit system calls into corresponding CP/M-86 calls processed by the 16-bit CPU.
Concurrent DOS
In August 1983, Bruce Skidmore, Raymond D. Pedrizetti, Dave Brown, and Gordon Edmonds developed PC-MODE, an optional add-on for Concurrent CP/M-86 3.1 (BDOS 3.1) that provided rudimentary compatibility with PC DOS 1.1. After being demonstrated at COMDEX in December 1983, it was released to hardware manufacturers in March 1984 as Concurrent DOS 3.1 (CDOS with BDOS 3.1). This allowed simple DOS programs that avoided direct hardware manipulation—such as PKZIP—to operate correctly; however, applications dependent on screen control like WordStar required native Concurrent CP/M versions.
While development teams in the US advanced Concurrent DOS up to version 4.1, adaptations for OEMs and localized versions were managed by Digital Research Europe’s OEM Support Group based in Newbury, UK starting from 1983.
Digital Research marketed Concurrent DOS 4.1 bundled with the Graphics Environment Manager (GEM) in 1985 as a competitor to IBM’s TopView environment. This release offered compatibility with PC DOS versions up to 2.x and supported numerous hardware platforms; the IBM PC compatible edition was branded Concurrent PC DOS 4.1.
Concurrent PC DOS
Released in 1984, Concurrent DOS 3.2 (incorporating BDOS 3.2) provided support for applications designed for CP/M-86 1.x, Concurrent CP/M-86 3.x, and PC DOS 2.0. This operating system was compatible with a variety of hardware platforms. The variant featuring an IBM PC-compatible BIOS/XIOS was designated Concurrent PC DOS 3.2, under the leadership of product manager Kathryn Strutynski.
Concurrent DOS 68K and FlexOS 68K
Beginning in 1984, Digital Research partnered with Motorola to develop Concurrent DOS 68K in Austin, Texas, as the successor to CP/M-68K. Written in the C programming language, the project was architected by Francis "Frank" R. Holsworth and received multimillion-dollar funding from Motorola. It targeted the 68000 and 68010 processors and initially operated on Motorola VME/10 systems. By early 1985, Concurrent DOS 68K version 1.0 was available for OEM evaluation. Subsequent releases 1.20 and 1.21 appeared in April 1986, offered at an OEM price point near . By late 1986, this system evolved into FlexOS 68K.
Documented releases include:
- Concurrent DOS 68K 1.0 (1985)
- Concurrent DOS 68K 1.1
- Concurrent DOS 68K 1.20 (April 1986)
- Concurrent DOS 68K 1.21 (1986)
Concurrent DOS 286 and FlexOS 286
Alongside Concurrent DOS 68K, Digital Research introduced Concurrent DOS 286 in collaboration with Intel in January 1985. This OS was based on earlier work with MP/M-286 and Concurrent CP/M-286 dating back to 1982. Frank R. Holsworth led a full rewrite in C that introduced a new architecture featuring dynamically loadable device drivers replacing the traditional static BIOS/XIOS.
Designed to operate natively in the Intel 80286 protected mode, it supported multi-user multitasking while maintaining efficient 8086 emulation. Although early prototype chips supported these features, production issues delayed the planned May release until Intel resolved chip errata through updated stepping levels, enhancing emulation performance via microcode improvements.
These hardware challenges also impacted FlexOS 286 version 1.x, a reengineered variant developed by Digital Research’s Flexible Automation Business Unit starting in 1986 at Monterey, California.
Later iterations incorporated compatibility with PC DOS versions 2.x and 3.x.
Known releases comprise:
- Concurrent DOS 286 1.0 (1985)
- Concurrent DOS 286 1.1 (January 1986)
- Concurrent DOS 286 1.2 (1986)
- FlexOS 286 1.3 (November 1986)
- FlexOS 286 1.31 (May 1987)
Concurrent DOS XM and Concurrent DOS 386
In 1986, Digital Research transferred its OEM Support Group to the European Development Centre (EDC) located in Hungerford, UK, which assumed responsibility for developing the Concurrent DOS product line beginning with Concurrent DOS version 4.11 and including associated products such as DOS Plus.
The versions labeled as Concurrent DOS XM (with "XM" indicating support for Expanded Memory) were developed at Hungerford and supported bank switching up to eight megabytes of EEMS. This allowed a real-mode environment capable of running multiple CP/M-86 and DOS applications simultaneously for up to three users—one local user plus two remote users connected via serial terminals.
In 1987, the platform was rewritten as Concurrent DOS 386 while retaining the classic XIOS and BDOS architectural framework.[1] Operating on Intel’s 80386 processor and successors, it utilized hardware virtualization to execute most DOS programs unaltered, including those accessed through terminals. The operating system enabled simultaneous multiuser file access so that applications functioned as if each user had an independent PC connected to a network server. This architecture allowed a single server to support multiple users via inexpensive terminals or PCs running terminal emulation software without requiring costly workstations or network cards. It provided genuine multiuser functionality with record locking mechanisms suitable for shared database environments.
Concurrent DOS 386 demanded approximately 200KB of conventional memory—significantly more than MS-DOS—and required a minimum of half a megabyte of RAM just to display the command prompt screen. Around one megabyte above the standard base memory of 640KB was necessary to run three sizeable applications concurrently, such as Microsoft Word or Multiplan.[2]
Concurrent DOS version 6.0 also served as the foundation for the later DR DOS family.
Recorded versions include:
- DR Concurrent PC DOS XM 5.0 (BDOS version 5.0)
- DR Concurrent DOS XM 5.0 (BDOS version 5.0, October 1986)
- DR Concurrent DOS XM 5.1 (BDOS approximately version ~5.1, January 1987)
- DR Concurrent DOS XM 5.2 (BDOS approximately version ~5.2, September 1987)
- DR Concurrent DOS XM 6.0 (BDOS version 6.0, November 1987), with subsequent updates through versions 6.01 and 6.21
- DR Concurrent DOS versions for the Intel architecture from release 1.0 (1987) through release version 3.02 (1989), progressing BDOS from approximately version ~5.0 to version ~6.2
Concurrent PC DOS XM version 5.0 emulated IBM PC DOS 2.10,[3] while both Concurrent DOS XM 6.0 and Concurrent DOS 386 2.0 maintained compatibility with IBM PC DOS 3.30.[4]
Reception
In 1988, BYTE magazine characterized Concurrent DOS 386 as largely compatible with MS-DOS; for instance, Microsoft Word version 3.1 operated correctly, whereas version 4.0 failed due to reliance on undocumented DOS functions. The system’s performance declined in direct relation to the number of concurrent applications running. Although it demanded more RAM, video input/output throughput was approximately twice as fast compared to standard DOS. The publication concluded that while more sophisticated 386-based operating systems were imminent, Concurrent DOS 386 was a practical and available solution at that time.
Variants
Concurrent Controls, Inc. produced multiple versions of Concurrent DOS, such as:
- CCI Concurrent DOS 386 1.12 (October 1987)
- CCI Concurrent DOS 386 2.01 (May 1988)
- CCI Concurrent DOS 386 3.01 (March 1989)
- CCI Concurrent DOS 386 3.02 (April 1990)
- CCI Concurrent DOS 386 3.03 (March 1991)
- CCI Concurrent DOS 386 3.04 (July 1991), also known as "CCI Concurrent DOS 4.0"
- Versions 3.05 through 3.07 with multiple updates released between 1992 and 1998
- CCI Concurrent DOS 3.10 R1 (October 2003)
Additional adaptations included Apricot Concurrent DOS 386 version 2.01 (1987), tailored for the Apricot Quad Version Level 4.3.
Multiuser DOS
Subsequent iterations of Concurrent DOS 386 incorporated elements from Digital Research’s PC DOS-compatible DR DOS 5.0, leading to a rebranding under the name "Multiuser DOS" (MDOS) beginning with version 5.0 (BDOS 6.5) in 1991.
Multiuser DOS encountered technical obstacles that hindered its ability to compete effectively with PC DOS-based local area networks. It necessitated custom device drivers since standard PC DOS drivers lacked support for multiuser and multitasking environments, making installation more complex by requiring kernel relinking via SYSGEN instead of straightforward file copying and CONFIG.SYS configuration.
Moreover, Multiuser DOS was incompatible with many widespread PC DOS extensions such as network protocol stacks and had limited compatibility with emerging hardware devices including graphics cards, sound peripherals, CD-ROM drives, and pointing devices. Although graphical terminal solutions were developed to facilitate running CGA, EGA, and VGA software, it remained less adaptable compared to networks composed of individual PCs. As the cost of personal computers decreased, the management benefits and reduced total cost of ownership offered by Multiuser DOS lost much of their appeal.
The licensing model for multiple users also resulted in higher expenses relative to single-user multitasking alternatives like Quarterdeck’s DESQview, preventing Multiuser DOS from gaining traction in the single-user multitasking market.
After Novell acquired Digital Research in 1991 and subsequently discontinued Multiuser DOS development in 1992, three Master Value-Added Resellers—DataPac Australasia, Concurrent Controls, and Intelligent Micro Software—secured source code licenses to continue independent development starting in 1994.
Documented releases include:
- DR Multiuser DOS versions 5.00 (1991) and 5.01
- Novell DR Multiuser DOS versions 5.10 (April 1992) and 5.11
- Novell DR Multiuser DOS version 5.13 (BDOS 6.6, released in 1992)
All Digital Research and Novell Multiuser DOS editions identified themselves as "IBM PC DOS" version 3.31.
DataPac Australasia
Known editions distributed by DataPac Australasia Pty Limited consist of:
- Datapac Multiuser DOS 5.0
- Datapac Multiuser DOS 5.1 (BDOS 6.6)
- Datapac System Manager 7.0 (released on 1996-08-22)
Following the acquisition of Datapac by Citrix Systems, Inc. in 1997, the System Manager product line was phased out shortly thereafter. In 2002, Citrix restructured its Sydney branch into the Advanced Products Group.
Concurrent Controls
Concurrent Controls, Inc. (CCI) launched multiple iterations of CCI Multiuser DOS:
- Versions ranging from CCI Multiuser DOS 7.00 to 7.22, spanning releases from R1 (September 1996) through R18 GOLD (dated 2005-04-21)
Each release identifies itself as "IBM PC DOS" version 3.31, with the displayed version number adjustable using the DOSVER utility.
In 1999, Concurrent Controls rebranded as Applica, Inc., and subsequently in 2002, Applica Technology transitioned to Aplycon Technologies, Inc.
IMS Multiuser DOS
Releases attributed to IMS Multiuser DOS include:
- Enhanced Release 5.1 issued in 1992
- Subsequent versions 5.11 and 5.14
- Later editions 7.0 and 7.1 (incorporating BDOS 6.7, dated 1994)
All versions present themselves as "IBM PC DOS" version 3.31.
REAL/32
In 1994, Intelligent Micro Software Ltd., located in Thatcham, UK, obtained licensing rights for Multiuser DOS development from Novell and rebranded the platform as REAL/32 in 1995.
IBM licensed version REAL/32 7.50 in the same year for deployment on its 4695 POS terminal systems.
Significant IMS REAL/32 versions include:
- Releases from 7.50 through 7.54 during 1995–1996
- Versions spanning 7.60 to 7.63 in 1997
- Editions from 7.70 up to 7.74 in 1998
- Updates between 7.80 and 7.83 in 1999
- Releases covering versions 7.90 to 7.92 also in 1999
- ITERA IMS REAL/32 variants up to version 7.94 during 2002–2003
- Integrated Solutions IMS REAL/32 version 7.95 by approximately 2010
Versions up to and including 7.74 identify as "IBM PC DOS" version 3.31; starting with version 7.80, they report version number 6.20.
Support for Logical Block Addressing (LBA) alongside FAT32 compatibility was introduced with version 7.90 in the year 1999.
On April 19, 2002, Intelligent Micro Software Ltd entered insolvency proceedings and was subsequently acquired by Itera Ltd., a client company led by Barry Quittenton; Itera was dissolved in March of 2006.
By the year 2010, distribution of REAL/32 was managed by Integrated Solutions Ltd., based in Thatcham, UK; however, this company later redirected its focus from software development toward building services.
REAL/NG
The REAL/NG project represented IMS' effort to create a "Next Generation" iteration of REAL/32, marketed as "REAL/32 for the internet age." This version aimed to enhance hardware compatibility across a spectrum ranging from personal computers to x86 multi-processor servers.
Highlighted features promoted in the year 2003 included:
- Compatibility with Red Hat Linux versions starting at release 7.3 or later
- Full backward compatibility with both DOS and previous REAL/32 versions
- Support for as many as 65,535 virtual consoles (users)
- Administration through web browser interfaces accessible locally or remotely without requiring Linux expertise
- An integrated TCP/IP terminal emulator provided for licensed users on Linux and Windows platforms
- Built-in capabilities for printing and file sharing along with drive mapping between Linux and REAL/NG servers
- Improved hardware support for users alongside enhanced performance metrics
- Significantly expanded support for TPA and multi-processor environments
- Embedded firewall functionality
- Competitive pricing per user seat combined with reduced total cost of ownership
- Distribution bundled on CD media alongside Red Hat installation packages
By December of that year, IMS had issued "REALNG V1.60-V1.19-V1.12," which appears to constitute the final release in this series; by early 2005, the domain realng.com redirected to IMS’s primary website, removing mentions of REAL/NG and concentrating exclusively on REAL/32 products.
Application software
The operating system advanced to support DOS applications while allowing software to utilize multiuser capabilities through dedicated function calls. It employed preemptive multitasking to ensure that malfunctioning programs could not dominate the CPU. Multiuser DOS continues to maintain compatibility with contemporary SSL/TLS libraries such as wolfSSL.
Its application programming interface (API) provided mechanisms for both blocking and non-blocking message queues, mutual exclusion queues, and subprocess threads capable of running independently from their parent processes. Additionally, it featured efficient pause operations designed to minimize unnecessary CPU usage. Programs had the flexibility to connect to virtual consoles or detach to operate as background tasks, with the option to reattach when required.
One significant feature was its shared memory architecture, which separated code and data segments so that identical code sections could be shared across multiple instances of the same application—thereby optimizing memory consumption.
Multitasking applications avoided resource-intensive idle loops by invoking API functions to enter a "sleep" state, preserving CPU cycles. Subsequent kernel iterations introduced Idle Detection, a capability that tracked DOS API calls to identify and suspend inactive processes, thereby enhancing multitasking performance. This innovation served as the foundation for the patented DR-DOS Dynamic Idle Detection power management system—commercially known as BatteryMAX—developed in 1989 by Roger Alan Gross and John P. Constant.
See also
- CP/M
- MP/M
- Concurrent DOS V60
- FlexOS
- DR DOS
- PC DOS – IBM’s OEM variant of MS-DOS
- MS-DOS 4.0 (multitasking)
- PC-MOS/386 – multitasking DOS clone
- VM/386 – multitasking DOS environment
- Virtual DOS machine
- Multiuser DOS Federation
- Timeline of operating systems
- List of mergers and acquisitions by Citrix
Further reading
- DRTIPS.ZIP (1992) authored by Novell Desktop Systems Group, Digital Research / Novell
External links
- Archived site of Intelligent Micro Software (IMS) – providers of IMS Multiuser DOS, IMS REAL/32, and REAL/NG
- Archived Logan Industries (LLI) site – US distributor of IMS REAL/32 until 2002
- Archived Concurrent Controls website – CCI Multiuser DOS
- Archive of Applica, Inc. website
- Archived Aplycon Technologies, Inc. website
- ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedIW_1987_MDOS386 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedlane198807 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs named1986_CDOSXM - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedDRI_1988_CDOS