DOSEMU
{{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}}{{Cite web|url=https://sourceforge.net/p/dosemu/history/commit_browser|title = DOSEMU for Linux / History / Browse Commits}}
|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}}
}}
{{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).{{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
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.{{cite web|title=The dosemu HOWTO|url=http://dosemu.sourceforge.net/docs/HOWTO/|archive-url=https://archive.today/20121225104014/http://dosemu.sourceforge.net/docs/HOWTO/|url-status=dead|archive-date=2012-12-25}} 090430 dosemu.sourceforge.net
- API-level support for Packet driver,{{cite web|title=dosemu v1.3.5 source|url=http://prdownloads.sourceforge.net/dosemu/dosemu-1.3.5.tgz?download}} 090430 prdownloads.sourceforge.net src/dosext/net/net/pktnew.c IPX, Berkeley sockets (dosnet).{{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{{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}}
See also
{{Portal|Free and open-source software}}
References
{{reflist}}
External links
- {{Official website}}
- [https://dosemu2.github.io/dosemu2/ dosemu2]
{{Virtualization software}}