Developer | Digital Research, Novell |
---|---|
OS family | CP/M |
Working state | Discontinued |
Source model | Closed source |
Final release | 7.22 R18 / 21 April 2005 (REAL/32: 7.95) |
Available in | English |
Update method | Re-installation |
Package manager | None |
Platforms | x86, 68000 |
Kernel type | Monolithic kernel |
Default user interface | Command-line interface (COMMAND.COM) |
License | Proprietary |
Official website | Various (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.
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 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 the interactions of multiple programs. [6] Later versions supported dumb terminals and so could be deployed as multiuser systems. Concurrent CP/M-86 3.1 (BDOS 3.1) shipped on 21 February 1984. [9]
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]
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]
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 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.
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 (using siglum 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 earlierGEMDOS 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:
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:
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 6.0 represented also the starting point for the DR DOS family, which was carved out of it.
Known versions include:
Concurrent PC DOS XM 5.0 emulated IBM PC DOS 2.10, [41] whereas Concurrent DOS XM 6.0 and Concurrent DOS 386 2.0 were compatible with IBM PC DOS 3.30. [42]
Known CCI Concurrent DOS adaptations by Concurrent Controls, Inc. include:
Other adaptations include:
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. [48]
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:
All versions of Digital Research and Novell DR Multiuser DOS reported themselves as "IBM PC DOS" version 3.31.
Known versions by DataPac Australasia Pty Limited include:
In 1997, Datapac was bought by Citrix Systems, Inc., [52] [53] [54] and System Manager was abandoned soon after. In 2002 the Sydney-based unit was spun out into Citrix' Advanced Products Group. [55]
Known CCI Multiuser DOS versions by Concurrent Controls, Inc. (CCI) include:
All versions of CCI Multiuser DOS report themselves as "IBM PC DOS" version 3.31. [56] Similar to SETVER under DOS, this can be changed using the Multiuser DOS DOSVER x.y utility. [56]
In 1999, CCI changed its name to Applica, Inc. [57] In 2002 Applica Technology became Aplycon Technologies, Inc. [58]
This section needs expansion. You can help by adding to it. (January 2017) |
Known adaptations of IMS Multiuser DOS include:
All versions of IMS Multiuser DOS report themselves as "IBM PC DOS" version 3.31.
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:
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. [62] 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. [66] [67] [68] This company was dissolved on 2006-03-28. [69] [70] 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. [65]
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". [71]
Advertised feature list, as of 2003: [72]
By 10 December 2003, IMS made "REALNG V1.60-V1.19-V1.12" available, [73] 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. [74]
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. [75]
CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/85-based microcomputers by Gary Kildall of Digital Research, Inc. CP/M is a disk operating system and its purpose is to organize files on a magnetic storage medium, and to load and run programs stored on a disk. Initially confined to single-tasking on 8-bit processors and no more than 64 kilobytes of memory, later versions of CP/M added multi-user variations and were migrated to 16-bit processors.
In computer data storage, drive letter assignment is the process of assigning alphabetical identifiers to volumes. Unlike the concept of UNIX mount points, where volumes are named and located arbitrarily in a single hierarchical namespace, drive letter assignment allows multiple highest-level namespaces. Drive letter assignment is thus a process of using letters to name the roots of the "forest" representing the file system; each volume holds an independent "tree".
DR-DOS is a disk operating system for IBM PC compatibles. Upon its introduction in 1988, it was the first DOS that attempted to be compatible with IBM PC DOS and MS-DOS.
Digital Research, Inc. was a privately held American software company created by Gary Kildall to market and develop his CP/M operating system and related 8-bit, 16-bit and 32-bit systems like MP/M, Concurrent DOS, FlexOS, Multiuser DOS, DOS Plus, DR DOS and GEM. It was the first large software company in the microcomputer world. Digital Research was originally based in Pacific Grove, California, later in Monterey, California.
MP/M is a discontinued multi-user version of the CP/M operating system, created by Digital Research developer Tom Rolander in 1979. It allowed multiple users to connect to a single computer, each using a separate terminal.
CP/M-86 is a discontinued version of the CP/M operating system that Digital Research (DR) made for the Intel 8086 and Intel 8088. The system commands are the same as in CP/M-80. Executable files used the relocatable .CMD file format. Digital Research also produced a multi-user multitasking operating system compatible with CP/M-86, MP/M-86, which later evolved into Concurrent CP/M-86. When an emulator was added to provide PC DOS compatibility, the system was renamed Concurrent DOS, which later became Multiuser DOS, of which REAL/32 is the latest incarnation. The FlexOS, DOS Plus, and DR DOS families of operating systems started as derivations of Concurrent DOS as well.
An environment variable is a user-definable value that can affect the way running processes will behave on a computer. Environment variables are part of the environment in which a process runs. For example, a running process can query the value of the TEMP environment variable to discover a suitable location to store temporary files, or the HOME or USERPROFILE variable to find the directory structure owned by the user running the process.
Star Trek is the code name that was given to a secret prototype project, running a port of Macintosh System 7 and its applications on Intel-compatible x86 personal computers. The project, starting in February 1992, was conceived in collaboration between Apple Computer, who provided the majority of engineers, and Novell, who at the time was one of the leaders of cross-platform file-servers. The plan was that Novell would market the resulting OS as a challenge to Microsoft Windows, but the project was discontinued in 1993 and never released, although components were reused in other projects. The project was named after the Star Trek science fiction franchise with the slogan "To boldly go where no Mac has gone before".
Virtual DOS machines (VDM) refer to a technology that allows running 16-bit/32-bit DOS and 16-bit Windows programs when there is already another operating system running and controlling the hardware.
LOADALL is the common name for two different, undocumented machine instructions of Intel 80286 and Intel 80386 processors, which allow access to areas of the internal processor state that are normally outside of the IA-32 API scope, like descriptor cache registers. The LOADALL for 286 processors is encoded 0Fh 05h, while the LOADALL for 386 processors is 0Fh 07h.
DOS Plus was the first operating system developed by Digital Research's OEM Support Group in Newbury, Berkshire, UK, first released in 1985. DOS Plus 1.0 was based on CP/M-86 Plus combined with the PCMODE emulator from Concurrent PC DOS 4.11. While CP/M-86 Plus and Concurrent DOS 4.1 still had been developed in the United States, Concurrent PC DOS 4.11 was an internationalized and bug-fixed version brought forward by Digital Research UK. Later DOS Plus 2.x issues were based on Concurrent PC DOS 5.0 instead. In the broader picture, DOS Plus can be seen as an intermediate step between Concurrent CP/M-86 and DR DOS.
4690 Operating System is a specially designed point of sale (POS) operating system, originally sold by IBM. In 2012, IBM sold its retail business, including this product, to Toshiba, which assumed support. 4690 is widely used by IBM and Toshiba retail customers to run retail systems which run their own applications and others.
The DOS API is an API which originated with 86-DOS and is used in MS-DOS/PC DOS and other DOS-compatible operating systems. Most calls to the DOS API are invoked using software interrupt 21h. By calling INT 21h with a subfunction number in the AH processor register and other parameters in other registers, various DOS services can be invoked. These include handling keyboard input, video output, disk file access, program execution, memory allocation, and various other activities. In the late 1980s, DOS extenders along with the DOS Protected Mode Interface (DPMI) allow the programs to run in either 16-bit or 32-bit protected mode and still have access to the DOS API.
FlexOS is a discontinued modular real-time multiuser multitasking operating system (RTOS) designed for computer-integrated manufacturing, laboratory, retail and financial markets. Developed by Digital Research's Flexible Automation Business Unit in Monterey, California, in 1985.
This article presents a timeline of events in the history of 16-bit x86 DOS-family disk operating systems from 1980 to present. Non-x86 operating systems named "DOS" are not part of the scope of this timeline.
DOS is a family of disk-based operating systems for IBM PC compatible computers. The DOS family primarily consists of IBM PC DOS and a rebranded version, Microsoft's MS-DOS, both of which were introduced in 1981. Later compatible systems from other manufacturers include DR-DOS (1988), ROM-DOS (1989), PTS-DOS (1993), and FreeDOS (1998). MS-DOS dominated the IBM PC compatible market between 1981 and 1995.
MS-DOS 4.0 was a multitasking release of MS-DOS developed by Microsoft based on MS-DOS 2.0. Lack of interest from OEMs, particularly IBM, led to it being released only in a scaled-back form. It is sometimes referred to as European MS-DOS 4.0, as it was primarily used there. It should not be confused with PC DOS 4.00 or MS-DOS 4.01 and later, which did not contain the multi-tasking features.
The Multiuser DOS Federation (MDOS) was an industry alliance to promote the growth and acceptance of multi-user DOS-based solutions on 286, 386 and 486 computers. It was formed in July 1990. Initially among them were Digital Research, Theos Software, SunRiver, DigiBoard, Alloy, Viewport International and others. The idea was to reduce costs by allowing workgroups to run DOS applications from a shared PC while working on terminals or workstations.
[…] Digital Research is producing an operating system for the 286. MP/M-286 will take advantage of the processor's memory management and protection and virtual memory support. Digital Research is promising "complete" compatibility with its MP/M-86 and CP/M-86 for the 8086 processor. Intel is supplying Digital Research with the hardware to develop and test MP/M-286. […]
[…] Paul Bailey of Digital Research keenly promotes this approach; it is his company that is supplying ICL and others with Concurrent Dos-286. This chameleon operating system allows ICL and other 80286 manufacturers to build machines that will be able to cope with all the existing body of IBM-PC software – and at the same time promise multi-tasking, windowing and true concurrency, three features that together allow a single micro to do several things at once. […] Although no firm announcements have been made, it seems certain that by the end of the year ACT will be offering a Concurrent CP/M 286 machine to fuel its drive into the corporate market. But by this time it will have to contend with IBM's own 80286 office micro, the PC/AT. […] IBM also have a software product in the offing that could pull the rug out from under the Concurrent contenders. Some 180K in size, TopView is a program for IBM PC's and AT's that beefs up the operating system to provide windowing facilities for existing 'well behaved' standard packages. […]
[…] This is a guide to the operation of the High C compiler as implemented for the Concurrent DOS 286 1.2 or later operating system – hereafter abbreviated to just "Concurrent" per Digital Research custom – running on the Intel 80286 microprocessor and using the Intel Object-Module Format (OMF). The compiler generates code for any of the Intel 8086/88/186/188/286 family of microprocessors. […]