Hubbry Logo
Multiuser DOSMultiuser DOSMain
Open search
Multiuser DOS
Community hub
Multiuser DOS
logo
8 pages, 0 posts
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
Contribute something
Multiuser DOS
Multiuser DOS
from Wikipedia

Multiuser DOS
Novell DR Multiuser DOS Release 5.1
DeveloperDigital Research, Novell
OS familyCP/M
Working stateDiscontinued
Source modelClosed source
Final release7.22 R18 / 21 April 2005; 20 years ago (2005-04-21) (REAL/32: 7.95)
Available inEnglish
Update methodRe-installation
Package managerNone
Supported platformsx86, 68000
Kernel typeMonolithic kernel
Default
user interface
Command-line interface (COMMAND.COM)
LicenseProprietary
Official websiteVarious (see notes)

Multiuser DOS is a real-time multi-user multi-tasking operating system for IBM PC-compatible microcomputers.

An evolution of the older Concurrent CP/M-86, Concurrent DOS and Concurrent DOS 386 operating systems, it was originally developed by Digital Research and acquired and further developed by Novell in 1991.[1][2][3] Its ancestry lies in the earlier Digital Research 8-bit operating systems CP/M and MP/M, and the 16-bit single-tasking CP/M-86 which evolved from CP/M.

When Novell abandoned Multiuser DOS in 1992, the three master value-added resellers (VARs) DataPac Australasia, Concurrent Controls[4] and Intelligent Micro Software[5] were allowed to take over and continued independent development into Datapac Multiuser DOS and System Manager, CCI Multiuser DOS, and IMS Multiuser DOS and REAL/32.[5]

The FlexOS line, which evolved from Concurrent DOS 286 and Concurrent DOS 68K, was sold off to Integrated Systems, Inc. (ISI) in July 1994.

Concurrent CP/M-86

[edit]

The initial version of CP/M-86 1.0 (with BDOS 2.x) was adapted and became available to the IBM PC in 1982. It was commercially unsuccessful as IBM's PC DOS 1.0 offered much the same facilities for a considerably lower price. Neither PC DOS nor CP/M-86 could fully exploit the power and capabilities of the new 16-bit machine.

It was soon supplemented by an implementation of CP/M's multitasking 'big brother', MP/M-86 2.0, since September 1981. This turned a PC into a multiuser machine capable of supporting multiple concurrent users using dumb terminals attached by serial ports. The environment presented to each user made it seem as if they had the entire computer to themselves. Since terminals cost a fraction of the then-substantial price of a complete PC, this offered considerable cost savings, as well as facilitating multi-user shared-data applications such as accounts or stock control in a time when PC networks were rare, very expensive and difficult to implement.

CP/M-86 1.1 (with BDOS 2.2) and MP/M-86 2.1 were merged to create Concurrent CP/M-86 3.0 (also known as CCP/M-86) with BDOS 3.0 in late 1982.[6] Kathryn Strutynski, the project manager for CP/M-86, was also the project manager for Concurrent CP/M-86. One of its designers was Francis "Frank" R. Holsworth.[7][8] Initially, this was a single-user operating system supporting true multi-tasking of up to four (in its default configuration) CP/M-86 compatible programs. Like its predecessors it could be configured for multi-processor support (see e.g. Concurrent CP/M-86/80) and also added "virtual screens" letting an operator switch between multiple interacting programs.[6] Later versions supported dumb terminals connected to the CP/M-86 machine as multiuser systems. Concurrent CP/M-86 3.1 (BDOS 3.1) shipped on 21 February 1984.[9]

Adaptations

[edit]

Concurrent CP/M-86 with Windows

[edit]

In February 1984 Digital Research also offered a version of Concurrent CP/M-86 with windowing capabilities named Concurrent CP/M with Windows for the IBM Personal Computer and Personal Computer XT.[10]

Concurrent CP/M-86/80

[edit]

This was an adaptation of Concurrent CP/M-86 for the LSI-M4, LSI Octopus[11] and CAL PC computers. These machines had both 16-bit and 8-bit processors, because in the early days of 16-bit personal computing, 8-bit software was more available and often ran faster than the corresponding 16-bit software. Concurrent CP/M-86/80 allowed users to run both CP/M (8-bit) and CP/M-86 (16-bit) applications. When a command was entered, the operating system ran the corresponding application on either the 8-bit or the 16-bit processor, depending on whether the executable file had a .COM or .CMD extension. It emulated a CP/M environment for 8-bit programs by translating CP/M system calls into CP/M-86 system calls, which were then executed by the 16-bit processor.[6]

Concurrent DOS

[edit]

In August 1983, Bruce Skidmore, Raymond D. Pedrizetti, Dave Brown and Gordon Edmonds teamed up to create PC-MODE,[12] an optional module for Concurrent CP/M-86 3.1[13][14] (with BDOS 3.1) to provide basic compatibility with PC DOS 1.1 (and MS-DOS 1.1).[14] This was shown publicly at COMDEX in December 1983[12] and shipped in March 1984 as Concurrent DOS 3.1 (a.k.a. CDOS with BDOS 3.1) to hardware vendors.[15][16] Simple DOS applications, which did not directly access the screen or other hardware, could be run. For example, although a console program such as PKZIP worked perfectly and offered more facilities than the CP/M-native ARC archiver, applications which performed screen manipulations, such as the WordStar word processor for DOS, would not, and native Concurrent CP/M (or CP/M-86) versions were required.

While Concurrent DOS 3.1 up to 4.1 had been developed in the US, OEM adaptations and localizations were carried out by DR Europe's OEM Support Group in Newbury, UK,[17] since 1983.

Digital Research positioned Concurrent DOS 4.1 with GEM as alternative for IBM's TopView in 1985.[18]

Concurrent PC DOS

[edit]

Concurrent DOS 3.2 (with BDOS 3.2) in 1984 was compatible with applications for CP/M-86 1.x, Concurrent CP/M-86 3.x and PC DOS 2.0.[17] It was available for many different hardware platforms. The version with an IBM–PC-compatible BIOS/XIOS was named Concurrent PC DOS 3.2. Kathryn Strutynski was the product manager for Concurrent PC DOS.

Concurrent DOS 68K and FlexOS 68K

[edit]

Efforts being part of a cooperation with Motorola since 1984[19][14] led to the development of Concurrent DOS 68K in Austin, Texas, as a successor to CP/M-68K written in C. One of its main architects was Francis "Frank" R. Holsworth (known by his initials, FRH).[7][8] Concurrent DOS 68K 1.0 became available for OEM evaluation in early 1985.[20][21] The effort received considerable funding worth several million dollars from Motorola,[20] and was designed for their 68000/68010 processors. Like the earlier GEMDOS system for 68000 processors it initially ran on the Motorola VME/10 development system.[14] Concurrent DOS 68K 1.20/1.21 was available in April 1986,[22][23][24] offered for about 200000 dollars to OEMs.[20] This system evolved into FlexOS 68K in late 1986.

Known versions include:

Concurrent DOS 286 and FlexOS 286

[edit]

In parallel to the Concurrent DOS 68K effort,[20] Digital Research also previewed Concurrent DOS 286[25] in cooperation with Intel in January 1985. This was based on MP/M-286 and Concurrent CP/M-286, on which Digital Research had worked since 1982.[26][27]

Concurrent DOS 286 was a complete rewrite in the C language based on a new system architecture with dynamically loadable device drivers instead of a static BIOS or XIOS.[25] One of its main architects was Francis "Frank" R. Holsworth.[7][8] The operating system would function strictly in 80286 native mode, allowing protected mode multi-user, multitasking operation while running 8086 emulation.[28][25] While this worked on the B-1 step of prototype chip samples, Digital Research, with evaluation copies of their operating system already shipping in April, discovered problems with the emulation on the production level C-1 step of the processor in May, which would not allow Concurrent DOS 286 to run 8086 software in protected mode. The release of Concurrent DOS 286 had been scheduled for late May, but was delayed until Intel could develop a new version of the chip.[28] In August, after extensive testing E-1 step samples of the 80286, Digital Research said that Intel had corrected all documented 286 errata, but that there were still undocumented chip performance problems with the prerelease version of Concurrent DOS 286 running on the E-1 step. Intel said that the approach Digital Research wished to take in emulating 8086 software in protected mode differed from the original specifications; nevertheless they incorporated into the E-2 step minor changes in the microcode that allowed Digital Research to run emulation mode much faster (see LOADALL).[29][23] These same limitations affected FlexOS 286 version 1.x, a reengineered derivation of Concurrent DOS 286,[30][31] which was developed by Digital Research's new Flexible Automation Business Unit in Monterey, California, since 1986.

Later versions added compatibility with PC DOS 2.x and 3.x.

Known versions include:

Concurrent DOS XM and Concurrent DOS 386

[edit]
Digital Research Concurrent DOS XM Release 6.0
Digital Research Concurrent DOS 386 Release 2.0

The OEM Support Group was relocated into Digital Research's newly created European Development Centre (EDC) in Hungerford, UK in 1986, which started to take over further development of the Concurrent DOS family since Concurrent DOS 4.11, including siblings like DOS Plus and successors.

Developed in Hungerford, UK, versions 5 and 6 (Concurrent DOS XM, with XM standing for Expanded Memory) could bank switch up to 8 MB of EEMS to provide a real-mode environment to run multiple CP/M-86 and DOS programs concurrently and support up to three users (one local and up to two hooked up via serial terminals).

In 1987, Concurrent DOS 86 was rewritten to become Concurrent DOS 386,[33] still a continuation of the classical XIOS & BDOS architecture. This ran on machines equipped with the Intel 80386 and later processors, using the 386's hardware facilities for virtualizing the hardware, allowing most DOS applications to run unmodified under Concurrent DOS 386, even on terminals. The OS supported concurrent multiuser file access, allowing multiuser applications to run as if they were on individual PCs attached to a network server. Concurrent DOS 386 allowed a single server to support a number of users on dumb terminals or inexpensive low-specification PCs running terminal emulation software, without the need for expensive workstations and then-expensive network cards. It was a true multiuser system; several users could use a single database with record locking to prevent mutual interference.

Concurrent DOS 386 uses about 200K of conventional memory, much more than MS-DOS. BYTE said that with the software's minimum requirement of 512K RAM "all you can do is admire the system prompt", and estimated that 1MB RAM in addition to the base 640K allows for using three major applications like Microsoft Word or Multiplan.[34]

Concurrent DOS 6.0 represented also the starting point for the DR DOS family, which was carved out of it.

Known versions include:

  • DR Concurrent PC DOS XM 5.0 (BDOS 5.0)
  • DR Concurrent DOS XM 5.0 (BDOS 5.0, October 1986)
  • DR Concurrent DOS XM 5.1 (BDOS 5.1?, January 1987)
  • DR Concurrent DOS XM 5.2 (BDOS 5.2?, September 1987)[35][36][37]
  • DR Concurrent DOS XM 6.0 (BDOS 6.0, 1987-11-18),[38][39] 6.01 (1987)
  • DR Concurrent DOS XM 6.2 (BDOS 6.2),[40] 6.21
  • DR Concurrent DOS 386 1.0 (BDOS 5.0?, 1987)
  • DR Concurrent DOS 386 1.1 (BDOS 5.2?, September 1987)[35]
  • DR Concurrent DOS 386 2.0 (BDOS 6.0, 1987-11-18),[38] 2.01[41]
  • DR Concurrent DOS 386 3.0 (BDOS 6.2, December 1988, January 1989),[40] 3.01 (1989-05-19), 3.02 (1989)

Concurrent PC DOS XM 5.0 emulated IBM PC DOS 2.10,[42] whereas Concurrent DOS XM 6.0 and Concurrent DOS 386 2.0 were compatible with IBM PC DOS 3.30.[43]

Reception

[edit]

BYTE in 1988 described Concurrent DOS 386 as "substantially compatible" with MS-DOS; Microsoft Word 3.1 ran, for example, while 4.0 did not because of its use of undocumented DOS functions. The magazine reported that performance decreased proportionately to the number of simultaneous applications. In contrast to the higher RAM requirement, BYTE found that video I/O was twice as fast as on DOS. The magazine concluded that while "bigger and better" 386 operating systems were coming, Concurrent DOS 386 "is here today and ready to go".[34]

Adaptations

[edit]

Known CCI Concurrent DOS adaptations by Concurrent Controls, Inc. include:

  • CCI Concurrent DOS 386 1.12 (BDOS 5.0?, October 1987)
  • CCI Concurrent DOS 386 2.01 (BDOS 6.0?, May 1988)
  • CCI Concurrent DOS 386 3.01 (BDOS 6.2?, 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)[44] aka "CCI Concurrent DOS 4.0"[45]
  • CCI Concurrent DOS 3.05 R1 (1992-02), R2 (1992), R3+R4 (1992), R5+R6 (1992), R7+R8 (1993), R9+R10 (1993), R11 (August 1993)
  • CCI Concurrent DOS 3.06 R1 (December 1993), R2+R3 (1994), R4+R5+R6 (1994), R7 (July 1994)
  • CCI Concurrent DOS 3.07 R1 (March 1995), R2 (1995), R3 (1996), R4 (1996), R5 (1997), R6 (1997), R7 (June 1998)[46]
  • CCI Concurrent DOS 3.08
  • CCI Concurrent DOS 3.10 R1 (2003-10-05)[47]

Other adaptations include:

  • Apricot Concurrent DOS 386 2.01 (1987) for Apricot Quad Version Level 4.3[48]

Multiuser DOS

[edit]

Later versions of Concurrent DOS 386 incorporated some of the enhanced functionality of DR's later single-user PC DOS clone DR DOS 5.0, after which the product was given the more explanatory name "Multiuser DOS" (a.k.a. MDOS), starting with version 5.0 (with BDOS 6.5) in 1991.[49]

Multiuser DOS suffered from several technical limitations that restricted its ability to compete with LANs based on PC DOS. It required its own special device drivers for much common hardware, as PC DOS drivers were not multiuser or multi-tasking aware. Driver installation was more complex than the simple PC DOS method of copying the files onto the boot disk and modifying CONFIG.SYS appropriately – it was necessary to relink the Multiuser DOS kernel (known as a nucleus) using the SYSGEN command.

Multiuser DOS was also unable to use many common PC DOS additions such as network stacks, and it was limited in its ability to support later developments in the PC-compatible world, such as graphics adaptors, sound cards, CD-ROM drives and mice. Although many of these were soon rectified – for example, graphical terminals were developed, allowing users to use CGA, EGA and VGA software – it was less flexible in this regard than a network of individual PCs, and as the prices of these fell, it became less and less competitive, although it still offered benefits in terms of management and lower total cost of ownership. As a multi-user operating system its price was higher than a single-user system, of course, and it required special device drivers, unlike single-user multitasking DOS add-ons such as Quarterdeck's DESQview. Unlike MP/M, it never became popular for single-user but multitasking use.

When Novell acquired Digital Research in 1991[1][2][3] and abandoned Multiuser DOS in 1992, the three Master VARs DataPac Australasia, Concurrent Controls[4] and Intelligent Micro Software[5] were allowed to license the source code of the system to take over and continue independent development of their derivations in 1994.

Known versions include:

  • DR Multiuser DOS 5.00 (1991),[50] 5.01
  • Novell DR Multiuser DOS 5.10 (1992-04-13),[51] 5.11[52]
  • Novell DR Multiuser DOS 5.13 (BDOS 6.6, 1992)

All versions of Digital Research and Novell DR Multiuser DOS reported themselves as "IBM PC DOS" version 3.31.

Adaptations

[edit]

DataPac Australasia

[edit]

Known versions by DataPac Australasia Pty Limited include:

  • Datapac Multiuser DOS 5.0
  • Datapac Multiuser DOS 5.1 (BDOS 6.6)
  • Datapac System Manager 7.0 (1996-08-22)

In 1997, Datapac was bought by Citrix Systems, Inc.,[53][54][55] and System Manager was abandoned soon after. In 2002 the Sydney-based unit was spun out into Citrix' Advanced Products Group.[56]

Concurrent Controls

[edit]

Known CCI Multiuser DOS versions by Concurrent Controls, Inc. (CCI) include:

  • CCI Multiuser DOS 7.00
  • CCI Multiuser DOS 7.10
  • CCI Multiuser DOS 7.21[57]
  • CCI Multiuser DOS 7.22[57] R1 (September 1996), R2 (1996), R3 (1997), R4 GOLD/PLUS/LITE (BDOS 6.6, 1997-02-10), R5 GOLD (1997), R6 GOLD (1997), R7 GOLD (June 1998), R8 GOLD, R9 GOLD, R10 GOLD, R11 GOLD (2000-09-25), R12 GOLD (2002-05-15), R13 GOLD (2002-07-15), R14 GOLD (2002-09-13), R15 GOLD, R16 GOLD (2003-10-10), R17 GOLD (2004-02-09), R18 GOLD (2005-04-21)

All versions of CCI Multiuser DOS report themselves as "IBM PC DOS" version 3.31.[57] Similar to SETVER under DOS, this can be changed using the Multiuser DOS DOSVER x.y utility.[57]

In 1999, CCI changed its name to Applica, Inc.[58] In 2002 Applica Technology became Aplycon Technologies, Inc.[59]

Intelligent Micro Software, Itera and Integrated Solutions

[edit]
DOS 386 Professional
[edit]
IMS Multiuser DOS
[edit]

Known adaptations of IMS Multiuser DOS include:

  • IMS Multiuser DOS Enhanced Release 5.1 (1992)
  • IMS Multiuser DOS 5.11
  • IMS Multiuser DOS 5.14
  • IMS Multiuser DOS 7.0
  • IMS Multiuser DOS 7.1 (BDOS 6.7, 1994)

All versions of IMS Multiuser DOS report themselves as "IBM PC DOS" version 3.31.

REAL/32
[edit]
IMS REAL/32 Version 7.6

Intelligent Micro Software Ltd. (IMS) of Thatcham, UK, acquired a license to further develop Multiuser DOS from Novell in 1994 and renamed their product REAL/32 in 1995.[5]

Similar to FlexOS/4690 OS before, IBM in 1995 licensed REAL/32 7.50 to bundle it with their 4695 POS terminals.[5][clarification needed]

IMS REAL/32 versions:

  • IMS REAL/32 7.50 (BDOS 6.8, 1995-07-01), 7.51 (BDOS 6.8), 7.52 (BDOS 6.9), 7.53 (BDOS 6.9, 1996-04-01), 7.54 (BDOS 6.9, 1996-08-01)[60]
  • IMS REAL/32 7.60 (BDOS 6.9, February 1997),[61] 7.61, 7.62, 7.63
  • IMS REAL/32 7.70 (November 1997), 7.71, 7.72, 7.73, 7.74 (1998)[62]
  • IMS REAL/32 7.80, 7.81 (February 1999), 7.82, 7.83 (BDOS 6.10)
  • IMS REAL/32 7.90 (1999),[63] 7.91, 7.92
  • ITERA IMS REAL/32 7.93 (June 2002),[64] 7.94 (BDOS 6.13, 2003-01-31)[65]
  • Integrated Solutions IMS REAL/32 7.95[66]

REAL/32 7.50 to 7.74 report themselves as "IBM PC DOS" version 3.31, whereas 7.80 and higher report a version of 6.20. LBA and FAT32 support was added with REAL/32 7.90 in 1999.[63] On 19 April 2002, Intelligent Micro Software Ltd. filed for insolvency and was taken over by one of its major customers, Barry Quittenton's Itera Ltd.[67][68][69] This company was dissolved on 2006-03-28.[70][71] As of 2010 REAL/32 was supplied by Integrated Solutions of Thatcham, UK, but the company, at the same address, was later listed as builders.[66]

REAL/NG
[edit]

REAL/NG was IMS' attempt to create the "Next Generation" of REAL/32, also named "REAL/32 for the internet age". REAL/NG promised "increased range of hardware from PCs to x86 multi-processor server systems".[72]

Advertised feature list, as of 2003:[73]

  • Runs with Red Hat 7.3 or later version of Linux
  • Backward compatible with DOS and REAL/32
  • Max 65535 virtual consoles; each of these can be a user
  • No Linux expertise required
  • Administration/setup/upgrade by web browser (local and remote)
  • Supplied with TCP/IP Linux-/Windows-based terminal emulator for the number of users purchased
  • Print and file sharing built in
  • Drive mapping between Linux and REAL/NG servers built in
  • User hardware support
  • Increased performance
  • Vastly increased TPA
  • Multi-processor support
  • Improved hardware support
  • Built-in firewall support
  • Very low cost per seat
  • Low total cost of ownership
  • Supplied on CD
  • Supplied with a set of Red Hat CDs

By 10 December 2003, IMS made "REALNG V1.60-V1.19-V1.12" available,[74] which, based on the Internet Archive, seems to be the latest release.

By 2005, the realng.com website was mirroring the IMS main website, and had no mention of REAL/NG, only REAL/32.[75]

Application software

[edit]

While the various releases of this operating system had increasing ability to run DOS programs, software written for the platform could take advantage of its features by using function calls specifically suitable for multiuser operation. It used pre-emptive multitasking, preventing badly-written applications from delaying other processes by retaining control of the processor. To this day, Multiuser DOS is supported by popular SSL/TLS libraries such as wolfSSL.

The API provided support for blocking and non-blocking message queues, mutual-exclusion queues, the ability to create sub-process threads which executed independently from the parent, and a method of pausing execution which did not waste processor cycles, unlike idle loops used by single-user operating systems. Applications were started as "attached" to a console. However, if an application did not need user interaction it could "detach" from the console and run as a background process, later reattaching to a console if needed.

Another key feature was that the memory management supported a "shared" memory model for processes (in addition to the usual models available to normal DOS programs). In the shared memory model the "code" and "data" sections of a program were isolated from each other. Because the "code" contained no modifiable data, code sections in memory could be shared by several processes running the same program, thereby reducing memory requirements.

Programs written, or adapted, for any multitasking platform need to avoid the technique used by single-tasking systems of going into endless loops until interrupted when, for example, waiting for a user to press a key; this wasted processor time that could be used by other processes. Instead, Concurrent DOS provided an API call which a process could call to "sleep" for a period of time. Later versions of the Concurrent DOS kernel included Idle Detection, which monitored DOS API calls to determine whether the application was doing useful work or in fact idle, in which case the process was suspended allowing other processes to run. Idle Detection was the catalyst for the patented DR-DOS Dynamic Idle Detection power management feature invented in 1989 by Roger Alan Gross and John P. Constant and marketed as BatteryMAX.[76]

See also

[edit]

References

[edit]

Further reading

[edit]
[edit]
Revisions and contributorsEdit on WikipediaRead on Wikipedia
from Grokipedia
Multiuser DOS is a real-time, multi-user, multi-tasking operating system designed for PC-compatible microcomputers equipped with 80386 or higher processors, enabling multiple simultaneous users to access and run standard DOS applications on a single server as if using dedicated terminals. Developed as a cost-effective alternative to local area networks for resource sharing in small office or departmental environments, it leverages for compatibility with existing software while supporting multitasking and multiuser operations. The system's ancestry traces back to Digital Research's 8-bit operating systems CP/M and MP/M, evolving through 16-bit systems like , Concurrent CP/M-86, and Concurrent DOS, and the 32-bit Concurrent DOS 386 in the 1980s. Digital Research introduced Multiuser DOS in the early 1990s, with DR Multiuser DOS 5.1 released in April 1992 as a successor to Concurrent DOS 386, incorporating features from the standalone DR DOS 6.0. Following 's acquisition of in July 1991, development continued briefly under before the product was licensed to third-party vendors such as Concurrent Controls and Intelligent Micro Software in 1992, with the line evolving (including as IMS REAL/32) and culminating in version 7.22 (R18) on April 21, 2005. In 1990, the Multiuser DOS Federation was formed by and other vendors—including Systems, Concurrent Controls, and The Software Link—to promote interoperability and standards among multiuser DOS implementations. Key features of Multiuser DOS include support for 5 to 64 concurrent users, with each user capable of running up to eight sessions of DOS 1.x, 2.x, or 3.x applications simultaneously. It provides advanced , terminal emulation (such as PCTERM for PCs acting as dumb terminals), and connectivity to networks like , while supporting graphics standards including CGA, EGA, and VGA. Development tools for languages like C, Pascal, and were available, making it suitable for business applications in pre-Windows era computing environments.

Origins

Concurrent CP/M-86

Concurrent CP/M-86 was developed by Digital Research as a multiuser and multitasking operating system extending the single-user CP/M-86 for Intel 8086 and 8088 processors, targeting early personal computers like the IBM PC. Released in August 1982 as version 1.0, it introduced concurrent execution capabilities to CP/M's established file system and utilities, enabling multiple programs to run simultaneously while sharing resources such as disks and printers. The system was designed for environments requiring efficient resource utilization, such as small offices or educational settings, and supported up to 16 user areas per drive for file organization and access control. Building on the multiuser foundation of MP/M-86 (released in November 1981), Concurrent CP/M-86 merged enhancements from version 1.1 in early 1983, including a real-time kernel for process scheduling and support for shared libraries, the Graphics System Extension (GSX), (IPC), and the math coprocessor. It featured up to four virtual consoles, switchable via keyboard commands like CTRL+0 through CTRL+3, allowing users to manage foreground and background tasks in dynamic (real-time display), buffered (output storage for later review), or physical (direct hardware access) modes. File management included attributes for read-only, read-write, , and directory protection, along with time stamps for creation, access, and update, plus password to facilitate secure multiuser access. Networking was enabled through Digital Research's SoftNet protocol, supporting distributed operations across compatible systems. Hardware requirements emphasized compatibility with IBM PC architecture, mandating a minimum of 256 KB RAM (expandable to 544 KB) and 2–4 drives (5.25-inch or 8-inch, with capacities of 156 KB single-sided or 316 KB double-sided), alongside support for hard disks, color/monochrome displays, and peripherals like printers. The architecture relied on a BDOS (Basic Disk Operating System) for high-level operations and an XIOS (Extended Input/Output System) for hardware interfacing, with segmented into CODE, DATA, STACK, and EXTRA groups to optimize multitasking. Over 25 utilities were bundled, including assemblers (ASM-86), debuggers (DDT-86), text editors (ED), and formatters (TEX-80), ensuring broad compatibility with applications. Version 3.1, released in February 1984, added windowing for splitting physical screens to view multiple virtual consoles simultaneously and introduced PC-MODE for multitasking up to four PC-DOS 1.1 or 2.0 applications alongside programs, enhancing compatibility with the emerging PC ecosystem. This integration of DOS support marked a pivotal transition, evolving Concurrent CP/M-86 into Concurrent DOS by May 1984 and later Concurrent PC DOS 3.2 in July 1984, shifting focus toward broader MS-DOS compatibility while retaining core multiuser features.

Transition to Concurrent DOS

As the IBM PC gained traction in the early 1980s, Digital Research recognized the need to enhance compatibility with the burgeoning PC-DOS ecosystem while preserving the multiuser and multitasking strengths of its CP/M lineage. Concurrent CP/M-86, initially released in late 1982 as a real-time, multiuser extension of CP/M-86 for Intel 8086/8088 processors, supported up to four concurrent sessions but lacked native support for PC-DOS applications, limiting its appeal in the PC market dominated by Microsoft's offering. In February 1984, addressed this gap with Concurrent CP/M-86 version 3.1, which introduced an optional PC-Mode module enabling the execution of most PC-DOS 1.1 and 1.x applications in a multitasking environment, alongside CP/M-86 programs. This mode emulated key PC-DOS system calls via Interrupt 21h, allowed handling of PC-formatted diskettes, and included utilities like DIR, COPY, and BATCH for seamless integration, while retaining features such as virtual consoles, networking via DR SoftNet, and 8087 support. The update aimed to provide a migration path for users seeking advanced capabilities without abandoning existing investments. By May 1984, to emphasize its enhanced DOS compatibility and reclaim from , fully integrated PC-Mode into the core operating system—merging it with the , BDOS, and CCP—and rebranded the product as Concurrent DOS (version 3.2). This transition transformed Concurrent into a hybrid environment capable of running up to four PC-DOS or tasks simultaneously, supporting additional memory beyond the 640 KB limit of standard PC-DOS, and facilitating multiuser operations with up to three terminals. The rename and integration marked a strategic pivot toward the PC standard, positioning Concurrent DOS as a superior alternative for and embedded applications requiring concurrency.

Concurrent DOS Family

Concurrent PC DOS

Concurrent PC DOS was a multiuser and multitasking operating system developed by for PC and compatible computers, building on the foundations of Concurrent DOS while providing seamless compatibility with standard PC DOS applications. It integrated the Basic Disk Operating System (BDOS) from Concurrent DOS with PC-specific extensions, allowing users to run both PC DOS and programs concurrently on the same hardware. Released initially in 1984 as version 3.2, it targeted 8086/8088-based systems and aimed to enhance productivity in shared environments by supporting multiple virtual consoles and without requiring hardware modifications. The system introduced a dispatcher-based that enabled true preemptive multitasking, where multiple programs could execute simultaneously under different user sessions, isolated through software and scheduling. Key to its design was the emulation of PC DOS system calls via interrupts such as INT 21H for file operations and program control, ensuring that existing DOS software ran unmodified while adding multiuser features like user numbers (0-15) for and file locking modes (locked, unlocked, read-only) to prevent conflicts in shared files. It supported up to four virtual windows on a single display, with utilities like the for tiling and overlapping, and the for handling both DOS and media formats, including hierarchical directories and floating drives (e.g., N: and O:). Concurrent PC DOS also incorporated hardware-specific optimizations for IBM PC/XT/AT models, including support for up to 4 MB under the Intel/Lotus standard and dynamic device drivers for peripherals like printers (up to five managed via Printer Manager) and serial ports. Multiuser capabilities extended to log-on/log-off procedures, protection on files, and through queues for synchronization, making it suitable for small office or educational settings with multiple terminals connected via serial links. Built-in tools such as DR Talk for inter-user messaging, DR Edix , and Backup/Restore utilities further streamlined operations, while the system's XIOS layer abstracted hardware details to maintain compatibility across floppy and fixed-disk configurations. Versions evolved from 3.2 (1984, based on BDOS 3.2 with basic PC DOS 1.1 support) to 4.1 (1985, adding PC DOS 3.0 features like subdirectories) and 5.0 (March 1986, enhancing and windowing). By version 5.0, it fully emulated BIOS functions (e.g., for video, for keyboard) and included calls for allocation (M_ALLOC) and lists (ready, delay, poll) to handle up to 16 concurrent users in networked setups. This positioned Concurrent PC DOS as a bridge between single-user DOS environments and more advanced multiuser systems, though it was later succeeded by Concurrent DOS XM and 386 variants for expanded and processor support.

Concurrent DOS 68K and FlexOS 68K

Concurrent DOS 68K was developed by Digital Research in collaboration with Motorola beginning in 1984, with its initial release in 1985 (version 1.0) as a multitasking, single- or multiuser operating system targeted at the Motorola 68000 family of microprocessors. Written in the C programming language, it provided portability across architectures and included a real-time kernel for handling time-critical applications. The system supported up to 64 concurrent tasks, dynamic memory allocation, and compatibility with PC DOS 2.1 utilities and file systems through a CP/M front end, allowing many CP/M-68K programs to run unmodified. Key features encompassed a menu-driven user interface with an integrated file manager, password-protected user accounts, file locking for data integrity, and support for international character sets and dynamically loadable device drivers. Targeted hardware included systems like the VME/10 and CompuPro S-100 boards, with sample drivers provided for these platforms to facilitate integration. Concurrent DOS 68K version 1.20 appeared in 1986, followed by the final release, version 1.21, later that year. It emphasized protection mechanisms, such as operation and resource isolation between users, making it suitable for shared environments like embedded systems and early networked workstations. In October 1986, rebranded Concurrent DOS 68K as FlexOS 68K to distinguish it for specialized markets, evolving it into a more modular (RTOS) while retaining core multitasking and multiuser capabilities. FlexOS 68K version 1.31 was released in May 1987, introducing enhancements like hierarchical file directories compatible with DOS 3.x, asynchronous I/O operations, and support for up to 31 events per process in a real-time context. It featured protected and file access using user and group IDs, along with VDI-compatible graphics for bit-mapped displays and modular device drivers for diverse peripherals. Designed for , laboratory instrumentation, and retail point-of-sale systems, FlexOS 68K prioritized , networking via PC Networking protocols, and extensibility through its relocatable code base. The transition from Concurrent DOS 68K to FlexOS 68K maintained with prior DOS and applications while adding advanced real-time features, such as priority-based scheduling and event-driven processing, to support demanding 68000-based embedded applications. This lineage positioned FlexOS 68K as a bridge between general-purpose DOS variants and specialized RTOS environments, though it remained niche compared to its x86 counterparts.

Concurrent DOS 286 and FlexOS 286

Concurrent DOS 286, announced by in 1985 and first released in 1986, was a multitasking and multiuser operating system designed specifically for the microprocessor. It built upon the foundations of earlier Concurrent DOS versions, providing enhanced capabilities for protected-mode operation on the 80286, including and task switching to enable concurrent execution of multiple applications. The system supported both single-user and multiuser configurations, allowing multiple users to access the system via separate displays and terminals while sharing resources securely through logon/password mechanisms and file locking. Key features of Concurrent DOS 286 included a menu-driven with an integrated for simplified , compatibility with PC DOS 2.1 utilities and file systems to run existing IBM PC software, and a real-time kernel suitable for applications in communications and industrial control. It incorporated dynamically loadable device drivers for flexible hardware support and international character handling with 16-bit I/O for multilingual environments. The OS leveraged the 80286's segmentation and protection rings to isolate tasks, preventing interference in multiuser scenarios, and allowed multitasking limited by available memory, typically supporting several concurrent processes on systems with expanded RAM. FlexOS 286, introduced by in 1986 as version 1.0, represented a reengineered and modular evolution of Concurrent DOS 286, optimized for real-time and embedded applications on 80286-based systems. It retained the multiuser and multitasking heritage of its predecessor but emphasized modularity, with a real-time kernel that facilitated deterministic response times for and point-of-sale environments. FlexOS 286 supported multiple users sharing system resources efficiently, using shareable runtime libraries to minimize memory overhead and reentrant code for concurrent access, while providing through the 80286's . The system required IBM PC AT-compatible hardware, including an E2-stepping 80286 processor, at least 1.1 MB RAM (with 2 MB recommended for multiuser operation), and a 20 MB hard disk, along with standard ports for peripherals. Installation options included booting from floppies, loading under DOS 3.x, or dedicating the hard disk via partitioning tools, making it adaptable for dedicated multiuser setups. FlexOS 286 was notably adopted by for its 4680 retail terminal systems, where it powered multiuser point-of-sale operations with up to 64 master and 64 slave terminals. Later , such as 1.31 in 1987 and 1.42 in 1988, added driver enhancements for better hardware exploitation and debugging support via VT52-compatible terminals.

Concurrent DOS XM and Concurrent DOS 386

Concurrent DOS XM, released by in 1986 (version 5.0), was a multiuser and multitasking extension of the earlier Concurrent DOS family, designed primarily for and 80286 processors. It enabled the simultaneous execution of multiple and MS-DOS-compatible programs across up to five serial terminals, with each terminal supporting one . The system leveraged expanded memory specification (EMS) and enhanced expanded memory specification (EEMS) through bank-switching techniques, allowing access to memory boards from vendors such as Quadram and to extend beyond the conventional 640 KB limit. Key features included window management for task switching, a configurable system, on-line help facilities, and hard disk backup utilities, making it suitable for small office environments requiring shared access to applications like word processors and databases. In contrast, Concurrent DOS 386, announced in February 1987 and first released later that year with documented in November 1987, targeted the 80386 processor to provide a 32-bit multiuser operating system. It supported up to nine serial terminals, each capable of handling two virtual consoles, and allowed up to 10 concurrent users running as many as four PC-DOS 2.x-compatible applications simultaneously through time-sliced multitasking at 1/60-second intervals. The OS exploited the 80386's capabilities and 4 GB for advanced , including support for (up to 640 KB), expanded memory (EMS/EEMS with up to 64 pages of 16 KB each), and drives (MDISK) for temporary high-speed storage. Additional functionalities encompassed password-protected file and directory access, a print spooler (PRINTMGR) for up to 254 jobs across multiple printers, and windowing with up to four resizable windows per terminal plus two full-screen modes for serial users. A minimum of 512 KB RAM was required, with configurable limits via commands like MEMSIZE (default ~512 KB conventional) and LIMSIZE (default 1008 KB expanded). While both variants shared a command set compatible with MS-DOS and CP/M, including utilities like COPY, DIR, and FORMAT for various disk formats (e.g., 360 KB and 1.44 MB floppies), Concurrent DOS 386 offered superior scalability for larger installations due to its protected-mode operation and higher terminal count, whereas XM relied on real-mode bank switching for compatibility with older hardware. These systems were positioned as cost-effective alternatives to Unix for business multitasking, with serial port configuration via commands like SETPORT and support for co-processors such as the 8087, 80287, and 80387.

Multiuser DOS

Core Features and Releases

Multiuser DOS, developed by , represented a significant advancement in bringing multiuser and multitasking capabilities to PC-compatible systems, building directly on the architecture of Concurrent DOS 386 while integrating features from the standalone 6.0. At its core, it provided real-time multiuser support for up to 64 simultaneous users, each capable of running up to eight DOS sessions concurrently through hot-key switching and background task execution, such as recalculations. The system leveraged the 80386 or 80486 processor's mode to enable this native multiuser environment without relying on add-on software, ensuring high compatibility with standard DOS applications, including color text modes, CGA graphics, Windows 3.0, and LIM EMS memory management. A key feature was its flexible terminal support, allowing basic multiuser operation for up to three users via standard COM1 and COM2 serial ports without additional hardware, while expansion to more users required multiport serial cards or network adapters. It included built-in utilities like PCTERM for PC terminal emulation and maintained full with and file formats, command-line interfaces, and executables, permitting seamless execution of legacy software in a shared environment. Security was enhanced through user authentication, via virtual machines, and controls, making it suitable for small office or educational settings where multiple users needed access to a single PC. The initial release, Multiuser DOS 5.0, was introduced by in late 1990 as a direct successor to Concurrent DOS 386, focusing on 32-bit operation for improved stability and performance on 386-based systems. Following 's acquisition by in July 1991, the product line continued under the Novell DR branding, with Multiuser DOS 5.1 released in 1992, adding refinements such as enhanced memory optimization and support for up to 64 users without the present in the 5.0 version. A German-localized variant, 5.11, also appeared in 1992, but no major subsequent versions were issued under before the technology was licensed to third-party developers for further adaptations. These releases emphasized scalability, with minimum hardware requirements of an 80386 processor, 4 MB RAM, and 20 MB storage, positioning Multiuser DOS as a cost-effective alternative to systems for DOS-centric multiuser deployments.

Adaptations

Following the acquisition of by in 1991, official development of Multiuser DOS ceased in 1992, but several original equipment manufacturers (OEMs) obtained licenses to adapt and distribute customized versions, extending its lifecycle into the late and early 2000s. These adaptations maintained core compatibility with DOS applications while enhancing support for multiuser environments on 386 and later processors, often integrating networking and real-time features for and embedded use. One prominent adaptation was developed by Intelligent Micro Software (IMS), which released IMS Multiuser DOS starting in the early 1990s as a direct derivative of Novell's Multiuser DOS. This version supported up to 100 users on compatible hardware, with preemptive multitasking, 32-bit addressing, and seamless execution of unmodified DOS and early Windows applications. IMS later rebranded it as Real/32 (also known as Real/NG), emphasizing real-time capabilities for industrial control and point-of-sale systems; the final iterations remained available until at least 2017, including upgrades from earlier IMS products like DOS Pro II. Real/32 featured extensive developer APIs, support for multiple terminals, and for up to 4 GB of RAM, making it suitable for demanding multiuser setups without requiring application modifications. Concurrent Controls Inc. (CCI), later rebranded as Applica Inc. and then Aplycon Technologies, produced CCI (also marketed as 386-DOS and Gold), based explicitly on Digital Research's kernel. Released in versions up to 7.22 by the mid-1990s, it supported up to 67 simultaneous users on 80386/80486 hosts, with features like disk caching, 16 programs per workstation, and CCI-Net for connecting up to 256 nodes via Ethernet or . This adaptation targeted network servers and included LIM EMS memory support, allowing efficient multitasking of DOS tasks while providing mainframe emulation via ClusterComm. Production continued until around 2005, focusing on reliability for small business multiuser applications. DataPac Australasia Pty Ltd offered another adaptation, initially distributing Multiuser DOS 5 and later rebranding it as System Manager 7 for the Australian and Asian markets. This version emphasized ease of setup for workgroup computing, supporting multiple DOS sessions per user and integration with Novell gateways. It was discontinued after DataPac's acquisition by Citrix in the late , marking the end of that lineage. These OEM efforts, coordinated loosely through the Multiuser DOS Federation (MDOS) formed in 1990, helped sustain the platform's relevance in niche markets despite the rise of .

Applications and Extensions

Supported Software

Multiuser DOS maintained broad compatibility with standard MS-DOS applications, enabling the execution of thousands of off-the-shelf PC programs in a multiuser, multitasking environment, provided they did not directly manipulate hardware such as the screen or peripherals. This compatibility extended to DOS 1.x through 3.x software, allowing up to 64 users to access shared applications concurrently on systems like the 80386 or higher processors. For instance, popular productivity tools including , dBase III, , and could run under Multiuser DOS, often with support for expanded memory specifications like LIM EMS to facilitate multitasking. The operating system also supported numerous specialized multiuser applications developed specifically for its environment, focusing on areas such as accounting systems, point-of-sale processing, , database management, and real-time process control. Examples of such software include dBase III Plus LAN for networked database operations and SuperCalc 4 LAN for shared functionality, which emulated behaviors without requiring dedicated LAN hardware. Additionally, Multiuser DOS accommodated graphical environments like and GEM graphics products, enhancing its utility for terminal-based workstations. Development and utility software further expanded its ecosystem, with support for compilers in languages including C, RM-COBOL-85, BASIC (compatible with Data General and Wang variants), Pascal, and even a BASIC-to-8086 assembler from Bluebird Systems. Terminal emulation tools such as Digital Research's PCTERM (supporting color text and CGA graphics), Alloy's LINK-PC, and S&H's TSX-TERM enabled existing PCs to function as Multiuser DOS terminals. Connectivity solutions like Novell NetWare integration, Bluebird's SuperLAN, and IGC's NetPak allowed seamless access to networked resources, while mainframe emulations (e.g., 3270/5250 protocols via Alloy ClusterComm) bridged legacy systems. Background tasks, such as spreadsheet recalculations, database sorts, or file transfers, could run without user interaction, optimizing resource use across multiple sessions.

Third-Party Developments

Following the acquisition of by in 1991, third-party companies licensed the technology and produced independent enhancements and derivatives, extending its lifespan into the late and early . These efforts focused on improving multiuser support, networking integration, and compatibility with evolving hardware, primarily for embedded systems, terminals, and small-scale server environments. DataPac Australasia Pty Ltd, an Australian firm, acquired rights to Multiuser DOS and released versions 5.0 and 5.1 in the mid-1990s, emphasizing real-time multitasking for up to 32 users on x86 hardware. In 1996, they rebranded and enhanced it as System Manager 7.0, adding better terminal emulation and peripheral support for business applications like database sharing. This version supported DOS and binaries while incorporating compatibility. DataPac continued sales until acquired the company in 1997, after which development halted. Concurrent Controls Inc. (CCI), based in the United States, licensed the core and developed CCI Multiuser DOS starting with version 7.00 around 1993, scaling to support up to 64 concurrent users on 80386/80486 hosts. Key enhancements included improved handling for dumb terminals and integration with LAN protocols like . The product evolved through versions 7.10 and culminated in Multiuser DOS Gold 7.22 (release 4) in , which added 32-bit extensions for better . CCI, later rebranded as Applica Inc. and then Aplycon Technologies, maintained sales and support until approximately 2005, targeting industrial control and point-of-sale systems. Intelligent Micro Software (IMS), a UK-based company, produced IMS Multiuser DOS as an enhanced derivative, initially supporting up to 64 users with real-time scheduling for embedded applications. By the mid-1990s, it was rebranded as Real/32 (version 7.x), introducing 32-bit operations, compatibility subsets, and drivers for VGA graphics and peripherals, while retaining full DOS application support. Real/32 targeted real-time systems in and , with sales continuing into the 2000s. IMS's work represented one of the longest-running third-party evolutions of Multiuser DOS.

Reception and Legacy

Critical Reception

Multiuser DOS, as an evolution of Digital Research's Concurrent DOS lineage, garnered generally positive but qualified critical reception in technical publications during the late 1980s and early 1990s, praised for its multitasking and multiuser capabilities on 80386-based systems while facing criticism for resource demands and compatibility quirks. Early assessments of its predecessor, Concurrent DOS 386, in the July 1988 issue of Byte magazine highlighted its robustness as a multitasking operating system that supported up to 16 users, offered DOS compatibility for existing applications, and provided UNIX-like features such as task switching and file sharing, making it suitable for networked business environments. The Byte Lab review noted its efficient use of memory—occupying about 200K bytes and leaving approximately 440K per application—and commended its video I/O performance, describing it as a "strong choice" for multiuser needs despite the anticipation of more advanced OS options like OS/2. However, reviewers pointed out limitations, including complex setup procedures, higher resource requirements that could strain smaller systems, and performance degradation when running multiple tasks simultaneously. Byte also observed that Concurrent DOS 386 lacked certain commands like CTTY and SHARE, potentially complicating integration for some users. A 1985 Byte article on Concurrent DOS-286, an earlier variant, echoed concerns about consumption, noting that previous versions had a "voracious appetite," though it praised the system's use of 80286 features for fast context switching and protection against poorly behaved applications like Lotus 1-2-3. These critiques underscored the trade-offs in achieving multiuser functionality on PC-compatible hardware without full UNIX power. In a 1985 review of Concurrent DOS 5.0 XM published in Microsystems Journal, the system received acclaim for its multitasking and multiuser features, including virtual consoles, a built-in , and support for up to 8 MB of expanded memory via EEMS, enabling simultaneous execution of applications like and on single or multiple consoles. The review emphasized its broad hardware compatibility with 8086-series processors and systems from vendors like , CompuPro, and , positioning it as a versatile solution for productivity enhancement. Later iterations under the Multiuser DOS branding, such as the 1992 Novell DR Multiuser DOS 5.1, were noted in industry reports for incorporating 5.0 technologies while maintaining multiuser support. Overall, reception affirmed Multiuser DOS's innovative role in extending DOS's lifespan for multiuser scenarios but highlighted its eventual overshadowing by more scalable alternatives.

Historical Impact

Multiuser DOS, released by in 1991 as a successor to Concurrent DOS 386, marked a significant in bringing multiuser and multitasking capabilities to the x86 PC platform, extending the single-user DOS model into shared environments. Building on the foundations of earlier systems like and MP/M, it enabled up to 64 concurrent users to access a single 80386-based server, each running up to eight DOS sessions, thereby allowing resource sharing without the need for full local area networks (LANs). This approach revitalized older PCs as inexpensive terminals, offering a cost-effective solution for small businesses and educational institutions seeking multiuser on commodity hardware. The system's design emphasized compatibility with existing and applications, incorporating features like dynamic memory allocation, LIM EMS support, and terminal emulation via PCTERM, which handled color text and CGA . Positioned as a challenger to systems on microcomputers, Multiuser DOS demonstrated the viability of real-time, network-compatible operations on 80286 and 80386 processors, with a modular kernel written in C for portability. Its federation model, formed in 1990 with value-added resellers (VARs), allowed custom adaptations, such as Concurrent Controls' 386-DOS supporting up to 67 workstations, influencing niche deployments in terminal-based setups. Despite these advancements, Multiuser DOS had limited market penetration amid the dominance of and the rise of dedicated LAN technologies like . Novell's 1991 acquisition of led to the abandonment of further official development in 1992, sidelining the multiuser line in favor of single-user DOS products. However, the technology persisted through independent VARs, including DataPac Australasia and Intelligent Micro Software (IMS), who maintained and extended it into the for specialized applications, with versions such as CCI Multiuser DOS 7.22 in 2005 and IMS REAL/32 7.95 in 2010. This trajectory underscored 's broader struggle to compete with Microsoft's ecosystem, contributing to the company's eventual sale and the marginalization of its innovative multiuser efforts.

References

Add your contribution
Related Hubs
Contribute something
User Avatar
No comments yet.