There are two implementations of threading in FreeBSD. The M:N library divides the work between kernel space and userspace. Thread is an entity that gets scheduled in the kernel but it can represent various number of userspace threads. M userspace threads get mapped to N kernel threads thus saving resources while keeping the ability to exploit multiprocessor parallelism.
Useful link: https://www.freebsd.org/doc/en_US.ISO8859-1/articles/linux-emulation/inside.html
Its called a Unix like system
Most portable OS
Due to C based implementation
Due to its design
The distributions from Berkeley were the first UNIX-based systems to introduce many important features including the following:
Demand-paged virtual-memory support
Automatic configuration of the hardware and I/O system
A fast and recoverable filesystem
The socket-based interprocess-communication (IPC) primitives • The reference implementation of TCP/IP
https://en.wikipedia.org/wiki/Marshall_Kirk_McKusick