Patent ID: 8893128

Claim:
A process comprising: configuring a processor to monitor allocations and deallocations of a first processor resource and a second processor resource, wherein monitoring the allocations and the deallocations of the first processor resource and the second processor resource comprises: tracking requests to allocate or deallocate the first processor resource and the second processor resource; for a requested allocation or deallocation of the first processor resource, incrementing a count of a first processor resource counter up or down with an increment reflecting an extent of the respective allocation or deallocation of the first processor resource, the first processor resource counter configured to indicate negative values when the extent of the requested deallocation is larger than the existing count of the first processor resource counter before the deallocation; determining, after incrementing the count of the first processor resource counter up or down, whether the absolute value of the count of the first processor resource counter meets or exceeds a first processor resource counter threshold; upon determining that the absolute value of the count of the first processor resource counter meets or exceeds the first processor resource counter threshold, updating a count of a second counter up or down with an increment reflecting the value of the first processor resource counter count and resetting the count of the first processor resource counter; before finalizing an additional request to allocate the first or the second processor resource, comparing the value of the second counter after updating the count of the second counter with an increment reflecting the value of the first processor resource counter count with a predefined limit to determine whether a predefined criteria can be satisfied if the additional requested allocation of the first or second processor resource is granted; and upon determining that a difference between the first resource counter threshold and a second threshold exceeds a predetermined value, updating the first resource counter threshold with a revised first resource counter threshold for use in subsequent monitoring.