Prex is a portable 32-bit embedded real-time microkernel operating system. The kernel is compact, under 25k bytes, and provides memory management, inter-process communication (messages and shared memory) and multithreading in the kernel, and leaves more application-specific features like a file system to be implemented. It is designed to have virtual memory and memory protection when available. It is currently pre-beta, but runs on x86 PCs and the Game Boy Advance.
It has a POSIX emulation layer.