Patent ID: 8141089
Filing Date: 2012-03-20
Classification: G06F

Abstract:
1. A method for controlling access to a shared resource in a computer system in which a plurality of processes are concurrently active, comprising the computer-executed steps of: maintaining a state variable designating a time at which access to said shared resource is next available, said time at which access to said shared resource is next available representing the expiration of an interval of a first pre-determined duration since any of said concurrently active processes was last granted access to said shared resource, said first pre-determined duration specifying a time interval assumed to be sufficient for most processes to finish using the shared resource; requesting access to said shared resource by a first process of said plurality of processes, wherein each process of said plurality of processes granted access to said shared resource is granted access for a continuous time interval until the respective process is finished utilizing said shared resource, and wherein, with respect to at least some processes granted access to said shared resource, the respective process is not guaranteed to finish utilization of said shared resource within a respective time interval having said first pre-determined duration and beginning at the time the respective process was granted access to said shared resource; responsive to said requesting access step to said shared resource by said first process of said plurality processes, (a) if the value of said state variable is earlier than a current time, then allowing immediate access by said first process to said shared resource without regard to whether a process previously granted access to said shared resource has finished utilizing said shared resource; and (b) if the value of said state variable is later than said current time, then waiting the time designated by said state variable, and allowing access by said first process to said shared resource at said time designated by said state variable without regard to whether a process previously granted access to said shared resource has finished utilizing said shared resource.