Threads POSIX

Les threads POSIX, souvent appelés pthreads, sont un sous-standard de la norme POSIX décrivant une interface de programmation permettant de gérer des threads. Il s'agit du standard IEEE Std 1003.1c-1995 (POSIX.1c, Threads extensions).

Cette interface est disponible sur la plupart des systèmes Unix modernes, par exemple Linux, les différentes variantes modernes de BSD, Mac OS X et Solaris[1],[2]. Elle n'est pas disponible nativement sous Microsoft Windows mais il existe plusieurs implémentations dont une de Microsoft[3].

Spécification

Le standard définit un ensemble de types de données, de fonctions et de constantes en langage C. Le fichier à inclure dans les sources en C se nomme pthread.h. Une centaine de fonctions sont ainsi définies[4].

La bibliothèque dispose notamment de fonctions permettant la création et la destruction de threads, l'ordonnancement des tâches, leur synchronisation, la gestion des signaux et des données partagées[5].

Notes et références

  1. Daniel Robbins, « POSIX threads explained », IBM developerWorks : « When you want to write portable multithreaded code, code that works under Solaris, FreeBSD, Linux, and more, POSIX threads are the way to go. »
  2. José R.C. Cruz, « Mastering Threads on Mac OS X » : « The POSIX thread library (…) is platform-agnostic, and available on all POSIX-compliant systems such as Linux, BSD, and Mac OS X. »
  3. (en)« Pthread Support in Microsoft Windows Services for UNIX Version 3.5 », Microsoft,
  4. (en)« <pthread.h> », The Open Group
  5. (en)Adrien Lamothe. « An overview of Pthreads with current trends » dans OSCON (O'Reilly Open Source Convention) 2007 .

Bibliographie

  • (en) David R. Butenhof, Programming with POSIX Threads, Reading (Mass.)/Harlow (G. B.)/Menlo Park (Calif.), Addison-Wesley, , 381 p. (ISBN 978-0-201-63392-4 et 0-201-63392-2, lire en ligne)
  • Bradford Nichols, Dick Buttlar, Jacqueline Proulx Farell, Pthreads Programming : A POSIX Standard for Better Multiprocessing, O'Reilly & Associates, , 267 p. (ISBN 978-1-56592-115-3 et 1-56592-115-1, lire en ligne)
  • Charles J. Northrup, Programming with UNIX Threads, John Wiley & Sons, , 399 p. (ISBN 978-0-471-13751-1 et 0-471-13751-0)
  • (en) Kay A. Robbins et Steven Robbins, UNIX Systems Programming : communication, concurrency and threads, Upper Saddle River (N.J.), Prentice-Hall, , 893 p. (ISBN 978-0-13-042411-2 et 0-13-042411-0, lire en ligne)
  • Christophe Blaess, Développement système sous Linux, Paris, Eyrolles, , 1004 p. (ISBN 978-2-212-12881-9, lire en ligne)

Liens externes

  • Portail de l’informatique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.