CONCURRENT ACCESS OF SHARED RESOURCES

An apparatus, program product and method to manage access to a shared resource by a plurality of processes in a multithreaded computer via a collection of atomic operations that track both the order in which requests that use a shared resource are received, and the order in which processing of such...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: ARMSTRONG, TROY DAVID, LUCKE, KYLE ALAN
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:An apparatus, program product and method to manage access to a shared resource by a plurality of processes in a multithreaded computer via a collection of atomic operations that track both the order in which requests that use a shared resource are received, and the order in which processing of such requests are completed after they are received. Dispatching of requests is effectively deferred until processing of all non-dispatched requests that were received earlier than a most recently completed request has been completed. In many instances, completion of processing of requests can be performed non-atomically, thus reducing contention issues with respect to the shared resource. Furthermore, dispatching of requests may be batched to reduce the overhead associated with individual dispatch operations. L'invention concerne un appareil, un produit-programme et un procédé pour gérer l'accès à une ressource partagée par une pluralité de processus dans un ordinateur multitâche par le biais d'un ensemble d'opérations atomiques qui suivent à la fois l'ordre dans lequel des demandes utilisant une ressource partagée sont reçues et l'ordre dans lequel les traitements de ces demandes sont terminés après réception desdites demandes. La distribution des demandes est effectivement différée jusqu'à ce que le traitement de toutes les demandes non distribuées qui ont été reçues avant une demande la plus récemment effectuée soit terminé. Dans bien des cas, l'achèvement du traitement des demandes peut être effectué de façon non atomique, ce qui réduit des problèmes de conflit par rapport à la ressource partagée. De plus, la distribution des requêtes peut être effectuée par lots, de façon à réduire la surcharge associée à des opérations de distribution individuelles.