From Wikipedia, the free encyclopedia
Jump to: navigation, search
DOSEMU Running on C:\
Developer(s) DOSEMU Team
Initial release September 1992; 23 years ago (1992-09)[1]
Stable release 1.4.0 / May 5, 2007; 8 years ago (2007-05-05)
Development status Active[citation needed]
Operating system Linux
Type Compatibility layer
License GPL

DOSEMU, alternatively rendered dosemu, is a compatibility layer software package that enables MS-DOS systems, DOS clones such as FreeDOS or DR-DOS, and DOS software to run under Linux on x86-based PCs (IBM PC compatible computers).


It uses a combination of hardware virtualization features and high-level emulation. It is thus able to achieve nearly native speed for 8086-compatible DOS operating systems and applications on x86 compatible processors, and for DPMI applications on x86 compatible processors as well as on x86-64 processors. DOSEMU includes an 8086 processor emulator for use with real-mode applications in x86-64 long mode.

Currently it is only available for x86 and x86-64 Linux systems (Linux 3.15 x86-64 systems cannot enter DPMI by default. This is fixed in 3.16).[2]

DOSEMU is an option for people who need or want to continue to use legacy DOS software, in some cases virtualisation is good enough to drive external hardware such as EPROM programmers connected to the parallel port. According to its manual, "dosemu" is a user-level program which uses certain special features of the Linux kernel and the 80386 processor to run MS-DOS, FreeDOS or DR-DOS in a DOS box. The DOS box, relying on a combination of hardware and software, has these capabilities:

  • Virtualize all input/output and processor control instructions
  • Supports the word size and addressing modes of the iAPX86 processor family's "real mode", while still running within the full protected mode environment
  • Trap all DOS and BIOS system calls and emulate such calls as are necessary for proper operation and good performance
  • Simulate a hardware environment over which DOS programs are accustomed to having control.
  • Provide DOS services through native Linux services; for example, dosemu can provide a virtual hard disk drive which is actually a Linux directory hierarchy.[3]
  • Packet driver API.[4]

See also[edit]


  1. ^
  2. ^ "#751632 dosemu: DPMI fails to initialize on x86_64 with linux 3.15".  140715
  3. ^ "The dosemu HOWTO".  090430
  4. ^ "dosemu v1.3.5 source".  090430 src/dosext/net/net/pktnew.c

External links[edit]