POSIX threads, based on the IEEE POSIX 1003.1c-1995 (also called the ISO/IEC 9945-1:1996) standard, are most common on Unix and Unix-like systems. POSIX is an acronym for: Portable Operating System Interface for UniX. Much like TRON, POSIX is not a body of computer code that is compiled and run on some processor. Rather, it is a set of standards (IEEE 1003.1): interfaces, design guidelines, software design specifications, defining (for creating) the computer code that will become language interfaces between an OS kernel and its programs, to give compatibility when moving programs between compatible systems. POSIX is made mostly of features from BSD Unix and Unix System V. Much like Open Source software, all POSIX standards are copyrighted (by the Institute of Electrical and Electronics Engineers, Inc., IEEE; new versions have joint copyright by IEEE and Open Group), but available for use by software developers anywhere in the world for free. Thus the OS architecture based on POSIX is an open architecture that invites and welcomes cloning and interoperability.
Related categories 1
The Open Group Base Specifications Issue 6 (IEEE Std 1003.1, 2004 Edition) chapter for threads. Includes manual pages of all POSIX thread functions.
Portable Threads: portable POSIX/ANSI-C library for Unix gives non-preemptive priority-based scheduling for multithreading in programs. All threads run in same address space, each has its own program counter, run time stack, signal mask, errno variable; cooperative scheduling: threads dispatched based on priority, pending events. [Open Source, GPL]
Introduction to Programming Threads
Introduces what threads are, why they are useful and how to program with them using the POSIX 1003.1c thread standard and API bindings for C.
Frequently asked questions about the kernel-level multi-threading library for Linux.
Measuring Lock Contention
A mutex profiler called mutrace that in contrast to valgrind/drd does not virtualize the CPU instruction set, making it a lot faster. In fact, the hooks mutrace relies on to profile mutex operations should only minimally influence application runtime. mutrace is not useful for finding synchronizations bugs, it is solely useful for profiling locks.
Native POSIX Thread Library: NPTL
White paper describes actual implementation of thread library for which requirements are spelled out in a prior document. Many things are different. [PDF]
POSIX Threads Explained, Part 2
How to protect the integrity of shared data structures in threaded code by using mutexes.
POSIX Threads Explained, Part 3
How to use condition variables.
POSIX Threads Programming
Provides an overview of threads programming and the POSIX threads API.
POSIX Threads Tutorial
How to write parallel applications using POSIX threads. By Mark Hays.
Semaphores in Linux
An explanation of semaphores under Linux, including a comparison of System V and POSIX style semaphores. Code examples show how semaphores are used. (May 24, 2007)
An Introduction to POSIX Threads
This article demystifies the POSIX thread interface, providing practical examples of threaded code for consideration. (January 21, 2004)
Native POSIX Thread Library (NPTL) 0.1 Released
Initial performance: 8x Linux Threads, 4x NGPT. [Linux Weekly News] (September 19, 2002)
Multithreaded Programming (pthreads Tutorial)
Dives into the world of threads with a little bit of "theory" first. Examine thread synchronization primitives and how to use POSIX pthreads. Finally, it finishes off with thread performance and a brief overview of multiprocess programming. (August 20, 2002)
Last update:July 22, 2014 at 7:15:07 UTC