Each process (called task) can contain several threads (preemptively scheduled by the kernel) which, in turn, can contain several fibers scheduled cooperatively in user space.
Tasks communicate via HelenOS IPC, which is connection-oriented and asynchronous.