Patents by Inventor Trent A. Gray-Donald
Trent A. Gray-Donald 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).
-
Publication number: 20140344314Abstract: Creating message files in a publication subscription computer system by: (i) receiving data corresponding to a first message; (ii) receiving a list of subscribers that subscribe to a topic of the first message; and (iii) creating a digital data file that includes a payload data and a consumption metadata. The payload data includes content data corresponding to the first message. The consumption metadata includes data relating to whether one or more subscribers of the list of subscribers will potentially consume the first message at a later period in time from the time of receiving the content data corresponding to the first message.Type: ApplicationFiled: May 14, 2013Publication date: November 20, 2014Applicant: International Business Machines CorporationInventors: Trent A. Gray-Donald, Rajesh Lalgowdar, Lohitashwa Thyagaraj
-
Patent number: 8418151Abstract: A process for providing a simulated date and/or time to a time-sensitive application is disclosed herein. Such a process may include detecting the invocation of a time handler method configured to retrieve system time. Upon detecting the invocation, the contents of a call stack may be captured and analyzed to determine which requestor method initiated the invocation. The process may then determine whether the requestor method should receive a real or simulated system time. A real system time may be returned to the requestor method in the event it should receive the real system time. A simulated system time may be returned to the requestor method in the event it should receive the simulated system time. A corresponding apparatus and computer program product are also disclosed and claimed herein.Type: GrantFiled: March 27, 2012Date of Patent: April 9, 2013Assignee: International Business Machines CorporationInventors: Trent A. Gray-Donald, Marc Warner Price
-
Patent number: 8352922Abstract: A process for providing a simulated date and/or time to a time-sensitive application is disclosed herein. Such a process may include detecting the invocation of a time handler method configured to retrieve system time. Upon detecting the invocation, the contents of a call stack may be captured and analyzed to determine which requester method initiated the invocation. The process may then determine whether the requester method should receive a real or simulated system time. A real system time may be returned to the requester method in the event it should receive the real system time. A simulated system time may be returned to the requester method in the event it should receive the simulated system time. A corresponding apparatus and computer program product are also disclosed and claimed herein.Type: GrantFiled: March 31, 2009Date of Patent: January 8, 2013Assignee: International Business Machines CorporationInventors: Trent A. Gray-Donald, Marc Warner Price
-
Publication number: 20120185690Abstract: A process for providing a simulated date and/or time to a time-sensitive application is disclosed herein. Such a process may include detecting the invocation of a time handler method configured to retrieve system time. Upon detecting the invocation, the contents of a call stack may be captured and analyzed to determine which requestor method initiated the invocation. The process may then determine whether the requestor method should receive a real or simulated system time. A real system time may be returned to the requestor method in the event it should receive the real system time. A simulated system time may be returned to the requestor method in the event it should receive the simulated system time. A corresponding apparatus and computer program product are also disclosed and claimed herein.Type: ApplicationFiled: March 27, 2012Publication date: July 19, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Trent A. Gray-Donald, Marc Warner Price
-
Patent number: 8201158Abstract: Under the present invention, program code is examined (statically or dynamically) for characteristics indicative of a potential to generate multiple threads. If none are found, single threaded optimization(s) such as desynchronization, optimization of globals, etc., can be implemented. In addition, if the program code is later revealed to have the potential to generate multiple threads, the single threaded optimization(s) can be corrected to avoid incorrect execution.Type: GrantFiled: April 9, 2008Date of Patent: June 12, 2012Assignee: International Business Machines CorporationInventors: Derek B. Inglis, Trent A. Gray-Donald, Kevin A. Stoodley, Vijay Sundaresan
-
Patent number: 8099723Abstract: A method, apparatus, and computer instructions for referencing a constant pool. A determination is made as to whether a bytecode references the constant pool. A relative offset to the constant pool is identified for the bytecode, in response to the bytecode referencing the constant pool. The bytecode is then replaced with a new bytecode containing the relative offset. The relative offset is used to reference the constant pool.Type: GrantFiled: April 3, 2008Date of Patent: January 17, 2012Assignee: International Business Machines CorporationInventors: Peter Wiebe Burka, Graham Alan Chapman, Trent A. Gray-Donald, Karl Michael Taylor
-
Publication number: 20110276981Abstract: A runtime-resource management method, system, and product for managing resources available to application components in a portable device. The method, system, and product provide for loading one or more new application components into a portable device only if maximum runtime resources required by the one or more new application components are available in the portable device assuming loaded application components within the device are using the maximum runtime resources reserved by the loaded application components, reserving maximum runtime resources required by application components when application components are loaded into the portable device, and running loaded application components using only the runtime resources reserved for the loaded application components.Type: ApplicationFiled: July 21, 2011Publication date: November 10, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: KIM CLOHESSY, JOHN DUIMOVICH, TRENT GRAY-DONALD, BERTHOLD LEBERT, RYAN SCIAMPACONE, PETER DUNCAN SHIPTON
-
Patent number: 8042113Abstract: A runtime-resource management method, system, and product for managing resources available to application components in a portable device. The method, system, and product provide for loading one or more new application components into a portable device only if maximum runtime resources required by the one or more new application components are available in the portable device assuming loaded application components within the device are using the maximum runtime resources reserved by the loaded application components, reserving maximum runtime resources required by application components when application components are loaded into the portable device, and running loaded application components using only the runtime resources reserved for the loaded application components.Type: GrantFiled: November 30, 2007Date of Patent: October 18, 2011Assignee: International Business Machines CorporationInventors: Kim Clohessy, John Duimovich, Trent Gray-Donald, Berthold Lebert, Ryan Sciampacone, Peter Duncan Shipton
-
Patent number: 7992136Abstract: A computer implemented method, apparatus, and computer usable program code for profiling an application. Data is collected for analyzing performance of the application using a device driver for a profiler in an operating system kernel in response to the application executing in a virtual machine. Data is stored in a buffer. A report is generated containing the data from the buffer in response to an event in the virtual machine, wherein the application is profiled using the report. Collection of the data is halted in response to the application terminating execution in the virtual machine.Type: GrantFiled: October 18, 2006Date of Patent: August 2, 2011Assignee: International Business Machines CorporationInventors: Trent A. Gray-Donald, Frank E. Levine
-
Publication number: 20100250225Abstract: A process for providing a simulated date and/or time to a time-sensitive application is disclosed herein. Such a process may include detecting the invocation of a time handler method configured to retrieve system time. Upon detecting the invocation, the contents of a call stack may be captured and analyzed to determine which requester method initiated the invocation. The process may then determine whether the requester method should receive a real or simulated system time. A real system time may be returned to the requester method in the event it should receive the real system time. A simulated system time may be returned to the requester method in the event it should receive the simulated system time. A corresponding apparatus and computer program product are also disclosed and claimed herein.Type: ApplicationFiled: March 31, 2009Publication date: September 30, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Trent A. Gray-Donald, Marc Warner Price
-
Publication number: 20080189691Abstract: A method, apparatus, and computer instructions for referencing a constant pool. A determination is made as to whether a bytecode references the constant pool. A relative offset to the constant pool is identified for the bytecode, in response to the bytecode referencing the constant pool. The bytecode is then replaced with a new bytecode containing the relative offset. The relative offset is used to reference the constant pool.Type: ApplicationFiled: April 3, 2008Publication date: August 7, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Peter Wiebe Burka, Graham Alan Chapman, Trent A. Gray-Donald, Karl Michael Taylor
-
Publication number: 20080189692Abstract: Under the present invention, program code is examined (statically or dynamically) for characteristics indicative of a potential to generate multiple threads. If none are found, single threaded optimization(s) such as desynchronization, optimization of globals, etc., can be implemented. In addition, if the program code is later revealed to have the potential to generate multiple threads, the single threaded optimization(s) can be corrected to avoid incorrect execution.Type: ApplicationFiled: April 9, 2008Publication date: August 7, 2008Inventors: Derek B. Inglis, Trent A. Gray-Donald, Kevin A. Stoodley, Vijay Sundaresan
-
Patent number: 7395530Abstract: Under the present invention, program code is examined (statically or dynamically) for characteristics indicative of a potential to generate multiple threads. If none are found, single threaded optimization(s) such as desynchronization, optimization of globals, etc., can be implemented. In addition, if the program code is later revealed to have the potential to generate multiple threads, the single threaded optimization(s) can be corrected to avoid incorrect execution.Type: GrantFiled: August 30, 2004Date of Patent: July 1, 2008Assignee: International Business Machines CorporationInventors: Derek B. Inglis, Trent A. Gray-Donald, Kevin A. Stoodley, Vijay Sundaresan
-
Publication number: 20080098364Abstract: A computer implemented method, apparatus, and computer usable program code for profiling an application. Data is collected for analyzing performance of the application using a device driver for a profiler in an operating system kernel in response to the application executing in a virtual machine. Data is stored in a buffer. A report is generated containing the data from the buffer in response to an event in the virtual machine, wherein the application is profiled using the report. Collection of the data is halted in response to the application terminating execution in the virtual machine.Type: ApplicationFiled: October 18, 2006Publication date: April 24, 2008Inventors: Trent A. Gray-Donald, Frank Eliot Levine
-
Patent number: 7356811Abstract: A method, apparatus, and computer instructions for referencing a constant pool. A determination is made as to whether a bytecode references the constant pool. A relative offset to the constant pool is identified for the bytecode, in response to the bytecode referencing the constant pool. The bytecode is then replaced with a new bytecode containing the relative offset. The relative offset is used to reference the constant pool.Type: GrantFiled: July 8, 2004Date of Patent: April 8, 2008Assignee: International Business Machines CorporationInventors: Peter Wiebe Burka, Graham Alan Chapman, Trent A. Gray-Donald, Karl Michael Taylor
-
Publication number: 20080077929Abstract: A runtime-resource management method, system, and product for managing resources available to application components in a portable device. The method, system, and product provide for loading one or more new application components into a portable device only if maximum runtime resources required by the one or more new application components are available in the portable device assuming loaded application components within the device are using the maximum runtime resources reserved by the loaded application components, reserving maximum runtime resources required by application components when application components are loaded into the portable device, and running loaded application components using only the runtime resources reserved for the loaded application components.Type: ApplicationFiled: November 30, 2007Publication date: March 27, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Kim Clohessy, John Duimovich, Trent Gray-Donald, Berthold Lebert, Ryan Sciampacone, Peter Shipton
-
Patent number: 7337298Abstract: Memory segments are allocated for a classloader to store class information, such as by selecting an allocation approach based on classloader type. In a first approach, in response to each request, a segment having a fixed size is allocated. In a second approach, in response to a first request, a first segment having a size equal to an amount of memory needed to store information related to the request is allocated. In response to a second request, a second segment having a second size is allocated, and in response to a third request, a third segment having a third size greater than the second size is allocated. In a third approach, in response to the first request, a first segment having a first size is allocated. In response to a second request, a second segment having a second size greater than the first size is allocated.Type: GrantFiled: October 5, 2005Date of Patent: February 26, 2008Assignee: International Business Machines CorporationInventors: Kiyokuni Kawachiya, Kazunori Ogata, Tamiya Onodera, Trent A. Gray-Donald
-
Patent number: 7334228Abstract: A runtime-resource management method, system, and product for managing resources available to application components in a portable device. The method, system, and product provide for loading one or more new application components into a portable device only if maximum runtime resources required by the one or more new application components are available in the portable device assuming loaded application components within the device are using the maximum runtime resources reserved by the loaded application components, reserving maximum runtime resources required by application components when application components are loaded into the portable device, and running loaded application components using only the runtime resources reserved for the loaded application components.Type: GrantFiled: July 27, 2001Date of Patent: February 19, 2008Assignee: International Business Machines CorporationInventors: Kim Clohessy, John Duimovich, Trent Gray-Donald, Berthold Lebert, Ryan Sciampacone, Peter Duncan Shipton
-
Publication number: 20070078916Abstract: Memory segments are allocated for a classloader to store class information, such as by selecting an allocation approach based on classloader type. In a first approach, in response to each request, a segment having a fixed size is allocated. In a second approach, in response to a first request, a first segment having a size equal to an amount of memory needed to store information related to the request is allocated. In response to a second request, a second segment having a second size is allocated, and in response to a third request, a third segment having a third size greater than the second size is allocated. In a third approach, in response to the first request, a first segment having a first size is allocated. In response to a second request, a second segment having a second size greater than the first size is allocated.Type: ApplicationFiled: October 5, 2005Publication date: April 5, 2007Inventors: Kiyokuni Kawachiya, Kazunori Ogata, Tamiya Onodera, Trent Gray-Donald
-
Patent number: 7032230Abstract: Virtual function calls in hybrid compiled and interpreted computer programming environments are carried out efficiently by dual virtual function tables. Each class object generated is provided with a compiled virtual function table and an interpreted virtual function table. Each table is symmetrically structured and contiguous with the class object. Calls from an interpreted function access the interpreted virtual function table. Entries in that table point to function data structures which provide for the interpretation of the called function, or for transfer to execution of a compiled version of the called function. Calls from a compiled function access the compiled virtual function table. Entries in the compiled virtual function table point to either executable code representing the called function, or to transition code for transition to the interpreter to interpret the called function.Type: GrantFiled: August 27, 2001Date of Patent: April 18, 2006Assignee: International Business Machines CorporationInventors: Trent Gray-Donald, Graeme Johnson, Kevin A. Stoodley, Julian Z. L. Wang