SoLDMG wrote:
I do have one theory, which is to do IPC and tell the server process in question to do something, but I'd rather hear from someone who does know how this works.
That.
Newlib is designed amusing your system is a decent facsimile of a Unix, which is probably bad for a microkernel (it ends up with you needing a "unix server" in order to keep everything in order, which tends to be a big monolithic mess, so you might want to keep that in mind. (On the other hand, if you decide to be less strict about your POSIX compatibility, you can probably get away with it). I'd somewhat biasedly
suggest PDCLib - link in my signature - because it implements just the C standard, not POSIX, and therefore avoids many of the issues of newlib (also, newlib doesn't get you much towards POSIX support anyway because that stuff tends to be very OS dependent), and also because I've looked at the newlib code and it made me scream.
Also, you might find the implementation of the Win32 port of PDCLib interesting, because Windows factors out all of the whole system call/platform layer thing better than most Unixes, which just stuff everything into one big "libc". I'd start
here.