A multi-process software design increases robustness by isolating errors to a single process, allowing the rest of the system to continue operating. Ach is a new inter-process communication library that is highly efficient – outperforming Linux sockets – and formally verified. It operates either in userspace via POSIX shared memory or as a Linux kernel module, enabling multiplexing via the select()/poll()/epoll() calls.