I was reading 'man wineserver' the other day and noticed that it says something about programs running under the same $WINEPREFIX have access to the same shared memory, Windows registry, and kernel objects. The wineserver ( http://wiki.jswindle.com/index.php/Wineserver ) starts up when a Windows program starts, providing basic Windows services like, oh I don't know, process and memory management, junk like that. The executable Windows app runs natively, on the host CPU, so there is no emulation layer, but when it makes a call to basically say something like system("some command"); the command is processed by the linked in msvcrt.dll which then translates that system call to the Linux libc, running the command on the virtual wine "environment" which isn't so much an environment as a lightweight server / client relationship. I guess if you were to diagram it, as Thunderbird's comment made me think, you would wind up with something that looks like the Windows directory, with a bunch of penguins holding smiling burgundy colored sock puppets representing each Windows DLL... :)