PC compatible DOS

from Wikipedia, the free encyclopedia

As a PC-compatible DOS are operating systems for computer called that compatible with the operating system standard MS-DOS from Microsoft are. These DOS operating systems are considered IBM-PC-compatible or MS-DOS-compatible if they can run on an IBM-PC or an IBM-PC-compatible computer and allow DOS or MS-DOS to be written for PC Run programs unchanged and fully functional.

prehistory

DOS systems for home computers have their roots in mainframe operating systems that became available from the mid-1960s. At that time, magnetic disks replaced magnetic tapes as the most important mass storage device . Under the so-called disk operating systems , in contrast to the older tape operating systems, it was possible to process several program sequences ( batch jobs ) in parallel without IPL and thus to go beyond the purely sequential read / write processes of the tape drive , as for magnetic disks - Storage media is adequate.

With the group of systems that can run on the PC in the narrower sense (IBM-PC), the two branches of the DOS systems from Microsoft ( MS-DOS ) and IBM ( IBM DOS / PC DOS ) have emerged.

These DOS types were originally named QDOS in 1980, then soon renamed 86-DOS , by Tim Paterson of Seattle Computer Products as the CP / M- 80 derivative for Intel-8086 processors because the CP / M-86 Version of Digital Research was a long time coming. With the exception of the FAT file system, which was significantly improved compared to the CP / M file system and which Paterson had adopted from a BASIC interpreter from Microsoft, 86-DOS offered almost exactly the same possibilities as the CP / M-80, only for a newer one Processor type.

Shortly thereafter, 86-DOS was bought by Microsoft and renamed MS-DOS, when IBM asked Microsoft for an operating system for their IBM PC , which was under development , but Microsoft could not develop one itself quickly enough.

PC DOS and MS-DOS have therefore adopted some essential features and system interfaces ( APIs ) from CP / M. This fact later led to legal disputes between Microsoft and the CP / M manufacturer Digital Research.

PC compatible DOS

MS-DOS

MS-DOS is an operating system that was developed at Microsoft for IBM. The first version of MS-DOS distributed by Microsoft itself came onto the market in 1982 as MS-DOS 1.25. MS-DOS was available in adaptations for dozens of different PC manufacturers (OEMs) , in which IO.SYSthe hardware-related input and output routines in the file as well as various auxiliary programs specifically adapted to the particularities of the respective host machines, which are compatible with the 8086 processor from Intel, but not necessarily also had to be compatible with the IBM PC. These adapted versions could therefore not be run on computers from other manufacturers or only to a limited extent. The OEM variant of MS-DOS specially adapted to IBM PCs was called IBM DOS or later PC DOS and was sold by IBM for its own computers. The technical further development took place alternately at both Microsoft and IBM.

With the advent of "100% IBM-compatible" clones from 1983 and the disappearance of non-IBM-compatible x86 computers, the functionally specially adapted OEM versions of MS-DOS also increasingly disappeared from the market, so that in the further course all OEMs also a generic MS-DOS version could be operated with only minimal OEM adaptations, which often only consisted of adapting the start message and / or in individually added utilities. Compared to the OEM version "PC DOS" sold by IBM, the generic version of MS-DOS at least had code for handling various special cases on machines that were not completely compatible. PC DOS as a dedicated operating system only for original IBM machines could do without these special treatments and thus remained somewhat leaner and more powerful.

The last independent MS-DOS version with the version number 6.22 appeared in 1994. As part of the operating systems of the Windows 9x series, MS-DOS received LBA and FAT32 support and was further developed up to version 8.0.

IBM DOS and PC DOS

PC DOS is a widespread OEM variant of the MS-DOS operating system, which arose at Microsoft as a result of an order development for IBM and which was subjected to slight changes, above all to a large number of bug fixes, by IBM before delivery. Version 1.0 came onto the market in 1981, before the first MS-DOS version distributed by Microsoft itself, under the official name "IBM Personal Computer Disk Operation System 1.0", but was even then simply called "PC DOS" for short. The versions 3.30 to 5.02 ran under the official name "IBM DOS" and from version 6.1 the system was marketed as "IBM PC DOS".

Compared to generic MS-DOS editions, PC DOS had various optimizations. Some of them could only run on original IBM PCs and 100% compatible machines. The technical further development took place alternately at both Microsoft and IBM.

PC DOS was further developed to be compatible with MS-DOS (Windows 3.x) up to version 6.3 from 1993, whereby version 6.1 of MS-DOS 6.0 already differed more clearly than the previous versions and PC DOS was also marketed as an alternative for PCs from other manufacturers has been. The current versions PC DOS 7.0 (Revision 0, 1994) with REXX , PCMCIA , DPMS and XDF support, Stacker Disk Compression and a powerful text editor and help system, PC DOS 2000 (PC DOS 7.0 Revision 1, 1998) with year -2000 -Fixes and Euro support and OEM PC DOS 7.1 (2003) with LBA / FAT32 support are independent further developments by IBM, in which Microsoft no longer played a part.

DR-DOS

DR-DOS (up to and including version 6.0 still DR DOS ) was originally developed by Digital Research as an answer to MS-DOS, since MS-DOS, originally a clone of CP / M-80 for 8086 processors, was contracted with IBM advanced to become the standard operating system for the IBM PC and the large market of compatible computers. Such a supremacy among the operating systems for microcomputers was previously held by Digital Research's CP / M operating system family, which has now been increasingly replaced by MS-DOS. DR-DOS can be seen as a further development of CP / M (here especially CP / M-86) in the direction of MS-DOS / PC DOS. In fact, through this relationship, the genesis of some (only a few) routines at the source code level can be traced back to 1976, i.e. long before the introduction of the IBM PC, even if the development of DR-DOS as such did not begin until much later has been.

The development of MS-DOS / PC DOS-compatible operating systems began at Digital Research in 1983 with the development of the DOS emulator PCMODE, an additional module for their own operating system Concurrent CP / M-86 3.1 (BDOS- Kernel 3.1). The DR Concurrent CP / M-86 was a multitasking version of the CP / M-86. With the next version of the operating system in 1984, the emulator became an integral part of the system, which was accordingly renamed DR Concurrent DOS 3.2 (with BDOS kernel 3.2). The CDOS OEM adaptation for IBM PC compatible computers was expressed by the additional designation "PC" in the name of DR Concurrent PC DOS (alias CPCDOS). This Digital Research operating system could run CP / M-86 and MS-DOS / PC-DOS-1.1 applications at the same time. Despite the similarity of names, the system must be strictly distinguished from IBM PC DOS, which as an MS-DOS OEM version offered neither CP / M-86 compatibility nor multitasking. Later versions of CDOS also supported EEMS bank switching (CDOS 86 / XM, 1986) and used the 286 or 386 protected mode (CDOS 286, 1985, or CDOS 386, 1987) for memory management and multitasking. The DOS emulator was also increasingly developed and offered compatibility with DOS 2.x / 3.x / 5.x applications. Further developments of Concurrent DOS were FlexOS and Multiuser DOS (MDOS), from which Datapac System Manager and IMS REAL / 32 developed much later. CDOS, FlexOS and MDOS were mainly used in professional environments and for industrial control tasks because of their high reliability and were not widely used on normal desktop computers.

Digital Research made several attempts to gain a foothold in the desktop market with its own MS-DOS / PC-DOS-compatible operating systems.

The first of these attempts consisted in DOS Plus 1.2-2.1 (1986–1988), a single-user descendant of DR Concurrent PC DOS 4.1-5.0, which runs PC-DOS 2.11 applications in addition to CP / M-86 applications could and was available for a handful of OEM platforms. As an emulation based on a CP / M kernel, however, DOS compatibility was still limited. a. since many commands were still similar to CP / M and z. B. no DOS device drivers could be loaded.

Digital Research started the next and ultimately successful attempt in 1988 with the presentation of DR DOS 3.31 (with BDOS kernel 6.0) in a phase when the further development of MS-DOS / PC DOS at Microsoft and IBM seemed to be stagnating and urgently needed adjustments were being made the possibilities of newer machines were dragged there over the years. This new single-user operating system line was a spin-off from Concurrent DOS 6.0, in which the XIOS was replaced by an IBM PC-compatible DOS BIOS in order to achieve maximum compatibility with the boot phase of DOS and with DOS device drivers . A CP / M-like BDOS kernel was still working inside, but it was no longer compatible with CP / M system calls and was pretending to be IBM PC DOS 3.31. The system offered no multitasking, but almost 100% compatibility with DOS applications, which with the MS-DOS editions common up to now, overdue support for the management (at that time) of "large" hard disks (based on the Compaq MS-DOS 3.31 model ), as well as a number of enhancements compared to the competition MS-DOS, such as password-based access control for files and directories, floating drives, subdirectories that can be nested as deeply as required, a command line and input history function that is effective everywhere, meaningful error messages and extended help functions.

DR DOS was able to survive several versions (DR DOS 3.31, 3.32, 3.33, 3.34, 3.35 with BDOS 6.0, DR DOS 3.40, DR DOS 3.41 with BDOS 6.3, DR DOS 5.0 with BDOS 6.5, DR DOS 6.0 with BDOS 6.7) powerful alternative to MS-DOS and PC DOS claim. From this point onwards, many of the fundamentally new functions (including memory management, task switching, GUI, disk compression, deletion tracking) were first implemented in DR DOS and in some cases only years later in MS-DOS and PC DOS. The compatibility with unclean DOS applications was also increasingly improved, until finally in 1992 with DR PalmDOS 1.0 (BDOS 7.0) the previous DOS emulation of the kernel was completely replaced by DOS-compatible internal structures. DR PalmDOS was a further development of DR DOS 6.0 with special functions for early palmtops such as an integrated PCMCIA stack, the possibility of executing XIP applications under a special task switcher variant directly from the ROM, and including extended energy management a dynamically effective idling detection. For reasons of compatibility, all previous editions of DR DOS for normal DOS applications are PC DOS 3.31.

After Digital Research was sold to Novell in 1993, the system was marketed in 1994 as Novell DOS 7 (with BDOS 7.2), which for DOS applications was PC DOS 6.1. In addition to peer-to-peer network functions ( Personal NetWare ), Novell DOS 7 offered greatly expanded memory management with VCPI, DPMI and DPMS and, in conjunction with a 32-bit protected mode core system provided via EMM386, support for preemptive multitasking and multithreading in DOS virtual machines.

After more than 15 updates, the system was sold to Caldera in 1996, who re-released it in 1997 as Caldera OpenDOS 7.01. The source code of the core components was also published (only usable for non-commercial purposes) as well as historical source code from CP / M, GEM and ViewMAX . Caldera UK developed the system under the name DR-DOS (now for the first time written with a hyphen) to DR-DOS 7.02 and 7.03 (BDOS 7.3) with year 2000 fixes, euro support and some new upload functions, versions that in addition to some larger extensions that are not included in all editions (such as TCP / IP support, the graphical HTML 3.2 web browser WebSpyder, support for long file names with LONGNAME, dynamically loadable support for LBA access and FAT32 drives with DRFAT32 as well as a POSIX -pthreads API extension) primarily attracted attention through several hundred optimizations and improvements in detail. In addition, special DR-DOS versions called "Winglue" or "Winbolt" were developed, which were compatible with Windows 95 (MS-DOS 7.0 + Windows 4.0) and Windows 98 (7.1 + Windows 4.1) and played an important role in the Caldera process vs. Microsoft played, but so far remained unpublished.

With the closure of the English development center in Andover at the beginning of 1999 and the outsourcing to Caldera Thin Clients, USA, a subsidiary of the Caldera mother, the further development of DR-DOS was abruptly stopped. DR-DOS 7.03 was initially distributed by Lineo or Embedix, which emerged from Caldera Thin Clients, and is still offered today by DRDOS, Inc. alias DeviceLogics for use in embedded systems.

Special OEM versions DR-DOS 7.04, 7.05, 7.06 and later also 7.07 (BDOS 7.3 / 7.4 / 7.7) and 7.08 (BDOS 7.8) with LBA and FAT32 support have been produced by the former developers of the system over the years developed.

Two versions have been released by DRDOS, Inc. DR-DOS 8.0 (2004) is an OEM version that goes back to DR-DOS 7.0x with LBA and FAT32 support with various extensions to the disk tools. DR-DOS 8.1 (2005) was based - in contrast to DR-DOS 8.0 - partly not on previous DR-DOS versions, but on FreeDOS components and had to be withdrawn due to copyright infringements.

The last official version for desktop systems is still the Caldera DR-DOS 7.03 from 1999.

The only publicly accessible further development is currently the Enhanced DR-DOS 7.01.xx, which can be dubbed a fan project, which Udo Kuhnt developed from the published source code of Caldera OpenDOS 7.01. EDR-DOS is subject to the license conditions of the OpenDOS 7.01 source code, which excludes commercial use (except for test purposes).

The DOS-BIOS and BDOS of DR-DOS and practically all resident drivers (especially the memory manager) are written completely in assembler, only parts of the shell COMMAND.COM and auxiliary programs were written in C.

PTS-DOS

PTS-DOS is an MS-DOS clone from Russia, which is written almost entirely in assembly language. It differs even more from MS-DOS in the handling and naming of system files than is the case with DR-DOS.

PTS-DOS was developed for the Russian military by the newly founded company PhysTechSoft in 1991 and was approved for commercial marketing by the Ministry of Defense. The first version was published in 1993 as PTS-DOS 6.4. After version 6.5, some of the manufacturer's programmers founded Paragon and developed their own versions of PTS-DOS using the source code. In the meantime, both lines are no longer being developed.

Other MS-DOS / PC-DOS compatible variants

There are many DOS that are at least partially compatible with MS-DOS, some common ones are:

  • DCP : MS-DOS plagiarism from Robotron used in the GDR .
  • Embedded DOS : DOS clone from General Software for Embedded Systems
  • FreeDOS : Created to ensure the continued existence and further development of the DOS operating system
  • PC-MOS / 386 : A multitasking, multi-user operating system that makes DOS applications available to multiple users.
  • RxDOS : A completely invariant programmed DOS clone by Mike Podanoffsky
  • ROM DOS : A DOS clone from Datalight for Embedded Systems

functionality

Initialization via batch commands

Under DOS, batch files (also known as "batch processing files " ) are often used in order to automatically execute sequences of commands. Since some DOS systems cannot save settings and they therefore expire after a restart, batch files are used to set them again each time the system is started (for example by means of AUTOEXEC.BATa batch file that various DOS systems run automatically when they start up).

Graphical user interfaces for DOS

Many graphical user interfaces (also GUI , Graphical User Interface ) have been developed for MS-DOS and compatible DOS versions. Graphic user interfaces that have been further developed and available to this day are PC / GEOS , OpenGEM (a free further development of the original GEM by Digital Research ) and the developments around MatrixOS , Qube3P and SEAL .

Very old versions of Microsoft Windows up to and including Windows 2.x were just graphical extensions for MS-DOS. They were developed as an optional extension of MS-DOS and are also sold separately. Windows 3.x uses DOS routines in many areas, but already has essential components of an independent operating system with its own scheduler and memory management. Windows 95 and all successors based on it use DOS to start and run DOS-based programs; 32-bit programs rarely use DOS operating system routines, as the Win32 API replaces them in principle. The versions of MS-DOS (MS-DOS 7, 8) specially adapted for Windows are mandatory for starting the respective Windows 9x version. These further developed MS-DOS versions were no longer available individually, but only an integral part of all versions of Windows 95, Windows 98 and, most recently, Windows Me , which appeared in 2000. After that the further development was stopped.

Usage today

DOS systems are considered obsolete and today, unless they are an operating system component, are practically only used on legacy systems, for operating old DOS software in emulators or in niche markets.

As an operating system

DOS operating systems are used for embedded systems .

From OEMs are DOS systems, in particular the freely available and thus license-free FreeDOS, often used to have to sell PCs not entirely without an operating system, not incorporating Windows still want to install Linux.

In order to be able to continue using software that is not compatible with newer operating systems, it is found as a fully installed system on a PC with several operating systems ( multi-boot systems ), from which one can then select a system when booting. This way has now largely been replaced by DOS emulators.

These operating systems are also used for a BIOS or firmware update. They are also used for bootable emergency and repair media, especially for combating malware , because the usual malware cannot run on DOS systems. The DOS enables virus scanners to be started and simple file processing. The same applies to recovery CDs from image programs.

DOS emulators

OS / 2 , the operating system developed by IBM and Microsoft from 1987 onwards, was no longer based on DOS, although there are certain peculiarities of the DOS system. The downward compatibility required at that time was ensured via the DOS emulation kernel , also known as multithreading (Multiple Virtual DOS Machine , MVDM) . This technology, which was revolutionary at the time, has also turned out to be a major weak point, because the DOS mode only ran exclusively on the screen and all drivers had to take part in the switchover to DOS mode. Later 32-bit versions from 1991 onwards allowed DOS multitasking sessions with their own window manager ( Workplace Shell , Presentation Manager ). Even more modern Windows such as Windows NT , Windows 2000 , Windows XP , Windows Vista and all newer versions are based on the kernel of the 32.bit operating system Windows NT 3.1, introduced in 1991, which was completely redeveloped at the time and has no "DOS roots": MS-DOS / PC DOS is neither a component nor the technical basis of these operating systems, although the Win32 subsystem of modern 32-bit Windows versions still simulates the functionality of MS-DOS. More modern OS / 2 versions followed the same path: The DOS box ( command line ) runs in these systems as an interpreter ( cmd.exe , COMMAND.COM), which emulates DOS in order to execute programs written in DOS. The function is that of a scripting language . The 64-bit versions of Windows XP and later no longer have the ability to run MS-DOS programs.

Today there are DOS emulators such as DOSBox , which runs on different operating systems, and the Linux program DOSEMU . Instead, however, entire PC emulators (see also virtualization ) can be used that attempt to reproduce the hardware of a computer true to the original. An original DOS can be installed and used on such a “virtual computer”.

In contrast to virtual machines , special DOS emulators are generally more effective and therefore faster and more resource-saving , but also not fully compatible, since in particular direct system access such as various BIOS routines that are used outside of the DOS API, as well as direct access to the hardware , such as direct memory management, do not work. It is also possible that a PC emulator does not provide all the functions of the emulated hardware true to the original, so that one or the other DOS program works incorrectly or not at all. In addition, the speed advantage is lost if the host system supports Pacifica or Vanderpool technology, as these technologies accelerate virtual machines considerably, but have no effect on emulators. On such systems, virtual machines are usually faster than DOS emulators.

Individual evidence

  1. DOS History: PTS-DOS
  2. David C. Zimmerli: Inside the OS / 2 Kernel. In: EDM / 2. 1998, p. VII. The DOS emulation kernel , accessed April 5, 2009 .
  3. Michal Necasek: OS / 2 1.0. In: The History of OS / 2. Archived from the original on August 11, 2010 ; accessed on April 5, 2009 .