Patents Examined by Lilian Vo
  • Patent number: 7051329
    Abstract: The present invention provides a method and apparatus for managing resources in a multithreaded processor. In one embodiment, a resource is partitioned into a number of portions based upon a number of threads being executed concurrently. Resource allocation for each thread is performed in its respective portion of the resource.
    Type: Grant
    Filed: December 28, 1999
    Date of Patent: May 23, 2006
    Assignee: Intel Corporation
    Inventors: Darrell D. Boggs, Shlomit Weiss
  • Patent number: 7043731
    Abstract: Object distribution systems and methods for controlling load distribution during access to objects resident on a plurality of computers attached to a communication network. Systems comprise client and server computers attached to a communication network. Client programs are resident on the client computer and objects are resident on the servers. Various objects are grouped together with other objects that perform similar functions into an object group. The methods involve receiving a request for a function performed by objects within the object group, using a distributor to select between the various objects within the object group, and providing a reference to the selected object to the client program.
    Type: Grant
    Filed: July 12, 2001
    Date of Patent: May 9, 2006
    Assignee: Qwest Communications International, Inc.
    Inventor: Suresh Ramaswamy
  • Patent number: 7036123
    Abstract: Described is a scheduling system that provides allocation of system resources of one or more processor sets among groups of processes. Each of the process groups is assigned a fixed number of shares, which is the number that is used to allocate system resources among processes of various process groups within a given processor set. The described fair share scheduler considers each processor set to be a separate virtual computer. Different process sets do not share processes, a particular process must execute on a single processor set. In another embodiment of the invention, each process group could be given a separate number of shares for each processor set. Percentage of the resources of the specific processor set allocated to processes of a process group is calculated as a ratio of the shares of the process group on the processor set to the total number of shares of active process groups operating in that set.
    Type: Grant
    Filed: April 25, 2001
    Date of Patent: April 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Andrei V. Dorofeev, Andrew G. Tucker
  • Patent number: 7032222
    Abstract: A method for flexible allocation of a resource in which a soft limit and a hard limit are assigned to each of a set of potential users of the resource. The soft limits are selected to guarantee access to the resource by all of the potential users. The hard limits are selected to enable each potential user to exceed the corresponding soft limit on a first-come-first-served basis. A request from a user for allocation of a portion of the resource is handled by granting the request if the request if allowed would not exceed soft limit assigned to the user. The request is denied if the request if allowed would exceed the hard limit assigned to the user. To avoid overtaxing the capacity of the resource, the request is denied even when the hard limit of the user is not exceeded if the request if allowed would cause a total allocation of the resource to exceed a high watermark assigned to the resource.
    Type: Grant
    Filed: October 13, 2000
    Date of Patent: April 18, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Alan H. Karp, Thomas Rokicki
  • Patent number: 7028300
    Abstract: A system and method for managing the allocation of resources and locks to client computer systems. The system and method provides server-side control features related to resource requests for locked resources, such as establishing an expected lifetime property so that the sever may notify requesting clients as to the expected lifetime of a lock to improve client-side polling methods. The system and method relates to blocking a resource or otherwise maintaining subscriptions to lock-related events to effectively allow for asynchronous grants of a lock based on the time of the request to alleviate lock starvation. Another feature relates to a server-side lock function of breaking an existing lock or at least modifying/reducing a lock timeout period to prevent lost resources.
    Type: Grant
    Filed: November 13, 2001
    Date of Patent: April 11, 2006
    Assignee: Microsoft Corporation
    Inventor: Jonathan S. Goldick
  • Patent number: 7028298
    Abstract: Disclosed is a method for managing resource usage of a particular resource by a set of related code, such as code executed on behalf of a downloaded applet. A resource indicator is associated with the related code, and the resource indicator indicates an amount of resource usage of the particular resource by the related code. The resource indicator is updated when the related code increases or decreases its collective resource usage of the particular resource.
    Type: Grant
    Filed: September 10, 1999
    Date of Patent: April 11, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: William F. Foote
  • Patent number: 7020880
    Abstract: An interchange server for coupling with a plurality of connectors comprises an application collaboration module for defining the generic portion of the inter-operability function. The application collaboration module comprises a transaction service responsive to a trigger for initiating the inter-operability function and being activated upon receipt of data from one or more connectors. The trigger and the transaction deliver data to one or more connectors for transfer to an associated application whereby the inter-operability function is realized while each application is executing independently in an unmodified state. The connectors are configured for communicating with a like plurality of applications.
    Type: Grant
    Filed: December 16, 2002
    Date of Patent: March 28, 2006
    Assignee: International Business Machines Corporation
    Inventors: Katrina A. Mellen-Garnett, Prashant Gupta
  • Patent number: 7020878
    Abstract: One embodiment of the present invention provides a resource scheduler for allocating a computer system resource, such as memory or mass storage, within a processor, to database management system (DBMS) processes. The resource scheduler operates according to resource plans and resource allocation methods. One or more plans may be configured and loaded with the DBMS. Each plan allocates the resource according to an associated resource allocation method. During operation of the DBMS, any or all of the active plans and resource allocation methods may be exchanged for alternate plans or resource allocation methods. In one embodiment of the invention the resource scheduler enforces a maximum active sessions resource allocation method in which system resources are allocated by limiting the number of active sessions allowed in groups of database processes grouped according to common execution requirements. A selected plan includes multiple process groups and/or sub-plans.
    Type: Grant
    Filed: September 27, 2001
    Date of Patent: March 28, 2006
    Assignee: Oracle International Corporation
    Inventors: Ann Rhee, Sumanta Chatterjee, Juan Loaiza
  • Patent number: 7020677
    Abstract: The present invention relates to a process for assisting in the administration of a distributed application of a transaction processing manager based on a binary configuration file (TUXCONFIG), characterized in that said process comprises: decompiling the active configuration file of the master machine (Mm), retrieving information from the decompiled configuration file of the master machine, and checking the consistency of said application running on said given machine. Information related to at least one listener module is displayed and includes at least the name of the application, the logical name of the machine (LMID) on which the application is run, the identification of the user (UID) of said application, the address used by the listener module (NLSADDR), the access path to the network of the application, and the access path to a log file of said listener module (LLFPN).
    Type: Grant
    Filed: December 28, 1998
    Date of Patent: March 28, 2006
    Assignee: Bull, S.A.
    Inventors: Christian Baillif, Mama Saidou Dia
  • Patent number: 7016934
    Abstract: A mobile agent mediates cooperation among schedulers by executing a cooperation protocol. For heuristics such as strategies and the order in which variables are decided, which are used as criteria of selecting the value of a variable from candidates, when the heuristics are to be built into a solving method of a constraint satisfaction problem, processes with regard to these heuristics are so substantially localized as to be capable of parallel execution. These processes capable of parallel execution, as autonomous operations of different mobile agents, can be under modeling in natural form, resulting in easy installation. This facilitates software construction for reflecting the heuristics in a solving method of a constraint satisfaction problem, as well as improves the maintainability and extendibility of software.
    Type: Grant
    Filed: January 13, 2003
    Date of Patent: March 21, 2006
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Takahiro Kawamura, Yasuyuki Tahara, Naoki Kase, Tetsuo Hasegawa, Akihiko Ohsuga
  • Patent number: 7017156
    Abstract: Access to computer system resources is regulated by computing an estimated execution time for an operation which seeks to use the resources. Once computed, the estimated execution time is used to make decisions about granting the operation access to the computer system resources. Operations which have an estimated execution time greater than a user-supplied maximum estimated execution time allowable for the operation are denied access to the computer system resources. Operations which are denied access are rescheduled for later operation, queued, or aborted.
    Type: Grant
    Filed: September 27, 2001
    Date of Patent: March 21, 2006
    Assignee: Oracle International Corporation
    Inventors: Ann Rhee, Sumanta Chatterjee, Juan Loaiza
  • Patent number: 7013455
    Abstract: A method, system, and apparatus for correcting a path sequence of an environment variable in a data processing system is provided. In one embodiment, an environment variable manager monitors the data processing system for any change effecting any of the environment variables within the data processing system. If a change effecting the environment variable is detected, the environment variable manager modifies the environment variable to ensure that a proper file is found and used when the file is selected by a user or a running application program. Therefore, when duplicate files exist on the data processing system, the environment variable manager ensures that the incorrect file is not used when the file is requested by a user or a running application program.
    Type: Grant
    Filed: October 19, 2000
    Date of Patent: March 14, 2006
    Assignee: International Business Machines Corporation
    Inventors: William Hsiao-Yu Ku, Joey Allen Perry, John Shih-Yuan Wang
  • Patent number: 7010788
    Abstract: A static schedule is selected from a set of static schedules for an application dependent on the state of the application. A scheduling system stores a set of pre-defined static schedules for each state of the application. A scheduling system learns the costs of predefined schedules for each state of the application on-line as the application executes. Upon the detection of a state change in the application during run-time, the scheduling system selects a new static schedule for the application. The new static schedule is determined based on schedule costs and exploration criteria.
    Type: Grant
    Filed: May 19, 2000
    Date of Patent: March 7, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: James M. Rehg, Kathleen Knobe
  • Patent number: 7007275
    Abstract: Heterogeneous data at a plurality of remote nodes is accessed automatically in parallel at high speed from a user site using a simple script request containing a data source object name wherein the heterogeneous data is treated as a single data source object, the script further containing at least one method to be performed on the data source object and at least a second method to be automatically performed on the results of executing the first method. A user site agent breaks the user-generated script into new scripts appropriate for execution at the remote nodes and determines whether the second method should be executed at the remote nodes or at the user site. A messenger process transmits the new scripts to the appropriate remote nodes where respective agent processes respond to automatically access the appropriate data and to automatically execute the specified methods.
    Type: Grant
    Filed: October 21, 1999
    Date of Patent: February 28, 2006
    Assignee: Unisys Corporation
    Inventors: Charles Albin Hanson, Thomas Winston Johnson, Carol Jean O'Hara, Koon-yui Poon, Roger Anthony Redding
  • Patent number: 7000232
    Abstract: The present invention provides providing predictable scheduling of programs using repeating precomputed schedules on discretely scheduled and/or multiprocessor operating systems. In one embodiment, a scheduler accesses an activity scheduling graph. The activity scheduling graph is comprised of nodes each representing a recurring execution interval, and has one root, one or more leaves, and at least one path from the root to each leaf. Each node is on at least one path from the root to a leaf, and the number of times the execution interval represented by each node occurs during the traversal of the graph is equal to the number of paths from the root to a leaf that the node is on. Each node has associated with it an execution interval length, and is adapted to being dedicated to executing the threads of a single activity. There may be one scheduling graph for each processor, or a scheduling graph may traverse multiple processors.
    Type: Grant
    Filed: May 17, 2004
    Date of Patent: February 14, 2006
    Assignee: Microsoft Corporation
    Inventors: Michael B. Jones, John Regehr
  • Patent number: 6993767
    Abstract: An apparatus and methods for periodic load balancing in a multiple run queue system are provided. The apparatus includes a controller, memory, initial load balancing device, idle load balancing device, periodic load balancing device, and starvation load balancing device. The apparatus performs initial load balancing, idle load balancing, periodic load balancing and starvation load balancing to ensure that the workloads for the processors of the system are optimally balanced.
    Type: Grant
    Filed: May 30, 2003
    Date of Patent: January 31, 2006
    Assignee: International Business Machines Corporation
    Inventors: Larry Bert Brenner, Luke Matthew Browning
  • Patent number: 6986140
    Abstract: An apparatus and methods for periodic load balancing in a multiple run queue system are provided. The apparatus includes a controller, memory, initial load balancing device, idle load balancing device, periodic load balancing device, and starvation load balancing device. The apparatus performs initial load balancing, idle load balancing, periodic load balancing and starvation load balancing to ensure that the workloads for the processors of the system are optimally balanced.
    Type: Grant
    Filed: May 30, 2003
    Date of Patent: January 10, 2006
    Assignee: International Business Machines Corporation
    Inventors: Larry Bert Brenner, Luke Matthew Browning
  • Patent number: 6983461
    Abstract: The invention relates to a method of operating a computer system supporting multiple processes, and the intention is to avoid deadlock (an example of which is where process A owns resource A, and is waiting on resource B, but resource B is currently owned by process B, which is waiting on resource A). The method commences with receipt of a request from a first process for access to a resource of said computer system. If the requested resource is currently unavailable because it is currently owned by another process, the system examines which processes own or are waiting for other resources on the system, in order to try to detect whether adding the first process to a queue for the requested resource would cause a deadlock situation to arise. If so, the system will typically throw an exception, or possibly return an error to the request for the resource.
    Type: Grant
    Filed: February 7, 2002
    Date of Patent: January 3, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gordon Douglas Hutchison, Brian David Peacock
  • Patent number: 6981260
    Abstract: Apparatus and methods are provided for selecting a thread to dispatch in a multiple processor system having a global run queue associated with each multiple processor node and having a local run queue associated with each processor. If the global run queue and the local run queue associated with the processor performing the dispatch are both not empty, then the highest priority queue is selected for dispatch, as determined by examining the queues without obtaining a lock. If one of the two queues is empty and the other queue is not empty, then the non-empty queue is selected for dispatch. If the global queue is selected for dispatch but a lock on the global queue cannot be obtained immediately, then the local queue is selected for dispatch. If both queues are empty, then an idle load balancing operation is performed. Local run queues for other processors at the same node are examining without obtaining a lock.
    Type: Grant
    Filed: June 5, 2003
    Date of Patent: December 27, 2005
    Assignee: International Business Machines Corporation
    Inventors: Larry Bert Brenner, Luke Mathew Browning
  • Patent number: 6981256
    Abstract: Methods and apparatus for enabling collaboration with web pages and other resources is described. A method includes the step of establishing a collaboration session between a first client and a second client. A requested resource is cached with the session host in response to a request having a first uniform resource locator (URL) issued by the first client, if the requested resource is a pre-determined type of resource. A second URL is provided to the second client. The second URL identifies the requested resource or the cached resource in accordance with whether the requested resource is cached. Apparatus for enabling collaboration includes a web server, a cache, and a filter. The web server provides a requested web page in response to a first client's request. The filter stores the requested web page in the cache, if the requested web page is a pre-determined type of web page. A number of pre-determined characteristics for caching are described in various embodiments of the methods and apparatus.
    Type: Grant
    Filed: September 10, 2001
    Date of Patent: December 27, 2005
    Assignee: Aspect Software, Inc.
    Inventors: Janardhanan Jawahar, Venkatachari Dilip