×

Priority resource allocation in programming environments

  • US 20010034753A1
  • Filed: 03/12/2001
  • Published: 10/25/2001
  • Est. Priority Date: 03/23/2000
  • Status: Active Grant
First Claim
Patent Images

1. (Rewritten) A language extension to an object oriented programming language for the allocation of resource objects to users, the language extension comprising[,];

  • a resource pool for storing available resource objects[,];

    a resource queue for storing data representing select ones of the users, the users on the resource queue seeking the allocation of the resource objects[,];

    a release resource [method] system for releasing a concluded resource object after use by a user, [the release resource method] comprising;

    means for returning the concluded resource object to the resource pool[,]; and

    means for, when the resource queue is empty, using an object oriented programming language notify method to notify the users waiting on a synchronization object that the concluded resource object is available[,];

    an acquire resource [method] system for an acquiring user to acquire [a] at least one of the resource objects, [the acquire resource method] comprising;

    means for [the acquire resource method to return a] returning at least one of the resource objects in the resource pool if the resource pool is not empty and there are no users on the resource queue[,];

    [means for, where] when the resource pool is empty or the resource queue is non-empty[,];

    means for adding the acquiring user to the resource queue[,] ;

    means for having the acquiring user wait for notification by using the object oriented programming language wait method on the synchronized object[,];

    means for awakening the acquiring user when there is a resource object in the resource pool[,];

    means for determining if the acquiring user is at the head of the resource queue, and if the acquiring user is at the head of the resource queue[,];

    means for removing the acquiring user from the resource queue[,];

    means for removing [a] at least one of the resource objects from the resource pool; and

    means for returning said at least one of the resource objects to the acquiring user, otherwise, continuing to have the acquiring user wait for notification by using the object oriented programming language wait method on the synchronized object[,]; and

    means for the acquire resource [method] system to return a time out exception if the acquiring user does not acquire [a] said at least one of the resource objects within a predefined time[,]; and

    [each of the release resource method and the acquire resource method comprising] synchronization means to constrain users such that only one user may execute either the release resource [method] system or the acquire resource [method] system at any one time, [the] said synchronization means being synchronized on the synchronization object.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×