Patents by Inventor Neil Puthuff
Neil Puthuff 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: 9342437Abstract: A method finds an error in a computer program. A plurality of execution breakpoints are set in the computer program. A portion of the execution of the computer program is simulated as recorded in the trace data in the reverse order until one a plurality of conditions is met, wherein one of the plurality of conditions is an attempt to execute a machine instruction associated with one of the plurality of execution breakpoints.Type: GrantFiled: June 13, 2014Date of Patent: May 17, 2016Assignee: GREEN HILLS SOFTWARE, INC.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 8914777Abstract: A method and system debug a computer program by using trace data, which is a recording of the sequence of machine instructions executed by a program during a time period along with the addresses and values of memory locations accessed and modified by each machine instruction. After the time period, the method and system use the trace data to simulate the execution of the program during the time period under the control of a debugger. In addition, the method and system use the trace data to simulate the execution of the program during the time period backwards in time under the control of the debugger.Type: GrantFiled: August 20, 2012Date of Patent: December 16, 2014Assignee: Green Hills SoftwareInventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Publication number: 20140298301Abstract: A method finds an error in a computer program. A plurality of execution breakpoints are set in the computer program. A portion of the execution of the computer program is simulated as recorded in the trace data in the reverse order until one a plurality of conditions is met, wherein one of the plurality of conditions is an attempt to execute a machine instruction associated with one of the plurality of execution breakpoints.Type: ApplicationFiled: June 13, 2014Publication date: October 2, 2014Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 8789023Abstract: A method finds an error in a computer program. A plurality of execution breakpoints are set in the computer program. A portion of the execution of the computer program is simulated as recorded in the trace data in the reverse order until one a plurality of conditions is met, wherein one of the plurality of conditions is an attempt to execute a machine instruction associated with one of the plurality of execution breakpoints.Type: GrantFiled: March 7, 2012Date of Patent: July 22, 2014Assignee: Green Hills Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 8776029Abstract: A method and system for creating uniquely representative execution path identifiers of software program. The method comprises the steps of running the software program, continuously accessing execution information of the software program, identifying execution sequences of the execution information, and creating a unique execution path identifier of each of the execution sequences by summing the execution information when the execution information is within a functional boundary thereof so as to create an execution path identifier representing a unique execution sequence of the execution information. The system comprises an execution path identification creator continuously receiving and accessing execution information of the software program, identifying execution sequences of the execution information and creating the unique execution path identifier of each of the execution sequences.Type: GrantFiled: March 23, 2012Date of Patent: July 8, 2014Assignee: Zerodee, Inc.Inventor: Neil Puthuff
-
Patent number: 8584097Abstract: A method finds an error in a computer program. A sequence of machine instructions performed by a processor is recorded as trace data. Further, at least one event is selected from a plurality of events. In addition, an operating system instruction address is determined for the at least one event. Further, at least a portion of the trace data is searched for the operating system instruction address. The execution time for an operating system instruction stored in the operating system instruction address is determined. The execution time is searched through in the database to find task related data. The task related data is displayed.Type: GrantFiled: February 13, 2012Date of Patent: November 12, 2013Assignee: Green Hills Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Publication number: 20120317550Abstract: A method and system debug a computer program by using trace data, which is a recording of the sequence of machine instructions executed by a program during a time period along with the addresses and values of memory locations accessed and modified by each machine instruction. After the time period, the method and system use the trace data to simulate the execution of the program during the time period under the control of a debugger. In addition, the method and system use the trace data to simulate the execution of the program during the time period backwards in time under the control of the debugger.Type: ApplicationFiled: August 20, 2012Publication date: December 13, 2012Applicant: GREEN HILLS SOFTWARE, INCInventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Publication number: 20120246622Abstract: A method and system for identifying behavioral uniqueness of software execution sequence. The method comprises the steps of executing a software program and continuously producing an execution sequence of execution information, determining if the execution information is within a functional boundary of the software program, and determining if the execution sequence of the execution information is a new execution sequence or a repeat execution sequence. The system comprises a functional boundary detector for continuously analyzing an execution information of a software program to determine if the execution information is within a functional boundary of said software program, and a comparator provided for determining if an execution sequence of the execution information is a new execution sequence or a repeat execution sequence and producing a unique detection signal if the new execution sequence is detected.Type: ApplicationFiled: March 23, 2012Publication date: September 27, 2012Inventor: Neil PUTHUFF
-
Publication number: 20120246625Abstract: A method and system for creating uniquely representative execution path identifiers of software program. The method comprises the steps of running the software program, continuously accessing execution information of the software program, identifying execution sequences of the execution information, and creating a unique execution path identifier of each of the execution sequences by summing the execution information when the execution information is within a functional boundary thereof so as to create an execution path identifier representing a unique execution sequence of the execution information. The system comprises an execution path identification creator continuously receiving and accessing execution information of the software program, identifying execution sequences of the execution information and creating the unique execution path identifier of each of the execution sequences.Type: ApplicationFiled: March 23, 2012Publication date: September 27, 2012Inventor: Neil PUTHUFF
-
Patent number: 8271955Abstract: A method and system debug a computer program by using trace data, which is a recording of the sequence of machine instructions executed by a program during a time period along with the addresses and values of memory locations accessed and modified by each machine instruction. After the time period, the method and system use the trace data to simulate the execution of the program during the time period under the control of a debugger. In addition, the method and system use the trace data to simulate the execution of the program during the time period backwards in time under the control of the debugger.Type: GrantFiled: July 23, 2004Date of Patent: September 18, 2012Assignee: Green Hille Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Publication number: 20120174077Abstract: A method finds an error in a computer program. A plurality of execution breakpoints are set in the computer program. A portion of the execution of the computer program is simulated as recorded in the trace data in the reverse order until one a plurality of conditions is met, wherein one of the plurality of conditions is an attempt to execute a machine instruction associated with one of the plurality of execution breakpoints.Type: ApplicationFiled: March 7, 2012Publication date: July 5, 2012Applicant: GREEN HILLS SOFTWARE, INCInventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Publication number: 20120151451Abstract: A method finds an error in a computer program. A sequence of machine instructions performed by a processor is recorded as trace data. Further, at least one event is selected from a plurality of events. In addition, an operating system instruction address is determined for the at least one event. Further, at least a portion of the trace data is searched for the operating system instruction address. The execution time for an operating system instruction stored in the operating system instruction address is determined. The execution time is searched through in the database to find task related data. The task related data is displayed.Type: ApplicationFiled: February 13, 2012Publication date: June 14, 2012Applicant: GREEN HILLS SOFTWARE, INCInventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 8136096Abstract: A method finds an error in a computer program. A plurality of execution breakpoints are set in the computer program. A portion of the execution of the computer program is simulated as recorded in the trace data in the reverse order until one a plurality of conditions is met, wherein one of the plurality of conditions is an attempt to execute a machine instruction associated with one of the plurality of execution breakpoints.Type: GrantFiled: July 23, 2004Date of Patent: March 13, 2012Assignee: Green Hills Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 8132159Abstract: A method finds an error in a computer program. A sequence of machine instructions performed by a processor is recorded as trace data. Further, at least one event is selected from a plurality of events. In addition, an operating system instruction address is determined for the at least one event. Further, at least a portion of the trace data is searched for the operating system instruction address. The execution time for an operating system instruction stored in the operating system instruction address is determined. The execution time is searched through in the database to find task related data. The task related data is displayed.Type: GrantFiled: July 23, 2004Date of Patent: March 6, 2012Assignee: Green Hills Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 8015552Abstract: A method of validating a testing procedure in a computer program is disclosed. A sequence of machine code instructions performed by a processor is recorded as trace data. Further, a mapping file is accessed. In addition, a source line is translated into a plurality of machine code instructions according to a mapping found in the mapping file. Accordingly, at least a portion of the trace data is searched through to determine whether each machine instruction in the plurality of machine instructions has been executed. An indication is displayed of whether any of the machine instructions in the plurality of machine instructions has been executed.Type: GrantFiled: July 23, 2004Date of Patent: September 6, 2011Assignee: Green Hills Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Patent number: 7653899Abstract: A method for finding an error in a computer program is disclosed. A sequence of machine instructions performed by a processor is recorded as trace data. A mapping file is accessed. A source code instruction is translated into a machine code instruction according to a mapping found in the mapping file. Further, at least a portion of the trace data is searched through until the machine code instruction is found. In addition, a first execution time of the machine code instruction is determined by reviewing the trace data in a first vicinity that an address of the machine code instruction is located. Further, a second execution time of the next machine code instruction is determined by reviewing the trace data in a second vicinity that an address of the next machine code instruction is located. Accordingly, performance data is calculated by subtracting the first execution time from the second execution time. The performance data is displayed.Type: GrantFiled: July 23, 2004Date of Patent: January 26, 2010Assignee: Green Hills Software, Inc.Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff
-
Publication number: 20060190930Abstract: The invention is directed to instrumenting object code of an application and/or an operating system on a target machine so that execution trace data can be generated, collected, and subsequently analyzed for various purposes, such as debugging and performance. Automatic instrumentation may be performed on an application's object code before, during or after linking. A target machine's operating system's object code can be manually or automatically instrumented. By identifying address space switches and thread switches in the operating system's object code, instrumented code can be inserted at locations that enable the execution trace data to be generated. The instrumentation of the operating system and application can enable visibility of total system behavior by enabling generation of trace information sufficient to reconstruct address space switches and context switches.Type: ApplicationFiled: February 18, 2005Publication date: August 24, 2006Inventors: Daniel Hecht, Michael Lindahl, David Kleidermacher, Gregory Davis, Neil Puthuff