WINE : Myths and Facts

You might have heard a lot of “WINE is a software which lets you play windows games on Linux”, or “WINE is an emulator which lets you run windows games on Linux” and so on…

Linux Wine
Linux Wine

Well, to some extent, they might all be correct and for some reasons wrong altogether.

WINE is an emulator, but actually it is not.

I like the contradiction in that. Considering the layman’s English, by the definition of emulator’, WINE can be called an emulator as it does work pretty much like an emulator running windows applications on a platform which has no support for native Microsoft Windows API, maybe like a software emulator. But, in Computer Science, we have a better definition of emulators with clearly defined premises and WINE does not fall under that. WINE is not a software which can emulate the windows environment as a whole. All it does is translate the native windows system calls to a Linux recognizable call. WINE does not create a new virtual x86 environment for use of windows applications, which is pretty much what VMware does.

WINE is slow, because it can be fast.

WINE is slow if you are trying to run a software which makes too many system calls, there are many more translations, and you are running WINE at full potential+ the software. That is slow. If you run a software with no system calls, it runs equally fast on Windows and on WINE, no more, no less.

WINE lacks many API’s, so Windows applications on it will never look good.

Wine has all the base API’s required for most of the applications. A missing API, if any, is one which is used in much smaller fractions in UI development. WINE can currently support over 90% of all calls from Windows API. That is a huge number for an API which runs it’s own version of the closed source DirectX API.

WINE can never be equal the development of windows APIs.

WINE has an easy way of adding new APIs of DLLs. Also, some windows softwares which support backporting of APIs can run easily on WINE with very slightly reduced functionality.

I would rather use VMware or VirtualBox.

Well, you can but you’ve got to pay for it, both in cash and system performance. Even Sun VirtualBox is slow enough. WINE is not as slow as these because, they emulate a whole new processor for use with the guest OS, WINE does not do that. It only emulates the system calls and the API.

Use WINE. IT supports a wide list of windows applications. It is an excellent piece of software for people translating over to Linux from Windows.

Published by

Chinmoy Kanjilal

Chinmoy Kanjilal is a FOSS enthusiast and evangelist. He is passionate about Android. Security exploits turn him on and he loves to tinker with computer networks. You can connect with him on Twitter @ckandroid.