Patents by Inventor Julian Philip Smith
Julian Philip Smith 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: 11030076Abstract: A method of generating an output log for analysis of a computer program, the method comprising: receiving a recording of an execution of the program; receiving an additional print instruction to print a value of a data item and an indication of a point in the program at which the additional print instruction is to be evaluated; determining a corresponding point in the recording of the execution based upon the indication of the point in the program; and evaluating the additional print instruction based upon the recording of the execution and the determined corresponding point to determine an output of the additional print instruction for insertion into the output log.Type: GrantFiled: December 20, 2017Date of Patent: June 8, 2021Assignee: Undo Ltd.Inventors: Gregory Edward Warwick Law, Julian Philip Smith, Thomas Paul Perry, Nicholas Peter Bull, Geoffrey Finn Grimwood
-
Patent number: 10761966Abstract: A method of generating program analysis data for analysing the operation of a computer program. The method comprises, executing an instrumented process of the computer program to define a reference execution of the program, intercepting a call to a library function by the instrumented process, executing the library function in an uninstrumented process, for the uninstrumented process, capturing in a log, only data generated by or modified through the execution of the library function required by the instrumented process to continue execution of the program, and wherein the captured log is arranged to enable deterministically reproducing the effect of the library function call on the instrumented process upon re-running of the reference execution based upon the captured log to generate the program analysis data.Type: GrantFiled: August 30, 2019Date of Patent: September 1, 2020Assignee: Undo Ltd.Inventors: Nicholas Peter Bull, Julian Philip Smith, Gregory Edward Warwick Law
-
Publication number: 20190391905Abstract: A method of generating program analysis data for analysing the operation of a computer program. The method comprises, executing an instrumented process of the computer program to define a reference execution of the program, intercepting a call to a library function by the instrumented process, executing the library function in an uninstrumented process, for the uninstrumented process, capturing in a log, only data generated by or modified through the execution of the library function required by the instrumented process to continue execution of the program, and wherein the captured log is arranged to enable deterministically reproducing the effect of the library function call on the instrumented process upon re-running of the reference execution based upon the captured log to generate the program analysis data.Type: ApplicationFiled: August 30, 2019Publication date: December 26, 2019Inventors: Nicholas Peter Bull, Julian Philip Smith, Gregory Edward Warwick Law
-
Patent number: 10445215Abstract: A method of generating program analysis data for analyzing the operation of a computer program. The method comprises, executing an instrumented process of the computer program to define a reference execution of the program, intercepting a call to a library function by the instrumented process, executing the library function in an uninstrumented process, for the uninstrumented process, capturing in a log, only data generated by or modified through the execution of the library function required by the instrumented process to continue execution of the program, and wherein the captured log is arranged to enable deterministically reproducing the effect of the library function call on the instrumented process upon re-running of the reference execution based upon the captured log to generate the program analysis data.Type: GrantFiled: July 27, 2017Date of Patent: October 15, 2019Assignee: Undo Ltd.Inventors: Nicholas Peter Bull, Julian Philip Smith, Gregory Edward Warwick Law
-
Patent number: 10331545Abstract: A method of generating program analysis data for analyzing operation of a computer program includes running a first instrumented version of machine code representing the program, the running defines a reference execution of the program, and capturing a log of non-deterministic events during the reference execution such that the machine code can be re-run in a deterministic manner to reproduce states of a processor and memory during the re-running. The method also includes generating a second instrumented version of the machine code including instrumented machine code to replay execution of the machine code representing the program and to capture and store program state information during the replayed execution, the program state information includes one or both of one or more values of registers of the processor and one or more values of memory locations used by the program.Type: GrantFiled: May 12, 2016Date of Patent: June 25, 2019Assignee: UNDO LTD.Inventors: Julian Philip Smith, Gregory Law
-
Publication number: 20180173612Abstract: A method of generating an output log for analysis of a computer program, the method comprising: receiving a recording of an execution of the program; receiving an additional print instruction to print a value of a data item and an indication of a point in the program at which the additional print instruction is to be evaluated; determining a corresponding point in the recording of the execution based upon the indication of the point in the program; and evaluating the additional print instruction based upon the recording of the execution and the determined corresponding point to determine an output of the additional print instruction for insertion into the output log.Type: ApplicationFiled: December 20, 2017Publication date: June 21, 2018Inventors: Gregory Edward Warwick Law, Julian Philip Smith, Thomas Paul Perry, Nicholas Peter Bull, Geoffrey Finn Grimwood
-
Publication number: 20180032423Abstract: A method of generating program analysis data for analysing the operation of a computer program. The method comprises, executing an instrumented process of the computer program to define a reference execution of the program, intercepting a call to a library function by the instrumented process, executing the library function in an uninstrumented process, for the uninstrumented process, capturing in a log, only data generated by or modified through the execution of the library function required by the instrumented process to continue execution of the program, and wherein the captured log is arranged to enable deterministically reproducing the effect of the library function call on the instrumented process upon re-running of the reference execution based upon the captured log to generate the program analysis data.Type: ApplicationFiled: July 27, 2017Publication date: February 1, 2018Inventors: Nicholas Peter Bull, Julian Philip Smith, Gregory Edward Warwick Law
-
Publication number: 20160335172Abstract: A method is disclosed of generating program analysis data for analysing the operation of a computer program. The method includes running a first instrumented version of machine code representing the program, wherein said running defines a reference execution of said program, capturing a log of non-deterministic events during reference execution to reproduce states of a processor and memory during the re-running, generating a second instrumented version of machine code to replay execution of said machine code representing the program and to capture and store program state information, wherein said program state information comprises one or both of one or more values of registers of said processor and one or more values of memory locations used by said program, running said instrumented machine code whilst reproducing said non-deterministic events during said running to reproduce said reference execution; and capturing said program state information whilst reproducing said reference execution.Type: ApplicationFiled: May 12, 2016Publication date: November 17, 2016Inventors: JULIAN PHILIP SMITH, GREGORY LAW
-
Patent number: 9268666Abstract: We describe techniques which relate to bi-directional, in particular backwards, debugging of computer programs. Thus we describe identifying processes with shared memory access, such as threads or multicore processes, by arranging process (thread) memory ownership to deliberate provoke memory page faults to identify and handle concurrent memory access by multiple threads in such a manner as to enable deterministic replay, and hence backwards debugging.Type: GrantFiled: December 1, 2011Date of Patent: February 23, 2016Assignee: UNDO LTD.Inventors: Gregory Edward Warwick Law, Julian Philip Smith
-
Publication number: 20120096441Abstract: We describe techniques which relate to bi-directional, in particular backwards, debugging of computer programs. Thus we describe identifying processes with shared memory access, such as threads or multicore processes, by arranging process (thread) memory ownership to deliberate provoke memory page faults to identify and handle concurrent memory access by multiple threads in such a manner as to enable deterministic replay, and hence backwards debugging.Type: ApplicationFiled: December 1, 2011Publication date: April 19, 2012Inventors: Gregory Edward Warwick Law, Julian Philip Smith
-
Patent number: 8090989Abstract: The present invention relates to debugging of computer programs, and in particular to bi-directional debugging.Type: GrantFiled: October 11, 2006Date of Patent: January 3, 2012Inventors: Gregory Edward Warwick Law, Julian Philip Smith
-
Publication number: 20080301417Abstract: The present invention relates to debugging of computer programs, and in particular to bi-directional debugging.Type: ApplicationFiled: October 11, 2006Publication date: December 4, 2008Inventors: Gregory Edward Warwick Law, Julian Philip Smith