Misplaced Pages

Multiuser DOS Federation

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
#113886

79-467: 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

158-495: A 64 KiB page frame in the reserved upper memory area. 80386 and later systems could use a virtual 8086 mode (V86) mode memory manager like EMM386 to create expanded memory from extended memory without the need of an add-on card. The second specification was the Extended Memory Specification (XMS) for 80286 and later systems. This provided a way to copy data to and from extended memory, access to

237-401: A batch file is interpreted as a program to run. Batch files can also make use of internal commands, such as GOTO and conditional statements . The operating system offers an application programming interface that allows development of character-based applications, but not for accessing most of the hardware , such as graphics cards , printers , or mice . This required programmers to access

316-498: A configuration file similar to CONFIG.SYS and AUTOEXEC.BAT. If the MSDOS.SYS BootGUI directive is set to 0 , the boot process will stop with the command processor (typically COMMAND.COM) loaded, instead of executing WIN.COM automatically. DOS uses a filesystem which supports 8.3 filenames : 8 characters for the filename and 3 characters for the extension. Starting with DOS 2 hierarchical directories are supported. Each directory name

395-425: A conversation with fellow United Way National Board Executive Committee member Mary Maxwell Gates , who referred Opel to her son Bill Gates for help with an 8088-compatible build of CP/M. IBM was then sent to Digital Research, and a meeting was set up. However, initial negotiations for the use of CP/M broke down: Digital Research wished to sell CP/M on a royalty basis, while IBM sought a single license, and to change

474-524: A few developers and computer engineers still use it because it is close to the hardware. DOS's structure of accessing hardware directly allows it to be used in embedded devices . The final versions of DR-DOS are still aimed at this market. ROM-DOS is used as operating system for the Canon PowerShot Pro 70. On Linux , it is possible to run DOSEMU , a Linux-native virtual machine for running DOS programs at near native speed. There are

553-483: A file name with a space, has sometimes been used by viruses or hacking programs to obscure files from users who do not know how to access these locations. DOS was designed for the Intel 8088 processor, which can only directly access a maximum of 1 MiB of RAM. Both IBM and Microsoft chose 640 kibibytes (KiB) as the maximum amount of memory available to programs and reserved the remaining 384 KiB for video memory,

632-521: A manifesto proposing the development of an open-source replacement. Within a few weeks, other programmers including Pat Villani and Tim Norman joined the project. A kernel, the COMMAND.COM command line interpreter (shell), and core utilities were created by pooling code they had written or found available. There were several official pre-release distributions of FreeDOS before the FreeDOS 1.0 distribution

711-666: A more user-friendly environment, numerous software manufacturers wrote file management programs that provided users with WIMP interfaces. Microsoft Windows is a notable example, eventually resulting in Microsoft Windows 9x becoming a self-contained program loader, and replacing DOS as the most-used PC-compatible program loader. Text user interface programs included Norton Commander , DOS Navigator , Volkov Commander , Quarterdesk DESQview , and Sidekick . Graphical user interface programs included Digital Research's GEM (originally written for CP/M) and GEOS . Eventually,

790-513: A number of other emulators for running DOS on various versions of Unix and Microsoft Windows such as DOSBox . DOSBox is designed for legacy gaming (e.g. King's Quest , Doom ) on modern operating systems. DOSBox includes its own implementation of DOS which is strongly tied to the emulator and cannot run on real hardware, but can also boot MS-DOS, FreeDOS, or other DOS operating systems if needed. MS-DOS and IBM PC DOS related operating systems are commonly associated with machines using

869-413: A program run from one floppy while accessing its data on another. Hard drives were originally assigned the letters "C" and "D". DOS could only support one active partition per drive. As support for more hard drives became available, this developed into first assigning a drive letter to each drive's active primary partition , then making a second pass over the drives to allocate letters to logical drives in

SECTION 10

#1732790491114

948-501: A retail version of MS-DOS, starting with MS-DOS 5.0. In the mid-1980s, Microsoft developed a multitasking version of DOS . This version of DOS is generally referred to as "European MS-DOS 4" because it was developed for ICL and licensed to several European companies. This version of DOS supports preemptive multitasking, shared memory, device helper services and New Executable ("NE") format executables. None of these features were used in later versions of DOS, but they were used to form

1027-566: A series of disagreements over two successor operating systems to DOS, OS/2 and Windows. They split development of their DOS systems as a result. The last retail version of MS-DOS was MS-DOS 6.22; after this, MS-DOS became part of Windows 95, 98 and Me. The last retail version of PC DOS was PC DOS 2000 (also called PC DOS 7 revision 1), though IBM did later develop PC DOS 7.10 for OEMs and internal use. The FreeDOS project began on 26 June 1994, when Microsoft announced it would no longer sell or support MS-DOS. Jim Hall then posted

1106-768: A shared PC while working on terminals or workstations. On 18 February 1991, several members of the Multiuser DOS Federation issued a press release regarding their intentions to support DPMI (mostly DPMI 1.0 ) in their products including Alloy Computer Products Inc. ( PC-PLUS ), Bluebird Systems , Inc. ( SuperDOS ), Concurrent Controls, Inc. ( CCI Concurrent DOS 386 , CCI Multiuser DOS ), Digital Research, Inc. ( DR Multiuser DOS ), S&H Computer Systems , Inc. ( TSX-32 ), StarPath Systems , Inc. ( Vmos/3 ), The Software Link ( PC-MOS/386 ), THEOS Software Corporation ( THEOS ), Intelligent Graphics Corporation ( VM/386 ). Several of them had previously worked on

1185-975: A shifted segment register to the offset address, but the offset EA itself is always calculated entirely in the main ALU. Furthermore, the loose coupling of the EU and BIU (bus unit) inserts communication overhead between the units, and the four-clock period bus transfer cycle is not particularly streamlined. Contrast this with the two-clock period bus cycle of the 6502 CPU and the 80286's three-clock period bus cycle with pipelining down to two cycles for most transfers. Most 8088 instructions that can operate on either registers or memory, including common ALU and data-movement operations, are at least four times slower for memory operands than for only register operands. Therefore, efficient 8088 (and 8086) programs avoid repeated access of memory operands when possible, loading operands from memory into registers to work with them there and storing back only

1264-415: A time can use them, and DOS itself has no functionality to allow more than one program to execute at a time. The DOS kernel provides various functions for programs (an application program interface ), like character I/O, file management, memory management, program loading and termination. DOS provides the ability for shell scripting via batch files (with the filename extension .BAT ). Each line of

1343-419: A write operation or an interrupt is in progress). The second change is the pin that signals whether a memory access or input/output access is being made has had its sense reversed. The pin on the 8088 is IO/ M . On the 8086 part it is IO /M. The reason for the reversal is that it makes the 8088 compatible with the 8085 . Depending on the clock frequency , the number of memory wait states , as well as on

1422-572: A year Microsoft licensed MS-DOS to over 70 other companies, which supplied the operating system for their own hardware, sometimes under their own names. Microsoft later required the use of the MS-DOS name, with the exception of the IBM variant. IBM continued to develop their version, PC DOS , for the IBM PC. Digital Research became aware that an operating system similar to CP/M was being sold by IBM (under

1501-539: Is a real DOS, like MS-DOS 6.22 or PC DOS 5.00. One makes a bootable floppy disk of the DOS, adds a number of drivers from OS/2, and then creates a special image. The DOS booted this way has full access to the system, but provides its own drivers for hardware. One can use such a disk to access cdrom drives for which there is no OS/2 driver. In all 32-bit (IA-32) editions of the Windows NT family since 1993, DOS emulation

1580-714: Is also 8.3 format but the maximum directory path length is 64 characters due to the internal current directory structure (CDS) tables that DOS maintains. Including the drive name, the maximum length of a fully qualified filename that DOS supports is 80 characters using the format drive:\path\filename.ext followed by a null byte. DOS uses the File Allocation Table (FAT) filesystem. This was originally FAT12 which supported up to 4078 clusters per drive. DOS 3.0 added support for FAT16 which used 16-bit allocation entries and supported up to 65518 clusters per drive. Compaq MS-DOS 3.31 added support for FAT16B which removed

1659-431: Is an optional built-in driver for a fourth line printer supported in some versions of DR-DOS since 7.02. CONFIG$ constitutes the real mode PnP manager in MS-DOS 7.0–8.0. AUX typically defaults to COM1 , and PRN to LPT1 ( LST ), but these defaults can be changed in some versions of DOS to point to other serial or parallel devices. The PLT device (present only in some HP OEM versions of MS-DOS)

SECTION 20

#1732790491114

1738-531: Is available in COMMAND.COM. Programs like the Microsoft CD-ROM Extensions (MSCDEX) provide access to files on CD-ROM disks. Some TSRs can even perform a rudimentary form of task switching. For example, the shareware program Back and Forth (1990) has a hotkey to save the state of the currently-running program to disk, load another program, and switch to it, making it possible to switch "back and forth" between programs (albeit slowly, due to

1817-408: Is based upon DOS 5. Although there is a default configuration (config.sys and autoexec.bat), one can use alternate files on a session-by-session basis. It is possible to load drivers in these files to access the host system, although these are typically third-party. Under OS/2 2.x and later, the DOS emulation is provided by DOSKRNL. This is a file that represents the combined IBMBIO.COM and IBMDOS.COM,

1896-502: Is invalid." These names (except for NUL) have continued to be supported in all versions of MS-DOS, PC DOS and DR-DOS ever since. LST was also available in some OEM versions of MS-DOS 1.25, whereas other OEM versions of MS-DOS 1.25 already used LPT1 (first line printer ) and COM1 (first serial communication device ) instead, as introduced with PC DOS. In addition to LPT1 and LPT2 as well as COM1 to COM3 , Hewlett-Packard's OEM version of MS-DOS 2.11 for

1975-413: Is likely to render the media unbootable. It is, however, possible to replace the shell at will, a method that can be used to start the execution of dedicated applications faster. This limitation does not apply to any version of DR DOS, where the system files can be located anywhere in the root directory and do not need to be contiguous. Therefore, system files can be simply copied to a disk provided that

2054-417: Is practically impossible to avoid idling the EU in the 8088 at least 1 ⁄ 4 of the time while executing useful real-world programs, and it is not hard to idle it half the time. In short, an 8088 typically runs about half as fast as 8086 clocked at the same rate, because of the bus bottleneck (the only major difference). A side effect of the 8088 design, with the slow bus and the small prefetch queue,

2133-690: Is probably not true on the 80286 and later; they have dedicated address ALUs and perform memory accesses much faster than the 8088 and 8086. Finally, because calls, jumps, and interrupts reset the prefetch queue, and because loading the IP register requires communication between the EU and the BIU (since the IP register is in the BIU, not in the EU, where the general registers are), these operations are costly. All jumps and calls take at least 15 clock cycles. Any conditional jump requires four clock cycles if not taken, but if taken, it requires 16 cycles in addition to resetting

2212-504: Is provided by way of a virtual DOS machine (NTVDM). 64-bit (IA-64 and x86-64) versions of Windows do not support NTVDM and cannot run 16-bit DOS applications directly; third-party emulators such as DOSbox can be used to run DOS programs on those machines. DOS systems use a command-line interface . A program is started by entering its filename at the command prompt. DOS systems include utility programs and provide internal commands that do not correspond to programs. In an attempt to provide

2291-475: Is that the speed of code execution can be very dependent on instruction order. When programming the 8088, for CPU efficiency, it is vital to interleave long-running instructions with short ones whenever possible. For example, a repeated string operation or a shift by three or more will take long enough to allow time for the 4-byte prefetch queue to completely fill. If short instructions (i.e. ones totaling few bytes) are placed between slower instructions like these,

2370-698: The HP Portable Plus also supported LST as alias for LPT2 and 82164A as alias for COM2 ; it also supported PLT for plotters . Otherwise, COM2 , LPT2 , LPT3 and the CLOCK$ (still named CLOCK in some issues of MS-DOS 2.11 ) clock device were introduced with DOS 2.0, and COM3 and COM4 were added with DOS 3.3. Only the multitasking MS-DOS 4 supported KEYBD$ and SCREEN$ . DR DOS 5.0 and higher and Multiuser DOS support an $ IDLE$ device for dynamic idle detection to saving power and improve multitasking. LPT4

2449-640: The Intel x86 or compatible CPUs , mainly IBM PC compatibles . Machine-dependent versions of MS-DOS were produced for many non-IBM-compatible x86 -based machines, with variations from relabelling of the Microsoft distribution under the manufacturer's name, to versions specifically designed to work with non-IBM-PC-compatible hardware. As long as application programs used DOS APIs instead of direct hardware access, they could run on both IBM-PC-compatible and incompatible machines. The original FreeDOS kernel, DOS-C ,

Multiuser DOS Federation - Misplaced Pages Continue

2528-461: The NEC V20 was a pin-compatible and slightly faster (at the same clock frequency) variant of the 8088, designed and manufactured by NEC . Successive NEC 8088 compatible processors would run at up to 16 MHz. In 1984, Commodore International signed a deal to manufacture the 8088 for use in a licensed Dynalogic Hyperion clone, in a move that was regarded as signaling a major new direction for

2607-563: The NTSC colorburst frequency). Some of IBM's engineers and other employees wanted to use the IBM 801 processor, some preferred the new Motorola 68000 , and others argued for a small and simple microprocessor, such as the MOS Technology 6502 or Zilog Z80 , which are in earlier personal computers. However, IBM already had a history of using Intel chips in its products and had also acquired

2686-490: The extended partition , then a third pass to give any other non-active primary partitions their names (where such additional partitions existed and contained a DOS-supported file system). Lastly, DOS allocates letters for optical disc drives , RAM disks , and other hardware. Letter assignments usually occur in the order the drivers are loaded, but the drivers can instruct DOS to assign a different letter; drivers for network drives, for example, typically assign letters nearer to

2765-521: The read-only memory of adapters on some video and network peripherals, and the system's BIOS. By 1985, some DOS applications were already hitting the memory limit, while much of reserved was unused, depending on the machine's specifications. Specifications were developed to allow access to additional memory. The first was the Expanded Memory Specification (EMS) was designed to allow memory on an add-on card to be accessed via

2844-494: The 32‑ MiB drive limit and could support up to 512 MiB. Finally MS-DOS 7.1 (the DOS component of Windows 9x) added support for FAT32 which used 32-bit allocation entries and could support hard drives up to 137 GiB and beyond. Starting with DOS 3.1, file redirector support was added to DOS. This was initially used to support networking but was later used to support CD-ROM drives with MSCDEX . IBM PC DOS 4.0 also had preliminary installable file system (IFS) support but this

2923-584: The 65,520-byte high memory area directly above the first megabyte of memory and the upper memory block area. Generally XMS support was provided by HIMEM.SYS or a V86 mode memory manager like QEMM or 386MAX which also supported EMS. Starting with DOS 5, DOS could directly take advantage of the HMA by loading its kernel code and disk buffers there via the DOS=HIGH statement in CONFIG.SYS. DOS 5+ also allowed

3002-485: The 8086's 16 lines. All of the other pins of the device perform the same function as they do with the 8086 with two exceptions. First, pin 34 is no longer BHE (this is the high-order byte select on the 8086—the 8088 does not have a high-order byte on its eight-bit data bus). Instead it outputs a maximum mode status, SS0 . Combined with the IO/ M and DT/ R signals, the bus cycles can be decoded (it generally indicates when

3081-432: The 8086, a sequence of fast instructions can quickly drain the four-byte prefetch queue. When the queue is empty, instructions take as long to complete as they take to fetch. Both the 8086 and 8088 take four clock cycles to complete a bus cycle; whereas for the 8086 this means four clocks to transfer two bytes, on the 8088 it is four clocks per byte. Therefore, for example, a two-byte shift or rotate instruction, which takes

3160-605: The DOS virtual machine is provided by WINOLDAP. WinOldAp creates a virtual machine based on the program's PIF file, and the system state when Windows was loaded. The DOS graphics mode, both character and graphic, can be captured and run in the window. DOS applications can use the Windows clipboard by accessing extra published calls in WinOldAp, and one can paste text through the WinOldAp graphics. The emulated DOS in OS/2 and Windows NT

3239-463: The EU only two clock cycles to execute, actually takes eight clock cycles to complete if it is not in the prefetch queue. A sequence of such fast instructions prevents the queue from being filled as fast as it is drained, and in general, because so many basic instructions execute in fewer than four clocks per instruction byte—including almost all the ALU and data-movement instructions on register operands and some of these on memory operands—it

Multiuser DOS Federation - Misplaced Pages Continue

3318-494: The IBM PC compatible market between 1981 and 1995. Although the name has come to be identified specifically with this particular family of operating systems, DOS is a platform-independent acronym for disk operating system , whose use predates the IBM PC. Dozens of other operating systems also use the acronym, beginning with the mainframe DOS/360 from 1966. Others include Apple DOS , Apple ProDOS , Atari DOS , Commodore DOS , TRSDOS , and AmigaDOS . IBM PC DOS (and

3397-562: The alternative XVCPI specification. This organization-related article is a stub . You can help Misplaced Pages by expanding it . DOS DOS ( / d ɒ s / , / d ɔː s / ) 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

3476-609: The basic 8086 design were one of the first jobs assigned to Intel's new design office and laboratory in Haifa. Variants of the 8088 with more than 5 MHz maximal clock frequency include the 8088–2, which was fabricated using Intel's new enhanced nMOS process called HMOS and specified for a maximal frequency of 8 MHz. Later followed the 80C88, a fully static CHMOS design, which could operate with clock speeds from 0 to 8 MHz. There were also several other, more or less similar, variants from other manufacturers. For instance,

3555-540: The basis of the OS/2 1.0 kernel. This version of DOS is distinct from the widely released PC DOS 4.0 which was developed by IBM and based upon DOS 3.3. Digital Research attempted to regain the market lost from CP/M-86, initially with Concurrent DOS , FlexOS and DOS Plus (both compatible with both MS-DOS and CP/M-86 software), later with Multiuser DOS (compatible with both MS-DOS and CP/M-86 software) and DR DOS (compatible with MS-DOS software). Digital Research

3634-411: The boot sector is DR DOS compatible already. In PC DOS and DR DOS 5.0 and above, the DOS system files are named IBMBIO.COM instead of IO.SYS and IBMDOS.COM instead of MSDOS.SYS . Older versions of DR DOS used DRBIOS.SYS and DRBDOS.SYS instead. Starting with MS-DOS 7.0 the binary system files IO.SYS and MSDOS.SYS were combined into a single file IO.SYS whilst MSDOS.SYS became

3713-422: The characteristics of the particular application program, the average performance for the Intel 8088 ranged approximately from 0.33 to 1 million instructions per second . Meanwhile, the mov reg,reg and ALU reg,reg instructions, taking two and three cycles respectively, yielded an absolute peak performance of between 1 ⁄ 3 and 1 ⁄ 2  MIPS per MHz, that is, somewhere in

3792-446: The company. The available CMOS version was outsourced to Oki Electronic Industry Co., Ltd. When announced, the list price of the 8088 was US$ 124.80. The plastic package version was introduced in July 1981 for USD $ 14.10 per 100 in quantities. Intel second sourced this microprocessor to Fujitsu Limited . The 8088 is architecturally very similar to the 8086. The main difference is that there are only eight data lines instead of

3871-404: The corresponding load drive whenever an application starts. There are reserved device names in DOS that cannot be used as filenames regardless of extension as they are occupied by built-in character devices. These restrictions also affect several Windows versions, in some cases causing crashes and security vulnerabilities. The reserved names are: In Windows 95 and Windows 98 , typing in

3950-499: The default OS kernel , though the MS-DOS component remained for compatibility. With Windows 95 and 98, but not ME, the MS-DOS component could be run without starting Windows. With DOS no longer required to use Windows, the majority of users stopped using it directly. As of 2024 , available compatible systems are FreeDOS , ROM-DOS , PTS-DOS , RxDOS and REAL/32 . Some computer manufacturers, including Dell and HP , sell computers with FreeDOS as an OEM operating system. And

4029-423: The disk access required). Back and Forth could not enable background processing however; that needed DESQview (on at least a 386 ). Intel 8088 The Intel 8088 (" eighty-eighty-eight ", also called iAPX 88 ) microprocessor is a variant of the Intel 8086 . Introduced on June 1, 1979, the 8088 has an eight-bit external data bus instead of the 16-bit bus of the 8086. The 16-bit registers and

SECTION 50

#1732790491114

4108-464: The end of the alphabet. Because DOS applications use these drive letters directly (unlike the /dev directory in Unix-like systems), they can be disrupted by adding new hardware that needs a drive letter. An example is the addition of a new hard drive having a primary partition where a pre-existing hard drive contains logical drives in extended partitions; the new drive will be assigned a letter that

4187-439: The finished results. The relatively large general register set of the 8088 compared to its contemporaries assists this strategy. When there are not enough registers for all variables that are needed at once, saving registers by pushing them onto the stack and popping them back to restore them is the fastest way to use memory to augment the registers, as the stack PUSH and POP instructions are the fastest memory operations. The same

4266-400: The hardware directly, usually resulting in each application having its own set of device drivers for each hardware peripheral. Hardware manufacturers would release specifications to ensure device drivers for popular applications were available. The DOS system files loaded by the boot sector must be contiguous and be the first two directory entries . As such, removing and adding this file

4345-580: The introduction of Xenix . The company planned to improve MS-DOS over time, so it would be almost indistinguishable from single-user Xenix, or XEDOS , which would also run on the Motorola 68000 , Zilog Z-8000 , and LSI-11 ; they would be upwardly compatible with Xenix, which BYTE in 1983 described as "the multi-user MS-DOS of the future". IBM, however, did not want to replace DOS. After AT&T began selling Unix, Microsoft and IBM began developing OS/2 as an alternative. The two companies later had

4424-458: The location of the reserved name (such as CON/CON, AUX/AUX, or PRN/PRN) crashes the operating system, of which Microsoft has provided a security fix for the issue. In Windows XP , the name of the file or folder using a reserved name silently reverts to its previous name, with no notification or error message. In Windows Vista and later, attempting to use a reserved name for a file or folder brings up an error message saying "The specified device name

4503-399: The manufacturers of major DOS systems began to include their own environment managers. MS-DOS/IBM DOS 4 included DOS Shell ; DR DOS 5.0, released the following year, included ViewMAX , based upon GEM. Although DOS is not a multitasking operating system, it does provide a terminate-and-stay-resident (TSR) function which allows programs to remain resident in memory. These programs can hook

4582-672: The name to "PC DOS". Digital Research founder Gary Kildall refused, and IBM withdrew. IBM again approached Bill Gates. Gates in turn approached Seattle Computer Products . There, programmer Tim Paterson had developed a variant of CP/M-80 , intended as an internal product for testing SCP's new 16-bit Intel 8086 CPU card for the S-100 bus . The system was initially named QDOS (Quick and Dirty Operating System), before being made commercially available as 86-DOS . Microsoft purchased 86-DOS, allegedly for US$ 50,000. This became Microsoft Disk Operating System, MS-DOS, introduced in 1981. Within

4661-519: The one megabyte address range are unchanged, however. In fact, according to the Intel documentation, the 8086 and 8088 have the same execution unit (EU)—only the bus interface unit (BIU) is different. The 8088 was used in the original IBM PC and in IBM PC compatible clones . The 8088 was designed at Intel's laboratory in Haifa , Israel , as were a large number of Intel's processors. The 8088

4740-433: The order of 100–200 clock cycles each. Many simple multiplications by small constants (besides powers of 2, for which shifts can be used) can be done much faster using dedicated short subroutines. The 80286 and 80386 each greatly increase the execution speed of these multiply and divide instructions. The original IBM PC is the most influential microcomputer to use the 8088. It has a clock frequency of 4.77 MHz (4/3

4819-411: The overall effect can be a slowdown by a factor of two or more. If those code segments are the bodies of loops, the difference in execution time may be very noticeable on the human timescale. The 8088 is also (like the 8086) slow at accessing memory. The same ALU that is used to execute arithmetic and logic instructions is also used to calculate effective addresses. There is a separate adder for adding

SECTION 60

#1732790491114

4898-442: The prefetch queue; therefore, conditional jumps should be arranged to be not taken most of the time, especially inside loops. In some cases, a sequence of logic and movement operations is faster than a conditional jump that skips over one or two instructions to achieve the same result. Intel datasheets for the 8086 and 8088 advertised the dedicated multiply and divide instructions (MUL, IMUL, DIV, and IDIV), but they are very slow, on

4977-399: The range 3–5 MIPS at 10 MHz. The speed of the execution unit (EU) and the bus of the 8086 CPU was well balanced; with a typical instruction mix, an 8086 could execute instructions out of the prefetch queue a good bit of the time. Cutting down the bus to eight bits made it a serious bottleneck in the 8088. With the speed of instruction fetch reduced by 50% in the 8088 as compared to

5056-468: The rights to manufacture the 8086 family. IBM chose the 8088 over the 8086 because Intel offered a better price for the former and could supply more units. Another factor was that the 8088 allowed the computer to be based on a modified 8085 design, as it could easily interface with most nMOS chips with 8-bit databuses. These were mature, and therefore economical, components. This included ICs originally intended for support and peripheral functions around

5135-501: The same name that IBM insisted upon for CP/M), and threatened legal action. IBM responded by offering an agreement: they would give PC consumers a choice of PC DOS or CP/M-86 , Kildall's 8086 version. Side-by-side, CP/M cost US$ 200 more than PC DOS, and sales were low. CP/M faded, with MS-DOS and PC DOS becoming the marketed operating system for PCs and PC compatibles. Microsoft originally sold MS-DOS only to original equipment manufacturers (OEMs). One major reason for this

5214-453: The separately sold MS-DOS ) and its predecessor, 86-DOS , ran on Intel 8086 16-bit processors. It was developed to be similar to Digital Research 's CP/M —the dominant disk operating system for 8-bit Intel 8080 and Zilog Z80 microcomputers—in order to simplify porting CP/M applications to MS-DOS. When IBM introduced the IBM PC , built with the Intel 8088 microprocessor, they needed an operating system. Chairman John Opel had

5293-497: The short ones can execute at full speed out of the queue. If, on the other hand, the slow instructions are executed sequentially, back to back, then after the first of them the bus unit will be forced to idle because the queue will already be full, with the consequence that later more of the faster instructions will suffer fetch delays that might have been avoidable. As some instructions, such as single-bit-position shifts and rotates, take literally 4 times as long to fetch as to execute,

5372-506: The system calls are passed through to the OS/2 windowing services. DOS programs run in their own environment, the bulk of the DOS utilities are provided by bound DOS / OS2 applications in the \OS2 directory. OS/2 can run Windows 3.1 applications by using a modified copy of Windows (Win-OS/2). The modifications allow Windows 3.1 programs to run seamlessly on the OS/2 desktop, or one can start a WinOS/2 desktop, similar to starting Windows from DOS. OS/2 allows for 'DOS from Drive A:', (VMDISK). This

5451-606: The system timer or keyboard interrupts to allow themselves to run tasks in the background or to be invoked at any time, preempting the current running program and effectively implementing a simple form of multitasking on a program-specific basis. The DOS PRINT command does this to implement background print spooling. Borland Sidekick , a popup personal information manager (PIM), also uses this technique. Terminate-and-stay-resident programs are also used to provide additional features not available by default. Programs like CED and DOSKEY provide command-line editing facilities beyond what

5530-690: The use of available upper memory blocks via the DOS=UMB statement in CONFIG.SYS. The DOS emulation in OS/2 and Windows runs in much the same way as native applications do. They can access all of the drives and services, and can even use the host's clipboard services. Because the drivers for file systems and such forth reside in the host system, the DOS emulation needs only provide a DOS API translation layer which converts DOS calls to OS/2 or Windows system calls. The translation layer generally also converts BIOS calls and virtualizes common I/O port accesses which many DOS programs commonly use. In Windows 3.1 and 9x,

5609-417: The user changes them. Under DOS, this problem can be worked around by defining a SUBST drive and installing the DOS program into this logical drive. The assignment of this drive would then be changed in a batch job whenever the application starts. Under some versions of Concurrent DOS , as well as under Multiuser DOS , System Manager and REAL/32 , the reserved drive letter L: will automatically be assigned to

5688-416: Was bought by Novell , and DR DOS became PalmDOS and Novell DOS ; later, it was part of Caldera (under the names OpenDOS and DR-DOS 7.02 / 7.03 ), Lineo , and DeviceLogics . Gordon Letwin wrote in 1995 that "DOS was, when we first wrote it, a one-time throw-away product intended to keep IBM happy so that they'd buy our languages." Microsoft expected that it would be an interim solution before

5767-513: Was derived from DOS/NT for the Motorola 68000 series of CPUs in the early 1990s. While these systems loosely resembled the DOS architecture, applications were not binary compatible due to the incompatible instruction sets of these non-x86-CPUs. However, applications written in high-level languages could be ported easily. DOS is a single-user, single-tasking operating system with basic kernel functions that are non-reentrant : only one program at

5846-464: Was previously assigned to one of the extended partition logical drives. Moreover, even adding a new hard drive having only logical drives in an extended partition would still disrupt the letters of RAM disks and optical drives. This problem persisted through Microsoft's DOS-based 9x versions of Windows until they were replaced by versions based on the NT line, which preserves the letters of existing drives until

5925-467: Was reconfigurable as well. Filenames ended with a colon ( : ) such as NUL: conventionally indicate device names, but the colon is not actually a part of the name of the built-in device drivers. Colons are not necessary to be typed in some cases, for example: It is still possible to create files or directories using these reserved device names, such as through direct editing of directory data structures in disk sectors. Such naming, such as starting

6004-543: Was released on 3 September 2006. Made available under the GNU General Public License (GPL), FreeDOS does not require license fees or royalties. Early versions of Microsoft Windows ran on MS-DOS. By the early 1990s, the Windows graphical shell saw heavy use on new DOS systems. In 1995, Windows 95 was bundled as a standalone operating system that did not require a separate DOS license. Windows 95 (and Windows 98 and ME, that followed it) took over as

6083-404: Was targeted at economical systems by allowing the use of an eight-bit data path and eight-bit support and peripheral chips; complex circuit boards were still fairly cumbersome and expensive when it was released. The prefetch queue of the 8088 was shortened to four bytes, from the 8086's six bytes, and the prefetch algorithm was slightly modified to adapt to the narrower bus. These modifications of

6162-415: Was that not all early PCs were 100% IBM PC compatible . DOS was structured such that there was a separation between the system specific device driver code ( IO.SYS ) and the DOS kernel ( MSDOS.SYS ). Microsoft provided an OEM Adaptation Kit (OAK) which allowed OEMs to customize the device driver code to their particular system. By the early 1990s, most PCs adhered to IBM PC standards so Microsoft began selling

6241-518: Was unused and removed in DOS 5.0. DOS also supported Block Devices ("Disk Drive" devices) loaded from CONFIG.SYS that could be used under the DOS file system to support network devices. In DOS, drives are referred to by identifying letters. Standard practice is to reserve "A" and "B" for floppy drives . On systems with only one floppy drive DOS assigns both letters to the drive, prompting the user to swap disks as programs alternate access between them. This facilitates copying from floppy to floppy or having

#113886