GNU Portable Threads
Encyclopedia
GNU
Pth (Portable Threads) is a POSIX
/ANSI
-C
based user-space thread
library for UNIX
platforms which provides priority-based scheduling for multithreading
applications. GNU Pth targets for a high degree of portability.
Pth also provides API
emulation for POSIX threads
for backward compatibility.
GNU Pth uses a M: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 M threads in user-space. Because of this there is no possibility to utilize SMP
as kernel dispatching would be necessary.
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
Pth (Portable Threads) is a POSIX
POSIX
POSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...
/ANSI
Ansi
Ansi is a village in Kaarma Parish, Saare County, on the island of Saaremaa, Estonia....
-C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
based user-space thread
Thread (computer science)
In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. The implementation of threads and processes differs from one operating system to another, but in most cases, a thread is contained inside a process...
library for UNIX
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
platforms which provides priority-based scheduling for multithreading
Thread (computer science)
In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. The implementation of threads and processes differs from one operating system to another, but in most cases, a thread is contained inside a process...
applications. GNU Pth targets for a high degree of portability.
Pth also provides API
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
emulation for POSIX threads
POSIX Threads
POSIX Threads, usually referred to as Pthreads, is a POSIX standard for threads. The standard, POSIX.1c, Threads extensions , defines an API for creating and manipulating threads....
for backward compatibility.
GNU Pth uses a M: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 M threads in user-space. Because of this there is no possibility to utilize SMP
Symmetric multiprocessing
In computing, symmetric multiprocessing involves a multiprocessor computer hardware architecture where two or more identical processors are connected to a single shared main memory and are controlled by a single OS instance. Most common multiprocessor systems today use an SMP architecture...
as kernel dispatching would be necessary.
External links
- Official homepage
- [ftp://ftp.gnu.org/gnu/pth/ Downloads]