I am totally ignorant of windows programming, but what exactly do you guys mean when you talk about "doing callbacks between processes." In an environment like VxWorks, all processes share the same memory space and it is no sweat invoking any function from any library from anywhere. On the other hand, I wouldn't have the fainest idea how to do this in a standard Linux/Unix environment, without doing something really complicated using shared memory. I assume that this is not just a euphemism for some kind of high level communication mechanism built around socket/pipe/etc connections.