The systems and methods manage concurrent access requests to a shared
resource. The systems and methods utilize an access management algorithm
that permits multiple processes to concurrently obtain shared locks on
the shared resource, but also limits access to only one process when an
exclusive lock is granted. In doing so, the systems and methods avoid the
problems of starvation and deadlock.