Tuesday, July 15 2008, 10:27
Emulation vs Virtualization, the duel
We can argue for hours about the pros and cons of emulation and virtualization, but in the end, nothing can replace a real benchmark. Thus, I tried to run Lands of Lore on Windows Vista using both DOSBox and Virtual PC...
Not as identical as it seems…
DOSBox is an open-source (GPL license) emulator that you can download freely on the official website. A full-featured setup is available, and it takes only a couple of minutes to have the emulator operational on your machine. Once it is installed, running it is not difficult either. The only tricky thing is that no hard drive or CD-ROM device is mounted by default, but this is only a matter of a couple of command lines:
- mount C:\ D:\DOS where C is the virtual drive in DOSBox and D the physical drive in Windows
- mount D:\ E:\ -t cdrom where D is the virtual CD-ROM drive in DOSBox and E the physical CD-ROM drive in Windows (which may be itself a virtual drive thanks to a program like Daemon Tools)
A good old DOS shell
After these quite simple steps, you can use the DOSBox shell to enter your commands in the same way as the usual MS-DOS shell: installing the game from the CD-ROM, running the game from the hard drive. Overall, it takes about 5 minutes to download, install, configure and run the emulator. And on top of that, the game runs perfectly, with digitized sounds (which were a nightmare at MS-DOS time). Bravo!
Virtual PC is a virtualization freeware edited by Microsoft, which you can download directly on the editor’s website. Of course, a nice setup is provided, and a few minutes later, you can run the administration console. Note that the program is not officially supported under Vista Home Edition, with a warning popup at setup time, but it ran nevertheless perfectly on my machine.
From the administration console, you can create new virtual machines, or import existing ones. The creation of a new machine is straightforward: you choose a few parameters (memory quantity, hard drive size, etc), and then you can run the machine. Easy. At first, the machine is completely empty, and you have to install an operating system. I chose Windows 98 for this experiment, mostly to get rid of base memory problems underlined in my previous post. The OS setup is also straightforward, but overall, before getting a full control of the computer, it takes at least 30 minutes.
Windows 98, My Computer and MS-DOS prompt
(caption: Windows 98, My Computer and MS-DOS prompt)
After that, your hard drive is obviously present, and contrary to DOSBox, the CD-ROM drive is detected automatically and shared between the virtual machine and your physical one. Then, you simply have to install the game as usual. The game execution is quite good, but surprisingly, I experienced some lags that were not present using DOSBox. Even more surprising, these lags disappeared as long as I… moved the mouse!
And the winner is…
The only goal of this experiment was to run Lands of Lore on my recent computer (and confirm the expectations of the previous post). For this specific task, DOSBox is a must-have. It takes only a few minutes to have your game running perfectly (as long as it is in the official compatibility list, which was the case here). On the other hand, it took me quite more time to reach a not as good result with Virtual PC.
However, let's not forget that using Virtual PC to run an old DOS game is like running a nuclear power plant at full speed just to power a light bulb. Among the numerous possibilities of virtualization, which are simply impossible to expect from emulation:
- Running four full environments at the same time on the same machine.
- Making a virtual image of a physical operating system and running it as a virtual machine on another computer.
- Running a virtual machine inside another virtual machine.
And virtualization can only grow bigger and bigger, as it is a cheap yet efficient solution for many compatibility issues. So, what about a shadow XP virtual machine running natively on Windows Seven for our good old legacy applications?
Virtualization, the nuclear power plant of compatibility