Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What can you respond to someone who asks you:

...And why can't I install a Windows application on my Linux computer?

share|improve this question
up vote 11 down vote accepted

You could use the "human language" as an analogy.

Windows programs talk to Windows OS using the Windows API, the API is like a language.

Linux programs talk to the Linux OS using another language, the Linux API. Linux doesn't "speak" Windows API, Windows doesn't "speak" Linux API.

There are ways to make Linux understand Windows API, like installing Wine as a translator.

share|improve this answer
you beat me to it. Nice answer. – Babu Jul 25 '09 at 17:19

To improve the "human language" analogy a little:

Every time a program needs to display something on the screen (a window, text, picture, menu, button...), read a file from disk, connect to a network, make a sound, do something when a user clicks the mouse or when the user types something, every time a program needs to do that, it must ask the operating system to do it. In fact, talking to the operating system is what a program does most of the time.

Both Windows operating system and Linux operating system can do all of that easily, but since they were created by different people, they both do it in a different way and also the program needs to ask for those services in a different way. The languages that Linux and Windows speak are completely different.

share|improve this answer
+1 for not mentioning "API" – ChrisF Jul 25 '09 at 17:47

How about a car comparison/analogy? All car are the same, but some use Unleaded fuel and some use Diesel fuel. You can't run diesel in an unleaded engine.

share|improve this answer
+1 "It is a car analogy" – TRS-80 Jul 25 '09 at 18:31
"Why can't you run diesel in an unleaded engine?" – Peter Boughton Jul 25 '09 at 18:35
I prefer "Why cant you put a Chevy engine in front of a Toyota transmission?" – dmckee Jul 25 '09 at 19:09
-1 It's a car analogy. – Richard Hoskins Jul 25 '09 at 22:02
What is "gas"? I put petrol in my car. This comment discussion is a good example of why the "human language" analogy is a far more sensible method than trying to use US-centric car terms. – Peter Boughton Jul 29 '09 at 13:05

Well, first of all, there's Wine.

Second, it's (put simply) because the applications use system functions, and each system is different, so they're not compatible.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .