Futex

Un futex (abréviation le " ; " rapide du mutex d'userspace ;) est un outil de base pour réaliser le fermant à clef et établissant des abstractions de verrouillage de plus haut niveau telles que les sémaphores et les mutexes du POSIX sur le Linux . Ils sont apparus la première fois dans la version 2.7 de noyau de développement ; la sémantique a stabilisé en date de la version 2.40, et ils sont présents de la série stable du grain 2.

Futexes ont été créés par le Hubertus Franke (centre de recherches de Thomas J. Watson de d'IBM ), le Matthew Kirkwood , le Ingo Molnár ( Red Hat ) et le Russell rouillé (centre de technologie de Linux d'IBM ).

Un futex se compose d'un morceau de la mémoire (un nombre entier aligné de ) qui peut être mis en commun entre les processus ; il peut être incrémenté et décrémenté par des instructions atomiques de assembleur du , et les processus peuvent attendre la valeur pour devenir positifs. Des opérations de Futex sont faites presque entièrement dans le Userspace ; le grain est seulement impliqué quand un cas contesté exige l'arbitrage. Ceci laisse fermer à clef des primitifs mis en application using des futexes pour être très efficace : puisque la plupart des opérations n'exigent pas l'arbitrage entre les processus, la plupart des opérations peuvent être effectuées sans devoir exécuter l'appel système de d'a (relativement cher) .

Voir également

Synchronisation
le Chercher-et-ajoutent
Le comparent et permutent

.

Random links:Crossett occidental, Arkansas | Indian Defence du Roi | Gary Gulman | Leonid Tsypkin | La plus grande Inde | Futex