Patents by Inventor James Robert Harold Challenger

James Robert Harold Challenger has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8095494
    Abstract: A method for cross-triggering transitions in independent finite state machines is provided. For a given plurality of finite state machine definitions having a plurality of states and a plurality of transitions among the states, two or more independent instances of the plurality of finite state machine definitions are created. In addition, associations between two or more of the independent finite state machine instances are identified. The method uses cross-triggering rules that identify a condition in a first one of the associated independent finite state machine instances that triggers a transition action in a second one of the associated independent finite state machine instances. Each cross-triggering rule is triggered upon an occurrence of the cross-triggering rule condition, and the transition action in the second associated independent finite state machine instance is performed in response to the triggering of the cross-triggering rule.
    Type: Grant
    Filed: October 16, 2008
    Date of Patent: January 10, 2012
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, James Robert Harold Challenger, Louis Ralph Degenaro
  • Patent number: 8087023
    Abstract: The invention provides a system/method of processing client requests over a computer network of hosts, that includes creating persistent containers in the hosts, creating objects in the containers, grouping the containers into grid container arrays, grouping objects within containers that are within a single grid container array into grid object arrays, creating one micro scheduler for each grid container array, dividing each of the client requests into a plurality of tasks, and assigning groups of the tasks to the microschedulers, wherein the microschedulers assign individual tasks to the objects. The invention assigns the microschedulers additional groups of tasks as the microschedulers return groups of completed tasks. The method can also include passing the client requests through gateways to multiple grid services schedulers.
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: December 27, 2011
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Marcos Novaes
  • Patent number: 7908437
    Abstract: Methods for serving data include maintaining an incomplete version of an object at a server and at least one fragment at the server. In response to a request for the object from a client, the incomplete version of the object, an identifier for a fragment comprising a portion of the objects and a position for the fragment within the object are sent to the client. After receiving the incomplete version of the object, the identifier, and the position, the client requests the fragment from the server using the identifier. The object is constructed by including the fragment in the incomplete version of the object in a location specified by the position.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: March 15, 2011
    Assignee: International Busines Machines Corporation
    Inventors: James Robert Harold Challenger, Louis Ralph Degenaro, Robert Filepp, Arun Kwangil Iyengar, Richard Pervin King
  • Publication number: 20100100518
    Abstract: A method for cross-triggering transitions in independent finite state machines is provided. For a given plurality of finite state machine definitions having a plurality of states and a plurality of transitions among the states, two or more independent instances of the plurality of finite state machine definitions are created. In addition, associations between two or more of the independent finite state machine instances are identified. The method uses cross-triggering rules that identify a condition in a first one of the associated independent finite state machine instances that triggers a transition action in a second one of the associated independent finite state machine instances. Each cross-triggering rule is triggered upon an occurrence of the cross-triggering rule condition, and the transition action in the second associated independent finite state machine instance is performed in response to the triggering of the cross-triggering rule.
    Type: Application
    Filed: October 16, 2008
    Publication date: April 22, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Henrique Andrade, James Robert Harold Challenger, Louis Ralph Degenaro
  • Patent number: 7574563
    Abstract: Methods for serving data include maintaining an incomplete version of an object at a server and at least one fragment at the server. In response to a request for the object from a client, the incomplete version of the object, an identifier for a fragment comprising a portion of the object, and a position for the fragment within the object are sent to the client. After receiving the incomplete version of the object, the identifier, and the position, the client requests the fragment from the server using the identifier. The object is constructed by including the fragment in the incomplete version of the object in a location specified by the position.
    Type: Grant
    Filed: August 10, 2006
    Date of Patent: August 11, 2009
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Louis Ralph Degenaro, Robert Filepp, Arun Kwangil Iyengar, Richard Pervin King
  • Publication number: 20080229019
    Abstract: Methods for serving data include maintaining an incomplete version of an object at a server and at least one fragment at the server. In response to a request for the object from a client, the incomplete version of the object, an identifier for a fragment comprising a portion of the objects and a position for the fragment within the object are sent to the client. After receiving the incomplete version of the object, the identifier, and the position, the client requests the fragment from the server using the identifier. The object is constructed by including the fragment in the incomplete version of the object in a location specified by the position.
    Type: Application
    Filed: June 2, 2008
    Publication date: September 18, 2008
    Inventors: James Robert Harold Challenger, Louis Ralph Degenaro, Robert Filepp, Arun Kwangil Lyengar, Richard Pervin King
  • Publication number: 20080168451
    Abstract: The invention provides a system/method of processing client requests over a computer network of hosts, that includes creating persistent containers in the hosts, creating objects in the containers, grouping the containers into grid container arrays, grouping objects within containers that are within a single grid container array into grid object arrays, creating one micro scheduler for each grid container array, dividing each of the client requests into a plurality of tasks, and assigning groups of the tasks to the microschedulers, wherein the microschedulers assign individual tasks to the objects. The invention assigns the microschedulers additional groups of tasks as the microschedulers return groups of completed tasks. The method can also include passing the client requests through gateways to multiple grid services schedulers.
    Type: Application
    Filed: March 19, 2008
    Publication date: July 10, 2008
    Applicant: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Marcos Novaes
  • Patent number: 7383550
    Abstract: The invention provides a system/method of processing client requests over a computer network of hosts, that includes creating persistent containers in the hosts, creating objects in the containers, grouping the containers into grid container arrays, grouping objects within containers that are within a single grid container array into grid object arrays, creating one micro scheduler for each grid container array, dividing each of the client requests into a plurality of tasks, and assigning groups of the tasks to the microschedulers, wherein the microschedulers assign individual tasks to the objects. The invention assigns the microschedulers additional groups of tasks as the microschedulers return groups of completed tasks. The method can also include passing the client requests through gateways to multiple grid services schedulers.
    Type: Grant
    Filed: December 23, 2002
    Date of Patent: June 3, 2008
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Marcos Novaes
  • Patent number: 7114032
    Abstract: Methods for serving data include maintaining an incomplete version of an object at a server and at least one fragment at the server. In response to a request for the object from a client, the incomplete version of the object, an identifier for a fragment comprising a portion of the object, and a position for the fragment within the object are sent to the client. After receiving the incomplete version of the object, the identifier, and the position, the client requests the fragment from the server using the identifier. The object is constructed by including the fragment in the incomplete version of the object in a location specified by the position.
    Type: Grant
    Filed: July 18, 2003
    Date of Patent: September 26, 2006
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Louis Ralph Degenaro, Robert Filepp, Arun Kwangil Iyengar, Richard Pervin King
  • Publication number: 20040123296
    Abstract: The invention provides a system/method of processing client requests over a computer network of hosts, that includes creating persistent containers in the hosts, creating objects in the containers, grouping the containers into grid container arrays, grouping objects within containers that are within a single grid container array into grid object arrays, creating one micro scheduler for each grid container array, dividing each of the client requests into a plurality of tasks, and assigning groups of the tasks to the microschedulers, wherein the microschedulers assign individual tasks to the objects. The invention assigns the microschedulers additional groups of tasks as the microschedulers return groups of completed tasks. The method can also include passing the client requests through gateways to multiple grid services schedulers.
    Type: Application
    Filed: December 23, 2002
    Publication date: June 24, 2004
    Inventors: James Robert Harold Challenger, Marcos Novaes
  • Patent number: 6618751
    Abstract: Systems and methods for publishing objects (e.g., pages and/or fragments) include assigning expiration times to different versions of objects and determining a plurality of objects which should be published atomically, that is, together in a single action. Then, the invention includes computing updated versions of the plurality of objects and atomically publishing the updated versions wherein the updated versions are not available until after expiration times corresponding to previously published versions of at least one of the plurality of objects (e.g., a cached object) have elapsed. Advantageously, clients attempting to access related cached objects over an information network such as the Internet will not be presented with versions of related objects that are inconsistent with one another.
    Type: Grant
    Filed: August 20, 1999
    Date of Patent: September 9, 2003
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Cameron Donald Ferstat, Arun Kwangil Iyengar, Paul Reed, Karen A. Witting
  • Patent number: 6266742
    Abstract: In a computer system in which caching is utilized for improving performance, a method for determining whether an uncached object should be cached, and, if so, which objects, if any, should be removed from a cache to make room for the new uncached object. The method assigns a metric correlated with the desirability of caching an object, considering parameters such as access frequencies, object sizes, object lifetimes and times to calculate and/or to fetch the object. The metric weights more recent accesses more heavily than less recent accesses. The method can be used for improving the performance of an algorithm which utilizes priority queues and can additionally be applied when attempting to predict the expected frequency of an occurrence based upon past occurrences.
    Type: Grant
    Filed: October 27, 1997
    Date of Patent: July 24, 2001
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Arun Kwangil Iyengar
  • Patent number: 6256712
    Abstract: A determination can be made of how changes to underlying data affect the value of objects. Examples of applications are: caching dynamic Web pages; client-server applications whereby a server sending objects (which are changing all the time) to multiple clients can track which versions are sent to which clients and how obsolete the versions are; and any situation where it is necessary to maintain and uniquely identify several versions of objects, update obsolete objects, quantitatively assess how different two versions of the same object are, and/or maintain consistency among a set of objects. A directed graph called an object dependence graph, may be used to represent the data dependencies between objects. Another aspect is constructing and maintaining objects to associate changes in remote data with cached objects. If data in a remote data source changes, database change notifications are used to “trigger” a dynamic rebuild of associated objects.
    Type: Grant
    Filed: August 1, 1997
    Date of Patent: July 3, 2001
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Paul Michael Dantzig, Arun K. Iyengar, Gerald A. Spivak
  • Patent number: 6216212
    Abstract: A determination can be made of bow changes to underlying data affect the value of objects. Examples of applications are: caching dynamic Web pages; client-server applications whereby a server sending objects (which are changing all the time) to multiple clients can track which versions are sent to which clients and how obsolete the versions are; and any situation where it is necessary to maintain and uniquely identify several versions of objects, update obsolete objects, quantitatively assess how different two versions of the same object are, and/or maintain consistency among a set of objects. A directed graph called an object dependence graph, may be used to represent the data dependencies between objects. Another aspect is constructing and maintaining objects to associate changes in remote data with cached objects. If data in a remote data source changes, database change notifications are used to “trigger” a dynamic rebuild of associated objects.
    Type: Grant
    Filed: August 18, 1999
    Date of Patent: April 10, 2001
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Paul Michael Dantzig, Arun K. Iyengar, Gerald A. Spivak
  • Patent number: 6026413
    Abstract: A determination can be made of how changes to underlying data affect the value of objects. Examples of applications include: caching dynamic Web pages; client-server applications whereby a server sending objects (which are changing all the time) to multiple clients can track which versions are sent to which clients and how obsolete the versions are; and any situation where it is necessary to maintain and uniquely identify several versions of objects, update obsolete objects, quantitatively assess how different two versions of the same object are, and/or maintain consistency among a set of objects. A directed graph, called an object dependence graph, may be used to represent the data dependencies between objects. Another aspect is constructing and maintaining objects to associate changes in remote data with cached objects. If data in a remote data source changes, database change notifications are used to "trigger" a dynamic rebuild of associated objects.
    Type: Grant
    Filed: August 1, 1997
    Date of Patent: February 15, 2000
    Assignee: International Business Machines Corporation
    Inventors: James Robert Harold Challenger, Paul Michael Dantzig, Arun K. Iyengar, Gerald A. Spivak