Now, I am about to start a project emulating embedded hardware on Windows. Been there, doing #ifdef WIN32 and #ifdef LINUX stuff, don't really want to go there any more. What I actually need is a platform independent lib covering Windows and Linux variants to handle sockets, IPC and threads abstractions. And a rock solid but simple embedded database to emulate flash memory.
My reflex said, go for ACE (http://www.cs.wustl.edu/~schmidt/ACE-overview.html) and Berkley-DB (http://www.oracle.com/technology/products/berkeley-db/index.html).
Tell me, am I out of time? Am I missing something new and trendy, easier to use and better? Did time stand still?"