GNU Portable Threads

GNU Pth (Portable Threads) is a POSIX/ANSI-C based user space thread library for UNIX platforms that provides priority-based scheduling for multithreading applications.

GNU Pth targets for a high degree of portability.

[1] Pth also provides API emulation for POSIX threads for backward compatibility.

GNU Pth uses an N:1 mapping to kernel-space threads, i.e., the scheduling is done completely by the GNU Pth library and the kernel itself is not aware of the N threads in user-space.

Because of this there is no possibility to utilize SMP as kernel dispatching would be necessary.