Method and apparatus for resource access synchronization
First Claim
Patent Images
1. A resource access control mechanism for a multi-thread computing environment, the mechanism being operable:
- to manage a sequence of one or more mutexes, wherein the sequence of mutexes is associated with a resource; and
when a requesting thread attempts an access to the resource;
to lock a mutex, wherein the locked mutex is allocated to the requesting thread;
to make a determination whether the sequence includes a previous mutex; and
if a result of the determination is positive, to attempt to lock the previous mutex in the sequence, wherein the requesting thread is suspended if the previous mutex is already locked until the previous mutex is unlocked in response to a previous thread finishing access to the resource.
2 Assignments
0 Petitions
Accused Products
Abstract
A resource access control mechanism for a multi-threaded computing environment associates a sequence of one or more mutexes with a resource. When a requesting thread attempts to access the resource, a mutex is locked and allocated to the requesting thread, and if a previous mutex in the sequence is present, an attempt to lock the previous mutex is made. If the previous mutex is already locked, the requesting thread is suspended until the previous mutex is unlocked.
-
Citations
40 Claims
-
1. A resource access control mechanism for a multi-thread computing environment, the mechanism being operable:
-
to manage a sequence of one or more mutexes, wherein the sequence of mutexes is associated with a resource; and when a requesting thread attempts an access to the resource; to lock a mutex, wherein the locked mutex is allocated to the requesting thread; to make a determination whether the sequence includes a previous mutex; and if a result of the determination is positive, to attempt to lock the previous mutex in the sequence, wherein the requesting thread is suspended if the previous mutex is already locked until the previous mutex is unlocked in response to a previous thread finishing access to the resource. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A resource access control program for a multi-thread computing environment, the program comprising program code on a storage medium, which program code is operable to manage a sequence of mutexes, wherein the sequence of mutexes is associated with the resource and is operable to respond to a call from a thread requesting access to a resource by:
-
locking a mutex for the requesting thread, wherein the mutex is allocated to the requesting thread; making a determination whether the sequence includes a previous mutex; and if a result of the determination is positive, attempting to lock the previous mutex in the sequence, wherein the requesting thread is suspended if the previous mutex is already locked, until the previous mutex is unlocked in response to a previous thread finishing access to the resource. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer program product comprising program code on a tangible computer readable storage medium, which program code is operable to manage a sequence of one or more mutexes, wherein the sequence of mutexes is associated with a resource, and the program code is further operable to respond to a call from a thread requesting access to the resource by:
-
locking a mutex for the requesting thread, wherein the mutex is allocated to the requesting thread; making a determination whether the sequence includes a previous mutex; and if a result of the determination is positive, attempting to lock the previous mutex in the sequence, wherein if the previous mutex is already locked, the requesting thread is suspended until the previous mutex is unlocked in response to a previous thread finishing access to the resource. - View Dependent Claims (20, 21)
-
-
22. A computer system, comprising:
-
a processor; a memory storing program instructions for a method for controlling access to a resource for a multi-thread computing environment, wherein upon execution of said program instructions on said processor said method comprises; managing a sequence of one or more mutexes, wherein the sequence of mutexes is associated with the resource; receiving a request from a thread to access the resource;
locking a mutex in the sequence for the requesting thread, wherein the mutex is allocated to the requesting thread;making a determination whether the sequence includes a previous mutex; and if a result of the determination is positive, attempting to lock the previous mutex in the sequence, wherein the requesting thread is suspended if the previous mutex is already locked until the previous mutex is unlocked in response to a previous thread finishing access to the resource. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A method of resource access control for a multi-thread computing environment, the method comprising:
-
managing a sequence of one or more mutexes, wherein the sequence of mutexes is associated with a resource; receiving a request from a thread to access the resource; locking a mutex in the sequence for the requesting thread;
making a determination whether the sequence includes a previous mutex; andif a result of the determination is positive, attempting to lock the previous mutex in the sequence, wherein the requesting thread is suspended if the previous mutex is already locked until the previous mutex is unlocked in response to a previous thread finishing access to the resource. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40)
-
Specification