Running MS-DOS and Windows Applications on Linux

When you are running Windows mainly for its ability to support a specific peripheral or hardware device, the best approach is usually to set up a dual-boot system or run Windows on a separate computer, to allow it direct access to hardware resources. But when your objective is to run Windows software, the ideal solution would be to have the applications run happily on Linux, without requiring you to reboot into Windows or move to another computer.

A number of attempts have been made by different groups of developers, both Open Source and commercial, to achieve this goal. The simplest is Dosemu (http://www.dosemu.org), which emulates PC hardware well enough for MS-DOS (or compatible system such as PC-DOS or DR-DOS) to run. It is still necessary to install DOS in the emulator, but since DOS is actually running inside the emulator, good application compatibility is assured. To a limited extent, it is even possible to run Windows 3.1.

Wine (http://www.winehq.com) is a more ambitious project, with the goal of reimplementing Microsoft’s Win32 API, to allow Windows applications to run directly on Linux without the overhead of an emulator. This means you don’t have to have a copy of Windows to run Windows applications. However, while the Wine development team has made amazing progress, considering the difficulty of their task, the number of applications that will run under Wine is very limited.

Another Open Source project is Bochs (http://bochs.sf.net ...

Get Running Linux, Fourth Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.