Patents Examined by Willy W Huaracha
  • Patent number: 8006245
    Abstract: A system and method are provided for state management and workflow control. The system includes a metadata based state management system that can be used as a workflow control system. The system enables business rules to be separated from application logic, thus allowing businesses to easily change rules and adapt and respond to competition without requiring code changes. The system preferably includes database tables that interface with procedure calls in order to manage transactions in accordance with business rules. The business rules may include action permission rules that determine if a user is in a required state before allowing a selected action. A second set of rules determines an updated user state based on user actions.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: August 23, 2011
    Assignee: Microsoft Corporation
    Inventor: Nitin Chandel
  • Patent number: 7975269
    Abstract: Methods and apparatus for parallel processors are disclosed. A policy module is loaded from a main memory of a processor into the local memory of a selected secondary processing element under control of a policy module manager running on the secondary processing element. A selected one or more work queues are assigned from a main memory to a selected one or more of the secondary processing elements according to a hierarchy of precedence. A policy module for the selected one or more work queues is loaded to the selected one or more secondary processing elements. The policy module interprets the selected one or more of the selected one or more work queues. Under control of the policy module, work from one or more of the selected one or more work queues is loaded into the local memory of the selected secondary processing element. The work is performed with the selected secondary processing element.
    Type: Grant
    Filed: July 31, 2006
    Date of Patent: July 5, 2011
    Assignee: Sony Computer Entertainment Inc.
    Inventors: John P. Bates, Keisuke Inoue, Mark E. Cerny
  • Patent number: 7856636
    Abstract: Systems and methods of sharing processing resources in a multi-threading environment are disclosed. An exemplary method may include allocating a lock value for a resource lock, the lock value corresponding to a state of the resource lock. A first thread may yield at least a portion of the processing resources for another thread. The resource lock may be acquired for the first thread if the lock value indicates the resource lock is available.
    Type: Grant
    Filed: May 10, 2005
    Date of Patent: December 21, 2010
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Rohit Bhatia, Don C. Soltis, Jr.
  • Patent number: 7853947
    Abstract: A method for virtualizing access to named system objects includes the step of receiving a request to access a system object from a process executing in the context of a user isolation scope, the request including a virtual name for the system object. A rule associated with the request is determined and a literal name for the system object is formed in response to the determined rule. A request to access the system object is issued to the operating system. The issued request including the literal name for the system object.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: December 14, 2010
    Assignee: Citrix Systems, Inc.
    Inventors: Lee George Laborczfalvi, Anil Roychoudhry, Andrew Gerard Borzycki, Jeffrey Dale Muir, Huai Chiun Chin, Richard James Mazzaferri
  • Patent number: 7836449
    Abstract: A task infrastructure that allows for the decoupling of the task launch code from the task client code and from the task execution code is provided. The task infrastructure allows the relationship between the task display and launch logic and the task client logic to be defined in a declarative manner, allowing for the segregation of the task display and launch logic from the task client logic. The task infrastructure comprises a manifest that contains a specification of the relationship between the task display and launch logic and the task client logic. The manifest may also define which task clients expose which tasks, the context under which each task is displayed, the arguments that the task needs in order to start execution, the task description to display, and the method in which the task can be launched. At run-time, a task client can read the manifest and decide which task or tasks to expose to an end user under a current context.
    Type: Grant
    Filed: April 29, 2005
    Date of Patent: November 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Ferhan Elvanoglu, Jin Feng, Nirav A. Kamdar, Yong Zhao
  • Patent number: 7827560
    Abstract: A system and method is disclosed for automated task/program management which is not dependent upon a calendar based schedule and flexibly accounts for various operating conditions. In one embodiment, the disclosed system and method permits specification of one or more tasks to be performed, such as a recurring task, and a time interval. The performance/execution of the task(s) may be related to or dependent upon satisfaction of one or more conditions, for example, that the computer that will execute the task(s) is turned on or otherwise available. The system and method monitors for the elapse of the specified time interval and also that the condition(s) is/are satisfied (which may occur by default if the monitoring program is similarly dependent upon the condition(s)). Upon elapse of the time interval and satisfaction of the condition(s), the specified task(s)/program(s) is/are caused to be executed.
    Type: Grant
    Filed: May 11, 2005
    Date of Patent: November 2, 2010
    Assignee: Siemens Aktiengesellschaft
    Inventor: Stefan Bayer
  • Patent number: 7814493
    Abstract: A method, apparatus, system, and signal-bearing medium that, in an embodiment, find duplicate resource identifiers that originate from different applications, converge the duplicate resource identifiers into a converged interface object, and present the converged interface object. The duplicate resource identifiers identify the same resource, and the different applications manage the same resource. Duplicate links associated with the duplicate resource identifiers are found, where the duplicate links originate from different applications, and the duplicate links are converged into a converged interface object. The duplicate links provide information regarding the same resource. Duplicate task identifiers are found that are associated with the duplicate resource identifiers and that originate from the different applications. The duplicate task identifiers are converged into a converged interface object.
    Type: Grant
    Filed: August 11, 2005
    Date of Patent: October 12, 2010
    Assignee: International Business Machines Corporation
    Inventors: Randall Lee Bertram, Gregory Richard Hintermeister, Michael D. Rahn
  • Patent number: 7802254
    Abstract: A job execution system comprises a job execution apparatus, an image data storage portion which is installed either outside or inside the job execution apparatus and stores image data in each box, a group information storing portion which is installed either outside or inside the job execution apparatus and stores group information preset for each group to which the user belongs in association with the box, a group information acquisition portion which is installed to the job execution apparatus and acquires the group information associated with the box when the box in which the image data is stored is designated by the user, and a controller which operates the job execution apparatus in conformity to the acquired group information.
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: September 21, 2010
    Assignee: Konica Minolta Business Technologies, Inc.
    Inventors: Hiroshi Iwamoto, Eiichi Yoshida, Hideki Hino, Shoji Imaizumi, Masaaki Saka
  • Patent number: 7793297
    Abstract: A method, apparatus, and computer program product in a data processing system for intelligent resource provisioning based on on-demand weight calculation. Resource weights are defined for an application cluster. If the application cluster requests a set of additional resources, an on-demand weight for each resource in a resource pool is calculated and the resource with the highest on-demand weight is provisioned for the requesting application cluster. If resources need to be de-provisioned from the application cluster, an on-demand weight for each resource in the application cluster is calculated and the resource with the lowest on-demand weight for the application cluster is de-provisioned.
    Type: Grant
    Filed: April 29, 2005
    Date of Patent: September 7, 2010
    Assignee: International Business Machines Corporation
    Inventors: Manishkumar Aggarwal, Baldev Singh Soor
  • Patent number: 7788671
    Abstract: A method, system and apparatus for on-demand application resource allocation. In accordance with the method of the invention, an anticipated workload can be compared to a measured capacity for an application cluster in one or more server computing nodes in a server farm. If the measured capacity warrants a re-configuration of the application clusters, a new placement can be computed for application server instances in individual ones of the server computing nodes. Subsequently, the new placement can be applied to the server computing nodes in the server farm. In this regard, the applying step can include starting and stopping selected ones of the application server instances in different ones of the server computing nodes to effectuate the new placement.
    Type: Grant
    Filed: November 1, 2004
    Date of Patent: August 31, 2010
    Assignee: International Business Machines Corporation
    Inventors: Elizabeth A. Black-Ziegelbein, Gennaro A. Cuomo, Brian K. Martin, Giovanni Pacifici, Michael Spreitzer, Malgorzata Steinder, Asser N. Tantawi
  • Patent number: 7779413
    Abstract: Necessary resources are assigned to programs based on a program reservation information management table in which each of the programs is associated with a necessary resource quantity for execution of the program and execution scheduled time period as program reservation information. When the program reservation information is entered through a terminal, a free resource quantity management table in which available resource quantities are associated with respective time periods is referred to, and it is determined whether the available resource quantity for the execution scheduled time period is at or above the necessary resource quantity.
    Type: Grant
    Filed: June 3, 2005
    Date of Patent: August 17, 2010
    Assignee: Hitachi, Ltd.
    Inventor: Tomomi Suzuki
  • Patent number: 7765553
    Abstract: A method and system for regulating tasks of background processes so as to reduce interference with foreground processes. The progress rate of a background task (e.g., amount of work performed per unit time) is measured and evaluated against a target amount. If the progress rate appears degraded, the background task is suspended for a computed time interval so as to back off from its interference with a foreground process. Each time the progress rate appears degraded, the time interval is exponentially increased from its previous value up to a maximum, however if the performance appears normal, the time interval is reset to a minimum. Evaluation of the work is statistically based so as to eliminate variations in measurements, and automatic calibration of the target amount is provided, as is a mechanism for prioritizing multiple background tasks.
    Type: Grant
    Filed: December 13, 2004
    Date of Patent: July 27, 2010
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky
  • Patent number: 7757231
    Abstract: In some embodiments, the invention involves a system to deprivilege components of a virtual machine monitor and enable deprivileged service virtual machines (SVMs) to handle selected trapped events. An embodiment of the invention is a hybrid VMM operating on a platform with hardware virtualization support. The hybrid VMM utilizes features from both hypervisor-based and host-based VMM architectures. In at least one embodiment, the functionality of a traditional VMM is partitioned into a small platform-dependent part called a micro-hypervisor (MH) and one or more platform-independent parts called service virtual machines (SVMs). The micro-hypervisor operates at a higher virtual machine (VM) privilege level than any SVM, while the SVM and other VMs may still have access to any instruction set architecture (ISA) privilege level. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: July 13, 2010
    Assignee: Intel Corporation
    Inventors: Andrew V. Anderson, Steven M. Bennett, Erik Cota-Robles, Alain Kägi, Gilbert Neiger, Rajesh S. Madukkarumukumana, Sebastian Schoenberg, Richard Uhlig, Michael A. Rothman, Vincent J. Zimmer, Stalinselvaraj Jeyasingh
  • Patent number: 7752622
    Abstract: A method for scheduling computing jobs in a scheduling event includes selecting a computing job that is ready for scheduling the first computing job being associated with at least one required resource. A computing node is identified that is able to satisfy the at least one required resource during a first time period having a start time and an end time. A second computing job is determined to have previously been scheduled to execute during a second time period; wherein the second time period overlaps the first time period. At a time prior to scheduling the first computing job, a determination is made as to whether the second computing job is preemptible by the first computing job.
    Type: Grant
    Filed: May 13, 2005
    Date of Patent: July 6, 2010
    Assignee: Oracle America, Inc.
    Inventor: Lev Markov
  • Patent number: 7752620
    Abstract: Administration of locks for critical sections of computer programs in a computer that supports a multiplicity of logical partitions that include determining by a thread executing on a virtual processor executing in a time slice on a physical processor whether an expected lock time for a critical section of the thread exceeds a remaining entitlement of the virtual processor in the time slice and deferring acquisition of a lock if the expected lock time exceeds the remaining entitlement.
    Type: Grant
    Filed: June 6, 2005
    Date of Patent: July 6, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jos M. Accapadi, Andrew Dunshea, Sujatha Kashyap
  • Patent number: 7752623
    Abstract: In one embodiment, a method for allocating resources in a shared resource domain comprises gathering performance data for multiple applications, determining that an application of the multiple applications is not achieving a service level objective (SLO), calculating an additional amount of a resource for the application estimated to cause the application to achieve the SLO, and examining, before initiating reallocation operations, at least one system characteristic to determine whether the calculated additional amount of the resource would improve performance of the application.
    Type: Grant
    Filed: September 16, 2004
    Date of Patent: July 6, 2010
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Isom Lawrence Crawford, Jr.
  • Patent number: 7743378
    Abstract: A method for scheduling computing jobs in a scheduling event includes calculating a static priority of each computing job ready for scheduling, and then selecting a first computing job having the highest static priority as compared to at least one other computing jobs ready for scheduling, the first computing job being associated with at least one required resource. Further, a subset of computing nodes able to satisfy the at least one required resource are identified, and predictions are made for each node of an earliest predicted completion time that the first computing job can be completed on each of those nodes, taking into account already scheduled jobs. Finally, execution of the first computing job is scheduled on the node having the earliest predicted completion time.
    Type: Grant
    Filed: May 13, 2005
    Date of Patent: June 22, 2010
    Assignee: Oracle America, Inc.
    Inventor: Lev Markov
  • Patent number: 7743383
    Abstract: A method in a computer system for coordinating scheduling of threads among a plurality of processors. The method includes collecting, using a cooperative scheduling component (CSC), system data pertaining to the plurality of processors. The method further includes calculating, using the CSC, unified scheduling-related parameters (USRPs) from the system data. The method additionally includes furnishing the USRPs from the CSC to at least two of a thread launcher, a thread balancer, and a thread stealer, whereby at least two of the thread launcher, the thread balancer, and the thread stealer employ the USRPs to perform their respective scheduling-related tasks.
    Type: Grant
    Filed: November 1, 2004
    Date of Patent: June 22, 2010
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Scott J. Norton, Hyun J. Kim, Swapneel Kekre
  • Patent number: 7735083
    Abstract: A method for setting timers is disclosed in which an array is maintained, each element of which represents a period of time. Events which are to occur within the time period associated with the array element are linked to the array element. The events associated with each array element are executed at a pre-determined time interval. A pointer pointing to the current time period being processed wraps around to the beginning of the array when the end of the array is reached.
    Type: Grant
    Filed: October 7, 2004
    Date of Patent: June 8, 2010
    Assignee: Microsoft Corporation
    Inventors: Aaron W. Ogus, Evan J. Schrier
  • Patent number: 7712103
    Abstract: In a dynamic queue load balancing method using a plurality of computers, the load level of each computer is obtained. A queue management table including information on a queue length and the number of queued requests in each queue and a queue adjustment table including information on a queue length at each load level are referred to. The queue length in the queue management table is changed to the queue length in the queue adjustment table corresponding to the obtained load level by a storage device. A queue usage rate of queue is calculated from the queue length and the number of queued requests in the queue management table. Information on the calculated queue usage rate of queue is exchanged among the computers through a communication device. According to the exchanged information on the queue usage rate, selective assignment of a processing request among queues of the computers is performed.
    Type: Grant
    Filed: August 9, 2005
    Date of Patent: May 4, 2010
    Assignee: Hitachi, Ltd.
    Inventor: Takashi Takahisa