I mentioned several days ago that with a virtualization program like VMware Fusion, "I can happily run any Windows program on a Mac, but things don't work the other way around."

In accord with the timeless principle that the surest way to generate readers' corrections is to state something categorically, it turns out that what I said is not quite true. You can make the Macintosh operating system run on a Windows computer. It's just not easy -- and, according to Apple, it's not legal either. Reader Hal O'Brien explains:

Google the term, "hackintosh." Basically, you get a copy of OS X, apply patches to it, and either a) use as the base system for, say, a netbook, or b) run it in a VMWare window, same as any other OS. Here's a picture of when I did this on my own [which shows Linux, Mac OS X, and Win XP all running on a Dell, with VMware]:
OBrienMacOS.jpg

  

Apple's official position appears to be, it's completely in violation of the license agreement. OTOH, they don't appear to be enforcing claims against violators to date, and they're fairly open about it (see earlier Google search, pointing to some transparent domains). 
And here's a pair of pointers to mildly boggle the mind: here and here.

This is all a consequence of when Apple decided to go to the Intel architecture. As long as they were using Motorola/PowerPC, it just wasn't possible. Rather, clearly one *can* virtualize Motorola/PowerPC on an Intel platform. But it's a lot *easier* when the code is native for Intel, as OS X is these days -- and that's a clear consequence of the chip switch Apple made.

One of the curious upshots is it allows comparisons to the "true" demand for Mac vs PC, by looking at torrent sites and seeing how many downloads are going on. On a major site, the most popular torrent of OS X has ~150 downloaders just now. For Windows 7, it's in the high 600s. Which implies roughly a 20% share of demand. [Versus normal estimates of Mac OS market share being somewhere in mid-single-digit range, eg this or this.]

I don't think I'll ever try this, but in theory it can be done. FWIW.