Jump to content

REAL/32

From Alfawiki
Digital Research, Inc.
Company typePrivate
IndustrySoftware
Founded1970
FounderGary Kildall
FateAcquired by Novell (1991)
SuccessorNovell (product enhancements)
Headquarters
Pacific Grove, California
,
United States
ProductsMultiuser DOS, Concurrent CP/M-86, Concurrent DOS, FlexOS

Multiuser DOS represents a real-time, multi-user, multitasking operating system designed for microcomputers compatible with the IBM PC architecture.

Originally created by Digital Research as a progression from Concurrent CP/M-86, Concurrent DOS, and Concurrent DOS 386, the system was later acquired and enhanced by Novell in 1991. Its lineage extends back to Digital Research's earlier 8-bit operating systems, CP/M and MP/M, as well as the 16-bit, single-tasking CP/M-86 platform.

Following Novell's discontinuation of Multiuser DOS in 1992, three primary master value-added resellers (VARs)—DataPac Australasia, Concurrent Controls, and Intelligent Micro Software—were granted licenses to independently advance the software. These efforts resulted in various derivatives such as Datapac Multiuser DOS and System Manager, CCI Multiuser DOS, IMS Multiuser DOS, and REAL/32.

The associated 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 initial release of CP/M-86 1.0 (incorporating BDOS 2.x) was adapted for the IBM PC in 1982 but did not achieve commercial success compared to IBM’s PC DOS 1.0, which delivered comparable functionality at a lower cost. Neither operating system fully exploited the potential of the new 16-bit processor architecture.

Shortly thereafter, MP/M-86 2.0, launched in September 1981, enhanced this environment by converting PCs into multi-user platforms capable of supporting several users simultaneously through dumb terminals connected via serial interfaces. This arrangement enabled affordable multi-user shared-data applications such as accounting and inventory management before widespread adoption of PC networking.

Later developments combined CP/M-86 1.1 (BDOS 2.2) and MP/M-86 2.1 into Concurrent CP/M-86 3.0 (also referred to as CCP/M-86) featuring BDOS 3.0, released in late 1982. The project was led by manager Kathryn Strutynski with design contributions from Francis "Frank" R. Holsworth. Initially intended as a single-user system capable of true multitasking across up to four CP/M-86-compatible programs, it included support for multiple processors and "virtual screens" allowing users to switch between active programs. Subsequent versions introduced support for dumb terminals to enable multi-user functionality. Concurrent CP/M-86 3.1 (BDOS 3.1) became available on 21 February 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 was developed for LSI-M4, LSI Octopus, and CAL PC machines that combined both 16-bit and 8-bit processors to maximize software compatibility and efficiency. Concurrent CP/M-86/80 allowed execution of both CP/M (8-bit) and CP/M-86 (16-bit) applications by directing commands to the appropriate processor based on file extensions (.COM for 8-bit programs, .CMD for 16-bit). It simulated the CP/M environment by translating system calls so they could be executed on the 16-bit CPU.

Concurrent DOS

In August 1983, Bruce Skidmore, Raymond D. Pedrizetti, Dave Brown, and Gordon Edmonds created PC-MODE, an optional extension for Concurrent CP/M-86 3.1 (BDOS 3.1), which offered fundamental compatibility with PC DOS 1.1. This module was presented at COMDEX in December 1983 and became available in March 1984 as Concurrent DOS 3.1 (CDOS), primarily aimed at hardware manufacturers. Basic DOS programs that did not rely on direct hardware manipulation operated smoothly—for instance, PKZIP performed effectively and surpassed the CP/M-native ARC archiver—whereas applications needing screen control, such as WordStar, required native Concurrent CP/M versions.

While the development of Concurrent DOS versions 3.1 through 4.1 took place in the United States, Digital Research Europe’s OEM Support Group located in Newbury, UK, managed OEM customizations and translations starting from 1983.

In 1985, Digital Research introduced Concurrent DOS 4.1 alongside the Graphics Environment Manager (GEM) as a competitor to IBM's TopView. Concurrent DOS 4.1 (BDOS 4.1) provided compatibility with PC DOS 2.x across diverse hardware platforms; the IBM PC-compatible BIOS/XIOS variant was designated Concurrent PC DOS 4.1.

Concurrent PC DOS

Released in 1984, Concurrent DOS 3.2 (featuring BDOS 3.2) supported applications from CP/M-86 1.x, Concurrent CP/M-86 3.x, and PC DOS 2.0 environments. It was compatible with multiple hardware systems, and its IBM–PC-compatible BIOS/XIOS edition was named Concurrent PC DOS 3.2. Kathryn Strutynski held the role of product manager during this period.

Concurrent DOS 68K and FlexOS 68K

Beginning in 1984, a partnership with Motorola resulted in the development of Concurrent DOS 68K in Austin, Texas, intended as a successor to CP/M-68K and implemented in C language. Francis "Frank" R. Holsworth played a significant role as a lead designer. By early 1985, Concurrent DOS 68K 1.0 was ready for OEM evaluation, backed by multimillion-dollar funding from Motorola and designed to run on their 68000/68010 processors. Initially deployed on Motorola VME/10 development platforms, it was subsequently ported to Compupro systems. Versions 1.20 and 1.21 were made available to OEMs around April 1986 at a price point near . This product line later evolved into FlexOS 68K by late 1986.

Recognized 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

In parallel with Concurrent DOS 68K, Digital Research unveiled Concurrent DOS 286 in January 1985 through collaboration with Intel. Built upon MP/M-286 and Concurrent CP/M-286 foundations, it was rewritten in C and featured a redesigned architecture incorporating dynamically loadable device drivers rather than fixed BIOS/XIOS components. Frank Holsworth served as a key architect for this project.

Targeted for native operation on Intel 80286 processors, it offered protected mode multi-user multitasking alongside an emulation layer for the 8086 processor. Although prototype chips initially supported these capabilities, production releases were postponed from late May until Intel resolved silicon issues through new stepping revisions and microcode enhancements that improved emulation efficiency.

These technical difficulties also impacted FlexOS 286 version 1.x—a reengineered offshoot developed by Digital Research's Flexible Automation Business Unit since 1986 in Monterey, California.

Subsequent releases enhanced compatibility with PC DOS versions 2.x and 3.x.

Notable versions include:

  • 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. From version 4.11 onward, this team led the development of the Concurrent DOS series, along with related products such as DOS Plus.

The versions Concurrent DOS 5 and 6, also known as Concurrent DOS XM (where XM stands for Expanded Memory), were created at Hungerford. These editions employed bank switching techniques to access up to 8 MB of EEMS, allowing a real-mode environment capable of running multiple CP/M-86 and DOS applications simultaneously. This setup supported up to three users—one local and two via serial terminals.

In 1987, Concurrent DOS 86 was redesigned as Concurrent DOS 386,[1] retaining the traditional XIOS & BDOS structure. Tailored for Intel 80386 and subsequent CPUs, it utilized hardware virtualization to execute most DOS software without modification, even on terminal devices. This multiuser operating system offered concurrent file operations and enabled multiple users to work on a single database with record locking, delivering server-like functionality without requiring expensive workstations or network interfaces.

Concurrent DOS 386 demanded approximately 200K of conventional memory, considerably more than MS-DOS. According to BYTE, systems with only 512K RAM had limited capabilities; at least an additional 1MB beyond the standard 640K was recommended to run several large applications concurrently.[2]

The release of Concurrent DOS 6.0 also marked the inception of the DR DOS lineage, which was derived from this version.

Significant releases 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)
  • DR Concurrent DOS XM 6.0 (BDOS 6.0, November 1987), with updates extending through version 6.21
  • DR Concurrent DOS 386 versions from 1.0 (1987) up to 3.02 (1989), evolving BDOS from approximately version 5.0 to 6.2

Concurrent PC DOS XM 5.0 emulated IBM PC DOS version 2.10,[3] whereas Concurrent DOS XM 6.0 and Concurrent DOS 386 version 2.0 aligned with IBM PC DOS compatibility at version 3.30.[4]

Reception

In a 1988 review by BYTE, Concurrent DOS 386 was described as "largely compatible" with MS-DOS; for instance, Microsoft Word version 3.1 operated correctly while version 4.0 failed due to undocumented DOS calls. Performance declined proportionally with the number of active applications; however, video input/output was measured to be twice as fast compared to standard DOS despite increased memory requirements. The publication concluded that although more advanced operating systems for the 386 were anticipated, Concurrent DOS 386 "is available now and fully operational".

Adaptations

Concurrent Controls, Inc. produced multiple variants of Concurrent DOS, including:

  • CCI Concurrent DOS 386 version 1.12 (October 1987)
  • CCI Concurrent DOS 386 version 2.01 (May 1988)
  • CCI Concurrent DOS 386 version 3.01 (March 1989)
  • CCI Concurrent DOS 386 version 3.02 (April 1990)
  • CCI Concurrent DOS 386 version 3.03 (March 1991)
  • CCI Concurrent DOS 386 version 3.04 (July 1991), also known as "CCI Concurrent DOS 4.0"
  • CCI Concurrent DOS releases from version 3.05 R1 (1992) through R11 (August 1993)
  • Later editions up to CCI Concurrent DOS version 3.10 R1 (October 2003)

Additional adaptations include:

  • Apricot Concurrent DOS 386 version 2.01 (1987), designed for Apricot Quad Version Level 4.3

Multiuser DOS

Subsequent editions of Concurrent DOS 386 incorporated elements from Digital Research's DR DOS 5.0, which was rebranded as "Multiuser DOS" (MDOS) beginning with version 5.0 released in 1991.

MDOS encountered technical challenges that limited its ability to compete with PC DOS-based local area networks. The system demanded custom device drivers for most hardware components because PC DOS drivers lacked the necessary multiuser and multitasking capabilities. This increased installation complexity and required kernel relinking through SYSGEN. Additionally, MDOS had difficulty supporting widely used PC DOS extensions such as network protocol stacks, graphics cards, audio devices, CD-ROM drives, and pointing devices.

While some issues were mitigated—for example, the creation of graphical terminal support compatible with CGA, EGA, and VGA software—MDOS remained less adaptable compared to networks composed of individual PCs, which were becoming more cost-effective. Its multi-user licensing fees were also higher than those for single-user systems. Unlike single-user multitasking environments like Quarterdeck's DESQview, MDOS did not achieve widespread adoption for single-user multitasking scenarios.

Following Novell's acquisition of Digital Research in 1991 and the subsequent discontinuation of Multiuser DOS in 1992, principal value-added resellers (VARs) such as DataPac Australasia, Concurrent Controls, and Intelligent Micro Software obtained licenses to continue independent development starting in 1994.

Documented releases include:

  • DR Multiuser DOS 5.00 (1991), 5.01
  • Novell DR Multiuser DOS 5.10 (April 1992), 5.11
  • Novell DR Multiuser DOS 5.13 (BDOS 6.6, 1992)

All these editions identified themselves as "IBM PC DOS" version 3.31 to maintain compatibility.

DataPac Australasia

DataPac Australasia Pty Limited produced several versions under its brand:

  • Datapac Multiuser DOS 5.0
  • Datapac Multiuser DOS 5.1 (BDOS 6.6)
  • Datapac System Manager 7.0 (released August 22, 1996)

After being acquired by Citrix Systems, Inc. in 1997, the System Manager product line was discontinued shortly thereafter. In 2002, the Sydney-based division was reorganized into Citrix’s 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, including R1 through R18 GOLD editions (spanning 1996 to 2005)

All CCI Multiuser DOS releases identify themselves as "IBM PC DOS" version 3.31 by default; however, the reported version can be altered using the DOSVER utility.

In 1999, CCI rebranded as Applica, Inc., and later transitioned to Aplycon Technologies, Inc. in 2002.

=IMS Multiuser DOS

The IMS Multiuser DOS product line includes the following known versions:

  • Enhanced Release series: 5.1 (1992), 5.11, and 5.14
  • Later versions: 7.0 and 7.1 (BDOS 6.7, released in 1994)

These versions report their identity as "IBM PC DOS" version 3.31.

=REAL/32

In 1994, Intelligent Micro Software Ltd., based in Thatcham, UK, secured a license from Novell to continue development of Multiuser DOS under the new name REAL/32 starting in 1995.

IBM licensed REAL/32 version 7.50 in the same year for integration with their IBM 4695 point-of-sale terminals.

Significant IMS REAL/32 releases include:

  • Versions from 7.50 through 7.54 (1995–1996)
  • Versions between 7.60 and 7.63 (1997)
  • Versions spanning from 7.70 to 7.74 (1998)
  • Releases from 7.80 up to 7.83 (1999)
  • Versions ranging from 7.90 to 7.92 (1999)
  • ITERA IMS REAL/32 editions: version 7.93 (2002) and version 7.94 (2003)
  • Integrated Solutions IMS REAL/32 release: version 7.95 (circa 2010)

Releases up to version 7.74 identify as "IBM PC DOS" version 3.31; subsequent versions report as version 6.20.

Support for Logical Block Addressing (LBA) and FAT32 file systems was introduced beginning with version 7.90 in the year 1999.

In April of 2002, IMS entered insolvency proceedings and was acquired by Itera Ltd., a company led by customer Barry Quittenton; Itera itself was dissolved in March of 2006.

By approximately 2010, REAL/32 was distributed by Integrated Solutions Ltd., located in Thatcham, UK; however, this company later shifted away from software development activities while maintaining operations at the same address.


REAL/NG

REAL/NG represented IMS's initiative to create the "Next Generation" evolution of REAL/32, marketed as "REAL/32 for the internet era." Its design targeted compatibility across a wider spectrum of hardware platforms, ranging from personal computers to x86-based multiprocessor servers.

By 2003, its primary features included:

  • Support for Red Hat Linux version 7.3 and subsequent releases
  • Full backward compatibility with both DOS and REAL/32 applications
  • Ability to manage up to 65,535 virtual consoles, each corresponding to an individual user session
  • Administration and update capabilities accessible via web browsers, both locally and remotely
  • A TCP/IP terminal emulator integrated for users on Linux and Windows systems
  • Native print and file sharing functionalities alongside drive mapping between Linux and REAL/NG servers
  • Enhanced performance and hardware support, including multiprocessor operation
  • Embedded firewall capabilities
  • Cost-effective per-user licensing leading to a lower total cost of ownership
  • Distribution through CD media bundled with Red Hat Linux installation discs

The last known release was REALNG V1.60-V1.19-V1.12 in December 2003, which seems to be the final iteration. By 2005, the realng.com website redirected visitors to IMS’s main homepage without any reference to REAL/NG, instead emphasizing REAL/32 exclusively.

Application software

The operating system facilitated running DOS applications while enabling software to utilize multiuser functionality via designated API calls. It incorporated pre-emptive multitasking to prevent poorly written programs from dominating CPU resources. Multiuser DOS continues to support contemporary SSL/TLS libraries such as wolfSSL.

Its programming interface accommodated blocking and non-blocking message queues, mutual exclusion queues, independent subprocess threading, as well as efficient pause mechanisms that conserved CPU cycles compared to the busy-wait loops common in single-user systems. Applications could operate attached directly to a virtual console or detach to run as background services.

A significant aspect of memory management was its shared memory architecture that allowed immutable code segments to be shared among multiple processes executing the same program, thereby reducing overall memory consumption.

Programs designed for multitasking avoided inefficient busy-waiting by invoking API calls that put them into a "sleep" state when idle. Subsequent Concurrent DOS kernels introduced Idle Detection technology, which monitored DOS API usage to suspend idle processes and improve CPU efficiency. This advancement culminated in the patented DR-DOS Dynamic Idle Detection power management system, commercialized as BatteryMAX by Roger Alan Gross and John P. Constant in 1989.

See also

Further reading

  • DRTIPS.ZIP (1992) by Novell Desktop Systems Group, Digital Research / Novell

External links

  1. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named IW_1987_MDOS386
  2. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named lane198807
  3. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named 1986_CDOSXM
  4. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named DRI_1988_CDOS