{{short description|DOS compatibility layer for Linux}} {{multiple issues| {{more footnotes|date=February 2014}} {{primary sources|date=February 2014}} }} {{Infobox software |screenshot = Dosemu.png |caption = DOSEMU Running on C:\ |author = DOSEMU Team |released = {{Start date and age|1992|09|03}}<ref name="3HVzb">{{Cite web|url=https://sourceforge.net/p/dosemu/history/commit_browser|title = DOSEMU for Linux / History / Browse Commits}}</ref> |latest release version = 1.4.0 |latest release date = {{Start date and age|2007|05|05}} |discontinued = yes |operating system = Linux |genre = Compatibility layer |license = GPL |website = {{official url}} |platform = IA-32, x86-64 }}
{{Infobox software | developer = | name = dosemu2 | latest release version = | latest release date = | latest preview version = 2.0pre9 | latest preview date = {{Start date and age|2022|01|29|df=yes}} | website = {{URL|dosemu2.github.io/dosemu2/}} | repo = {{URL|github.com/dosemu2/dosemu2}} }}
'''DOSEMU''', stylized as '''dosemu''', is a compatibility layer software package that enables DOS operating systems (e.g., MS-DOS, DR-DOS, FreeDOS) and application software to run atop Linux on x86-based PCs (IBM PC compatible computers).
== Features == It uses a combination of hardware-assisted virtualization features and high-level emulation. It can thus achieve nearly native speed for 8086-compatible DOS operating systems and applications on x86 compatible processors, and for DOS Protected Mode Interface (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.
DOSEMU 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).<ref name="bugs_debian_org">{{cite web|title= #751632 dosemu: DPMI fails to initialize on x86_64 with linux 3.15|url=https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=751632}} 140715 bugs.debian.org</ref>
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 device 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 DOS in a DOS box. The DOS box, relying on a combination of hardware and software, has these abilities: * 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 needed 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.<ref name="dosemu_sourceforge_net">{{cite web | title = The dosemu HOWTO | url = https://dosemu.sourceforge.net/docs/HOWTO/ | url-status = live | access-date = 2026-03-23 | archive-date = 2026-03-23 | archive-url = https://web.archive.org/web/20260323002746/https://dosemu.sourceforge.net/docs/HOWTO/ }} 090430 dosemu.sourceforge.net</ref> * API-level support for Packet driver,<ref name="sourceforge_net-dosemu-135_tgz">{{cite web|title=dosemu v1.3.5 source|url=https://prdownloads.sourceforge.net/dosemu/dosemu-1.3.5.tgz?download}} 090430 prdownloads.sourceforge.net src/dosext/net/net/pktnew.c</ref> IPX, Berkeley sockets (dosnet).<ref name="sourceforge_dosemu140">{{cite web|title=dosemu v1.4.0 source |date=2007-05-05 |access-date=2016-04-06 |url=http://prdownloads.sourceforge.net/dosemu/dosemu-1.4.0.tgz?download}} src/dosext/net/net/ipx.c src/dosext/net/v-net/dosnet.c</ref><ref name="dosemu_announce140">{{cite web|title=The DOSEMU team is proud to announce DOSEMU 1.4.0 |date=2007-05-05 |access-date=2016-04-06 |url=http://dosemu.org/stable/announce |quote=NetWare and other network connectivity via built-in IPX and pktdrvr support /../ the dosemu-freedos binary package starts a DOS-"C:\>"-Drive 'out-of-the-box' in a normal user's $HOME directory and runs without any further configuration (no root rights needed) |url-status=unfit |archive-url=https://web.archive.org/web/20160315163935/http://dosemu.org/stable/announce |archive-date=March 15, 2016}}</ref>
== See also == {{Portal|Free and open-source software}} * Comparison of platform virtualization software * Virtual DOS machine * DOSBox * Wine * FreeDOS
==References== {{reflist}}
==External links== * {{Official website}} * [https://dosemu2.github.io/dosemu2/ dosemu2]
{{Virtualization software}}
Category:1992 software Category:DOS emulators Category:Compatibility layers Category:Linux emulation software