HelenOS is based on a microkernel design. It is fully preemptible. It provides all the facilities expected of a modern kernel, including multitasking, multithreading, and symmetric multiprocessing, but is small and easy to expand. Particular features of HelenOS are: lightweight IPC, thread-local storage, and user-space managed fibrils.