介绍得很详细。先放上来先,省得以后难找,或者是压根儿上不了。
Source:http://www.raiden.net/?cat=2&aid=394
Written by Steve Lake
Posted on: Mar 26, 2008 at 07:36am
Section: Software
Tags: none | Edit Tags!
Printer Friendly Version
Legacy URL
In my ever ongoing efforts to completely shed all connections to Microsoft Windows and all Windows applications, including 3rd party ones, I’ve been doing a lot of research over time into various methods by which I could make that one final push to completely shed all of those lingering connections. But alas, it’s been much harder than I could have expected. That’s not to say it’s impossible, but there certainly seems to be a lot of things out there bent on NOT letting me make that last step. So it’s less an issue with what I’m doing or not doing, and more a case of forced adherence to a system I’d like to separate myself from.
There’s many reasons why I want to rid myself of this connection. Here are the three biggest that I believe drive this interest.
- Viruses – I may not see many viruses on my system, but then again I’m also very alert to what’s happening and I’m constantly keeping all my defenses and protections up to date and running well in order to fend this off.
- Spyware – I can’t even begin to tell you how much I abhor spyware. Be it intrusive web ads, spyware apps, malware, or any of a variety of other things.
- Proprietary Software – Now not all proprietary software is bad. However, the main platform it runs on and the vast majority of applications written to run on it are. There’s little to no accountability from the OEM (unless it’s forced by the end users, and even then that accountability is weak), and issues are handled on a "money" focused, rather than "end user" focused priority.
That’s why I’m so interested in Open Source software systems, including operating systems (Linux, BSD, etc), end user software (Firefox, Open Office, etc), user interfaces (KDE, Gnome, XFCE, etc) and so much more. The software is open, the developers are accountable to the end users, and the software tends to be more secure and reliable. Those developers who choose not to do the will of the community, unless it’s for the better of the community, tend to be abandoned and left to atrophy while good projects that do keep themselves accountable to the user base succeed.
But enough with this little sermon. If you’re reading this, you likely either already know about this, or have heard enough to know the facts. So I’ll move on to the main focus of this article. Comparing the two major forms of in-system emulation of Windows applications. No matter how hard you try, unless you’ve committed yourself to giving up any and all Windows based applications, you tend to find yourself stuck in a situation where you must emulate at least one of these applications inside of Linux. This is where emulators such as Virtual Box and Wine come in handy to help you bridge that divide.
The best way to understand the pros and cons of doing something like this vs going "cold turkey" on all windows applications is to look at the pros and cons of each of the emulation systems and see if they meet your needs, or if you may have to take more drastic steps such as dual booting or other such measures. Below I’ve created a list of all the pros and cons I’ve come up with for Virtual Box and Wine, the two main emulators out there. I’ve also included a third line for "dual booting" for comparison.
Pros:
Virtual Box
- Full compatibility with the vast majority of Windows applications
- Easy setup
- Native Windows environment, even if it is emulated
- Direct sharing of applications and data between Windows and Linux programs.
- Allows most Windows games to run.
Wine
- No need for a full copy of Windows.
- Integrates seamlessly with window manager in most cases.
- Direct sharing of applications and data between Windows and Linux programs.
- Allows some, mostly older games to run.
- Drive space is shared on the system between the Windows and Linux apps.
Dual Booting
- 100% compatibility of all applications.
Cons:
Virtual Box
- Not all applications work in Virtual Box. Applications and games that refuse to run in a "debug" environment, such as Halo, will not run.
- Consumes a sizable amount of hard drive space.
- Consumes a fair amount of resources under load.
- Requires a copy of Windows plus a valid Microsoft license.
- Emulated OS is still vulnerable to viruses.
- Slow application installs.
- System tends to grind to a halt under normal use.
- "seamless mode" can still get in the way of your regular system. IE, taskbar overrides KDE bar, XP windows overrule Linux windows, etc.
- Games can be slow to unusable.
Wine
- May require a valid Windows license for compatibility and legality issues, even if you don’t need a copy of Windows, depending on what programs you want or need to run and what Microsoft support applications are required to be installed.
- Slow application installs.
- Application hangs are common depending on the application and scripting used to install it.
- Tools for aiding application installation are a bit buggy.
- Requires a fair knowledge of Linux administration to setup and configure for each application.
- Not all applications are supported, or supported correctly. Rarely are newer applications supported.
Dual Booting
- Requires a valid copy of Windows.
- Requires that you reboot to get to your Windows desktop.
- No direct sharing of applications and resources between Windows and Linux programs.
- Takes up additional hard drive space.
- Difficult to make Windows talk to Linux drives properly.
This list is just a summary of some of the pros and cons of using these two different methods for running Windows applications in Linux. Now again, dual booting is not an emulation method to allow Windows applications in Linux, but it does provide a comparison between the two emulation methods, and a natively installed system, even if it is technically dual booting. Now if you’re wanting to run games in Linux, some of what you run into is hit and miss success. Here’s some examples of some common newer games vs older games and how they run in the two emulation systems. This isn’t a complete list by far, but it does provide some comparisons.
Game |
Virtual Box |
Wine |
Halo |
Won’t play at all. Complains about "debug" mode. |
Won’t play at all. Complains about "debug" mode. |
Starcraft |
Runs decently. |
Runs Flawlessly. |
World of Warcraft |
Runs decently. |
Runs well. |
Most C&C games |
Run slowly, but still run. |
Most run well, except newest versions |
Warcraft 3 |
Runs well. |
Runs Flawlessly. |
Medal of Honor (most games) |
Runs decently. |
Runs well. |
Call of Duty (1 and 2) |
Runs slowly. |
Runs decently. |
Call of Duty 4 |
Runs slowly. |
Won’t run. |
Freelancer |
Won’t play at all. Complains about "debug" mode. |
Won’t install. Can’t write to disk. |
Again, this list is just a sampling based on some stuff I had on hand and doesn’t cover all the games I tested, but does provide a sampling that best represents the general experience overall. So it hopefully it gives you an idea of what you’re up against. Overall, I’d say that the games I had the biggest issues with were the Microsoft games. Not surprising really, but disappointing none the less. The ones I had the best luck with were the Blizzard games.
Now on the question of applications, that varied quite a bit, and while some ran well, others were an utter joke. Here’s a sampling of the programs I tested and generally how they came out.
Program Name |
Virtual Box |
Wine |
Internet Explorer 6 |
Runs very good. |
Runs very good. |
Adobe Photoshop (7.0 and earlier) |
Runs flawless, but a bit slow. |
Runs well, and speed is good. |
Adobe Photoshop (CS series) |
Runs decent. |
Good luck getting this to run most of the time. |
Thumbs Plus (most versions) |
Runs Flawlessly. |
Runs Flawlessly. |
DVD Decrypter |
Runs Flawlessly. |
Runs Flawlessly. |
Microsoft Office (2000-2007) |
Won’t run (2007), runs decent (2003), runs good (2000) |
Won’t run (2007), runs good (2003), runs good (2000) |
Winrar |
Runs good. |
Runs Great! |
Again, this is just a sampling of what I tested and they are listed in the most representative manor to relay what I ran into during testing in the best way possible. The "good", "great", "poor", etc ratings count both performance and stability into one rating since stability without performance or vice versa really doesn’t make for a good experience. Both have to be good to get a good rating. Overall though, depending on what you need to do, I feel that from my testing the better choice overall is to use Wine for all your emulation over Virtual Box. Sure, Virtual Box with an emulated copy of Windows XP can give you some flexibility that Wine doesn’t have.
However, given the legal and licensing entanglements, it may be better to use Wine for everything you can, and then just run the rest via a dual boot setup in a native Windows environment until either Wine does everything for you, or you no longer need that application or game anymore. Now I did like Virtual Box and all it offered, but given all the potential licensing entanglements, plus the fact that you’re running a restrictive proprietary OS inside a free and open source operating system, even if it is emulated, it’s still a rather questionable ethical and legal choice.
I hope this has been a helpful overview and if you have any questions, please feel free to ask in the forums. Thanks!