Using Breakpoint Patents (Class 717/129)
-
Patent number: 12210439Abstract: A real-time debugger implementation maintains and manages multiple debug contexts allowing developers to interact with real-time applications without “breaking” the system in which the debug application is executing. The debugger allows multiple debug contexts to exist and allows break points in real-time and non-real-time code portions of one or more applications executing on a debug enabled core of a processor. A debug monitor function may be implemented as a hardware logic module on the same integrated circuit as the processor. Higher priority interrupt service requests may be serviced while otherwise maintaining a context for the debug session (e.g., stopped at a developer defined breakpoint). Accordingly, the application developer executing the debugger may not have to be concerned with processing occurring on the processor that may be unrelated to the current debug session.Type: GrantFiled: March 11, 2022Date of Patent: January 28, 2025Assignee: TEXAS INSTRUMENTS INCORPORATEDInventors: Jason Lynn Peck, Gary A. Cooper, Markus Koesler
-
Patent number: 12190128Abstract: A method includes receiving, at a processor, (1) machine-readable binary code to be executed at a target processor and (2) a machine-readable control flow pattern that includes one or more library function calls. The method also includes identifying, via the processor, an indication of an execution path in the machine-readable binary code based on the machine-readable control flow pattern. The method also includes transmitting, via the processor, a signal that indicates that the machine-readable binary code includes the one or more library function calls included in the machine-readable control flow pattern.Type: GrantFiled: October 31, 2023Date of Patent: January 7, 2025Assignee: Affirm Logic CorporationInventors: Yanni Kouskoulas, Ada Lindberg, Arion Lawrence, Chris O'Ferrell
-
Patent number: 12175340Abstract: We describe a computing machine (ex-machine) that uses self-modification and randomness to enhance computation. An ex-machine program can compute languages that a standard machine cannot compute. An ex-machine has three types of instructions: standard, meta and random. One or more meta instructions self-modify the machine as it executes. Sometimes standard instructions are expressed in the C programming language or a hardware description language (VHDL). In an embodiment, random instructions take measurements from a random source that measures quantum events. In an embodiment, an ex-machine receives a computer program as input, containing only standard instructions. An ex-machine can combines random instructions and meta instructions to self-modify its instructions, so that it can evolve to compute (verify) the correctness of the computer program that it received as input.Type: GrantFiled: August 30, 2022Date of Patent: December 24, 2024Assignee: Aemea Inc.Inventor: Michael Stephen Fiske
-
Patent number: 12153970Abstract: Systems and methods include reception of an indication of a first event associated with a first object instance.Type: GrantFiled: September 7, 2022Date of Patent: November 26, 2024Assignee: SAP SEInventors: Michael Hettich, Andre Klahre, Alexander Koenig
-
Patent number: 12079107Abstract: A debugging support program causes a computer to execute: a step of extracting, from a module program constituting a sequence program, a first variable assigned to an input to the module program and a second variable assigned to an output from the module program; a step of creating a verification item for verifying operation of the module program, the verification item including a first setting value set for the first variable and a second setting value set for the second variable; a step of verifying operation of the module program based on the verification item; and a step of outputting a result of verifying operation of the module program.Type: GrantFiled: March 2, 2021Date of Patent: September 3, 2024Assignee: MITSUBISHI ELECTRIC CORPORATIONInventor: Yuta Kawakami
-
Patent number: 12045154Abstract: A technique for collecting state information of an apparatus comprising a processing pipeline for executing a sequence of instructions, and interesting instruction designation circuitry for identifying at least one of the instructions in the sequence as being an interesting instruction. Each interesting instruction is an instruction for which given state information of the apparatus associated with execution of that interesting instruction is to be collected. The interesting instruction designation circuitry is arranged, for each identified interesting instruction, to apply defined selection criteria to determine a further instruction later in the sequence of instructions than the interesting instruction, and to mark that further instruction as having a synchronous exception associated therewith. The processing pipeline is responsive to the further instruction, which causes the processing pipeline to execute a given exception handling routine in order to collect the given state information.Type: GrantFiled: May 13, 2021Date of Patent: July 23, 2024Assignee: Arm LimitedInventors: John Michael Horley, Michael John Williams, Mark Salling Rutland, Alasdair Grant
-
Patent number: 11972265Abstract: Systems and methods providing a parallel booting operating system. In one implementation, a primary operating system is booted using a primary operating system image residing in a first disk partition. The primary operating system includes a base operating system and provides a first service. A secondary operating system is booted in parallel to the primary operating system. The secondary operating system is booted using a secondary operating system image residing in a second disk partition. The secondary operating system can include a copy of the base operating system, and can provide the first service and a second service. Responsive to a triggering event, the primary operating system is switched to the secondary operating system.Type: GrantFiled: April 22, 2022Date of Patent: April 30, 2024Assignee: Red Hat, Inc.Inventors: Leigh Griffin, Pierre-Yves Chibon
-
Patent number: 11803466Abstract: Disclosed herein are system, method, and device embodiments for implementing dynamic codeless logging in an integration platform system. An integration platform may provide a declaratively-configurable asset pre-configured to implement a logging functionality associated with a log point, package the declaratively-configurable asset within an integration application, and receive a selection of the log point associated with the declaratively-configurable asset. In addition, the integration application may generate log information corresponding to the log point based on the selection of the log point and the logging functionality. Further, the integration platform may present the log information within a graphical user interface.Type: GrantFiled: September 27, 2022Date of Patent: October 31, 2023Assignee: Salesforce, Inc.Inventors: Andrew Craig Bragdon, Ignacio Agustin Manzano, Agustin Lopez Gabeiras
-
Patent number: 11656973Abstract: According to embodiments of the present disclosure, a method of debugging datacentric programming languages, a computer program product, and a computer system. The method may comprise receiving, by a processor, an expression to be evaluated against an input data structure; evaluating, by the processor, the expression to produce an output data structure, wherein the evaluating comprises automatically augmenting the input data structure with positional metadata; receiving a user selection of a data element from a datacentric programming element; and in response to the user selection, by the processor, using the positional metadata to display a providence of the selected data element.Type: GrantFiled: January 26, 2021Date of Patent: May 23, 2023Assignee: International Business Machines CorporationInventors: Andrew John Coleman, John Anthony Reeve
-
Patent number: 11507578Abstract: A method includes receiving a query expression indicating an expression evaluation for performance upon output of a filtering operator. An operator execution flow indicating performance of the filtering operator serially after the expression evaluation is generated, and execution of this operator execution flow is facilitated by generating an exception column indicating an exception value generated for each of a set of rows based on performing the expression evaluation. The filtering operator of the operator execution flow can be applied by identifying a subset of the set of rows that meet filtering parameters of the filtering operator. When the exception value of at least one row in the subset indicates an error condition, execution of the operator execution flow is aborted. When the exception value of every row in the subset indicates no error, the subset of the set of rows is outputted and execution of the operator execution flow continues.Type: GrantFiled: October 19, 2020Date of Patent: November 22, 2022Assignee: Ocient Holdings LLCInventor: Jason Arnold
-
Patent number: 11507413Abstract: A tracking method, an apparatus, a device, and a machine-readable medium are provided. The method specifically includes: writing a tracking result of an activity of an operating system and/or a running activity of a program into a buffer when an interrupt is disabled; and reading and sending the tracking result from the buffer when the interrupt is enabled. The embodiments of the present disclosure can effectively shorten the maximum time during which interrupts are disabled for an operating system, and thereby can effectively improve the performance of the operating system and/or a program.Type: GrantFiled: December 24, 2019Date of Patent: November 22, 2022Assignee: Alibaba Group Holding LimitedInventors: Lingjun Chen, Bin Wang, Liangliang Zhu, Xu Zeng, Zilong Liu, Junjie Cai
-
Patent number: 11422920Abstract: This document describes debugging multiple instances of code by detecting a variance in thread patterns of threads of execution relative to the multiple instances of executing code. A first instance of the code is executed and a first thread pattern is identified indicative of a first plurality of threads of execution of the first instance of the code. A second instance of the code is executed, the second instance of the code beginning executing prior to the first instance of the code completing executing, and a second thread pattern is identified indicative of a second plurality of threads of execution of the second instance of the code. A comparative representation of the first thread pattern and the second thread pattern is generated relative to each other. A variance between the first thread pattern and the second thread pattern relative to the comparative representation is identified, the variance typically being indicative of a bug in the code.Type: GrantFiled: March 12, 2020Date of Patent: August 23, 2022Assignee: Micro Focus LLCInventor: Douglas Grover
-
Patent number: 11397662Abstract: A method for debugging a program, based on simulating an object program and comparing simulated waveforms with standard waveforms are applied in an electronic device. A simulated environment corresponding to the object program is established and multiple instructions from code of the object program are mapped against the standard waveforms. Trigger points are set in the object program, the object program is run from the trigger point and simulation waveforms are stored. The simulation waveforms are compared with the standard waveforms, and the location of a bug of the object program is found according a comparison. The bug may be resolved or cured. The electronic device utilizing the method is also disclosed.Type: GrantFiled: August 17, 2021Date of Patent: July 26, 2022Assignee: HON HAI PRECISION INDUSTRY CO., LTD.Inventors: Chun-Ming Lu, Chien-Fa Chen
-
Patent number: 11256481Abstract: Methods and systems for developing software can perform both compilation operations and read-evaluate-print-loop (REPL) operations on source code. In one embodiment, an integrated development environment can include a source code editor and a compiler and can perform the following operations: receiving source code and performing REPL operations as the source code is received; receiving edits in the source code for which REPL operations have been performed and compiling, by the compiler, the edited source code; and storing results of execution of the edited source code for use in subsequent REPL operations.Type: GrantFiled: May 28, 2019Date of Patent: February 22, 2022Assignee: APPLE INC.Inventors: Alexander B. Brown, Kenneth S. Orr, Matthew M. Patenaude, Murat N. Konar, Patrick R. Holley, Samuel C. Page
-
Patent number: 11188449Abstract: Automated exception resolution during a software development session based on previous exception encounters is disclosed. A first software development session of a user is monitored. A first exception during the first software development session is detected. In response to detecting the first exception, first contextual information is obtained from the computing device. The first contextual information and first exception information that identifies the first exception is stored in a storage device.Type: GrantFiled: May 31, 2016Date of Patent: November 30, 2021Assignee: Red Hat, Inc.Inventors: Jozef Hartinger, Lincoln Baxter, III, Joshua R. Kinlaw, Ian P. Hands
-
Patent number: 11175865Abstract: An information processing apparatus includes: a memory; and a processor configured to receive setting data that is used for an operation of the information processing apparatus, and upon a determination that the received setting data is formatted according to an old specification and the information processing apparatus has no setting data registered, convert and store the received setting data in a new format in the memory.Type: GrantFiled: June 11, 2020Date of Patent: November 16, 2021Assignee: FUJIFILM Business Innovation Corp.Inventor: Nobutaka Kato
-
Patent number: 11119846Abstract: A computer-implemented method includes identifying a set of anomalies during a runtime of a first set of replica application containers. The computer-implemented method further includes determining a root cause of the set of anomalies based, at least in part, on comparing uniform resource identifier (URI) requests generated by each replica application container in the set of replica application containers. The computer-implemented method further includes determining a first set of URI requests can be dropped, wherein each URI request in the first set of URI requests includes the root cause of the set of anomalies. The computer-implemented method further includes dropping the first set of URI requests during the runtime of the first set of replica application containers. A corresponding computer system and computer program product are also disclosed.Type: GrantFiled: January 9, 2020Date of Patent: September 14, 2021Assignee: International Business Machines CorporationInventors: Hitomi Takahashi, Tatsuhiro Chiba
-
Patent number: 10915433Abstract: Regression testing of software applications is described. Breakpoints are inserted in a programming code of an object to perform testing of all software applications that use the object. A processor in a computing device can receive data representing a programming code of a functionality of a software application rectifying a problem associated with the functionality of the software application. The processor can determine another software application executing the functionality. The processor can insert a breakpoint in the programming code of the functionality of the software application and the another software application. The breakpoint can be inserted at a location in the programming code of the software application where the problem was rectified. The processor can execute the programming code of the functionality including the inserted breakpoint. The processor can determine, based on the executing, whether the problem has been rectified in the software application and the another software application.Type: GrantFiled: December 15, 2017Date of Patent: February 9, 2021Assignee: SAP SEInventor: Anuradha Ug
-
Patent number: 10754690Abstract: A method dynamically adjusts the resources available to a processing unit of a distributed computer process executing on a multi-node computer system. The resources for the processing unit are adjusted based on the data other processing units handle or the execution path of code in an upstream or downstream processing unit in the distributed process or application.Type: GrantFiled: November 29, 2017Date of Patent: August 25, 2020Assignee: International Business Machines CorporationInventors: Michael J. Branson, John M. Santosuosso
-
Patent number: 10747647Abstract: A method, apparatus and system are provided for diagnosing a processor executing a stream of instructions by causing the processor to execute the stream of instructions in a sequence of stages with a diagnostic exception being taken between each stage. The method involves controlling the processor in a current stage, when a point is reached where the diagnostic exception is to be taken, to store in a storage location type indicator information comprising a type indicator for a current instruction in the stream and a type indicator for a next instruction in the stream. The diagnostic exception is then taken, causing a diagnostic operation to be performed which includes accessing the type indicator information from the storage location and, dependent on the type indicator for the current instruction and the type indicator for the next instruction, determining control information to identify at least one trigger condition for a next diagnostic exception.Type: GrantFiled: December 22, 2015Date of Patent: August 18, 2020Assignee: ARM LimitedInventors: Damien Robin Martin, Clément Marc Demongeot, Michael John Williams
-
Patent number: 10733076Abstract: Examples described herein generally relate to reporting faults in a graphics processing unit (GPU). A list of rendering instructions for causing the GPU to render graphics can be captured, and occurrence of a fault in executing the list of rendering instructions can be detected. A portion of the list of rendering instructions can be executed, in isolation from a second portion of the list of rendering instructions, based on detecting occurrence of the fault to identify the fault in the portion of the list of rendering instructions or the second portion of the list of rendering instructions. The portion of the list of rendering instructions or the second portion of the list of rendering instructions can be indicated as causing the fault.Type: GrantFiled: April 27, 2018Date of Patent: August 4, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Adrian Tsai, Shawn Lee Hargreaves
-
Patent number: 10613964Abstract: Systems and methods for processing breakpoints on a remotely located server computer are presented. In one embodiment, a breakpoint is set in a target program. This includes setting the breakpoint in a manner that does not block execution of the target program upon the breakpoint triggering. Additionally, executable instructions are included at the location in the target program of the breakpoint to generate a snapshot of debugger information regarding the target program. The snapshot information is then provided to a programmer's debugger for debugging purposes. Further, in setting the breakpoint, the breakpoint is conditioned by the programmer to trigger only upon the satisfaction of a set of conditional criteria corresponding to a logical execution context.Type: GrantFiled: May 4, 2017Date of Patent: April 7, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Jackson Davis, Nelson Mandela Billing, Nikhil Ravindra Joglekar
-
Patent number: 10521329Abstract: A debugging software system facilitates the process of debugging the execution of a program in environments where the user is not constantly present. The debugging software can perform automated debugging functionality without a user present, and using a notification program, notifies a user if and when a user's manual presence may be useful and/or necessary. The debugging software system may be particularly useful in environments where it is prohibitive to have a user constantly present (e.g., production environments). The software system facilitates the process of issuing prompt fixes to program defects (e.g., bugs) without updating the software and/or the original source code of the program.Type: GrantFiled: May 5, 2016Date of Patent: December 31, 2019Assignee: Intergral GmbHInventor: Darren Terence Pywell
-
Patent number: 10430168Abstract: Optimizations are provided for sibling calls. A sibling caller is marked to indicate that it may call a sibling routine or that it may call an external sibling routine. Based on the marking, certain processing is performed to facilitate use of sibling calls, particularly when the sibling routine being called is external to the caller.Type: GrantFiled: October 31, 2017Date of Patent: October 1, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Michael K. Gschwind
-
Patent number: 10359902Abstract: In one set of embodiments, methods, systems, and apparatus are provided that include presenting, by a computer system, a task flow in a popup component of an application user interface executing in a user interface layer, where the task flow executes in an application layer of the computer system, and also include communicating, by the computer system, a first notification from the application layer to the user interface layer in response to normal completion of the task flow, and updating, e.g., closing, the component in the application user interface based upon the first notification. A second notification may be communicated from the user interface layer to the application layer in response to a user interface event that is associated with the popup component and causes an abnormal termination of the task flow. Presenting may include displaying the task flow in a region component in the popup component.Type: GrantFiled: January 29, 2016Date of Patent: July 23, 2019Assignee: Oracle International CorporationInventors: Blake Sullivan, David Schneider, Gary Van Matre, Pavitra Subramaniam
-
Patent number: 10331289Abstract: Disclosed herein is a system and method for optimizing a developer's ability to find and navigate relevant documents, relationships, and other information related to an identifier in the code they are developing. An inline viewport is presented to the user in response to the user selecting an identifier in the code whereby the user is able to see relevant information related to the identifier in a spatially consistent location with the code they are investigating. Further, the developer has the ability to make changes to the code in the viewport without leaving the current editor.Type: GrantFiled: November 17, 2015Date of Patent: June 25, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Monty Hammontree, Murali Krishna Hosabettu Kamalesha, Brandon Adams, Steven John Clarke, Oleg Tkachenko, Zachary S Zaiss, John Tilford, David Pugh, Daniel Dole
-
Patent number: 10331541Abstract: Sharing data with various user devices may offer an opportunity for various software testing and troubleshooting procedures to optimally process software code and provide testing results to those interested parties. In one example method of operation, a procedure provides processing software code stored in a first file, identifying a number of bugs in the software code, creating a second file that includes the software code and inserting identifiers at locations in the software code identifying the bugs, creating a number of notifications identifying the second file and the identifiers, and transmitting the notifications to various user devices associated with the software code.Type: GrantFiled: June 14, 2016Date of Patent: June 25, 2019Assignee: OPEN INVENTION NETWORK LLCInventor: David Gerard Ledet
-
Patent number: 10255088Abstract: Systems and methods are provided for modifying a set of memory pages. An example method includes loading kernel code and patching code of a kernel into a guest memory. The patching code is stored at a first range of memory addresses, which is in an executable mode in a first set of hypervisor page tables. The method also includes detecting a demand to modify a set of memory pages and sending a request to the hypervisor to transfer control to the patching code in response to detecting the demand. The hypervisor may switch from the first set of hypervisor page tables to a second set of hypervisor page tables in response to detecting a request to transfer control to the patching code. The set of memory pages is write-protected in the second set of hypervisor page tables, and is writable in the first set of hypervisor page tables.Type: GrantFiled: May 13, 2016Date of Patent: April 9, 2019Assignee: Red Hat Israel, Ltd.Inventor: Michael Tsirkin
-
Patent number: 10229033Abstract: A debugger executes on a computer system to receive a first debugging command from a client, where the first debugging command sets a first instruction in the reactive application to suspend execution of the reactive application, and where during execution of the reactive application the first instruction is triggered which suspends execution of the reactive application. Responsive to the execution of the reactive application being suspended, a system clock of the reactive application is replaced with a substitute clock and the substitute clock is paused. The debugger then receives a second debugging command, where the second debugging command triggers a second instruction in the reactive application to continue execution of the reactive application. Responsive to the execution of the reactive application being continued, clocking of the substitute clock is continued.Type: GrantFiled: June 2, 2017Date of Patent: March 12, 2019Assignee: Red Hat, Inc.Inventors: Jiri Pechanec, Martin Vecera
-
Patent number: 10223236Abstract: In an approach to identifying program bugs, one or more computer processor detect a first crash in a try block. The one or more computer processors determine a catch block executed in response to the crash. The one or more computer processors collect a first set of environment information based on the catch block. The one or more computer processors create a first breakpoint where the first crash occurs. The one or more computer processors detect a second crash in the try block using a first pattern associated with the first crash based on the first set of environment information. The one or more computer processors collect a second set of environment information based on the catch block. The one or more computer processors create a second breakpoint where the second crash occurs.Type: GrantFiled: February 3, 2017Date of Patent: March 5, 2019Assignee: International Business Machines CorporationInventors: James E. Carey, Jim C. Chen, John M. Santosuosso
-
Patent number: 9990205Abstract: A verification method of a system on chip includes receiving a test generator and an exception handler; generating, by the test generator, a test program including an exception-causing instruction based on a test template; executing a first instruction at a first operating state as the test program is executed; stopping the execution of the test program and performing a fixed instruction sequence included in the exception handler when the exception-causing instruction is executed during the execution of the test program; and resuming the test program from a second instruction at a second operating state set after the fixed instruction sequence is performed, the second instruction corresponding to an address adjacent to an address of the exception-causing instruction.Type: GrantFiled: September 6, 2016Date of Patent: June 5, 2018Assignee: Samsung Electronics Co., Ltd.Inventors: Sung-Boem Park, Jin-Sung Park, Ara Cho
-
Patent number: 9858172Abstract: An apparatus and method are provided for controlling debugging of program instructions that include a transaction, where the transaction is executed on processing circuitry and comprises a number of program instructions that execute to generate updates to state data, and where those updates are only committed if the transaction completes without a conflict. In addition to the processing circuitry, the apparatus has control storage for storing at least one watchpoint identifier, and the processing circuitry is then arranged, when detecting a watchpoint match condition with reference to the at least one watchpoint identifier during execution of a program instruction within the transaction, to create a pending watchpoint debug event. The processing circuitry is then responsive to execution of the transaction finishing to initiate a watchpoint debug event for the pending watchpoint debug event.Type: GrantFiled: January 27, 2016Date of Patent: January 2, 2018Assignee: ARM LimitedInventor: Michael John Williams
-
Patent number: 9817745Abstract: Disclosed is a system and method for setting breakpoints (BPs) that cannot be detected by code being debugged, e.g., to trap transparently at any instruction. The disclosed system and method permits execution tracing and instrumentation of binaries, including malware. The system and method can be used to analyze benign software also, e.g., software obfuscated for anti-reverse-engineering. An invisible breakpoint (IBP) is not detectable by the “guest,” the program being debugged. Hardware virtualization is used to split the code and data views of the program's text segment(s).Type: GrantFiled: January 13, 2015Date of Patent: November 14, 2017Assignee: PURDUE RESEARCH FOUNDATIONInventors: Xiangyu Zhang, Zhui Deng, Dongyan Xu
-
Patent number: 9747190Abstract: According to an embodiment, a system includes an analysis generator, a trace difference generator, a program difference generator, and an analyzer. The analysis generator is configured to generate program information required in executing a program, generate trace information providing a description of an execution at particular timing, based on the program information, and generate a trace correspondence between the trace and program information. The trace difference generator is configured to generate a trace difference between first and second trace information. The program difference generator is configured to generate a program difference between first and second program information. The analyzer is configured to analyze a correspondence relation between the differences and the program information based on the trace correspondence.Type: GrantFiled: July 17, 2014Date of Patent: August 29, 2017Assignee: Kabushiki Kaisha ToshibaInventors: Nobuaki Tojo, Hidenori Matsuzaki, Akira Kuroda, Mayuko Koezuka
-
Patent number: 9667746Abstract: Tools are provided to assist users of cloud computing systems to create, monitor, and debug the resource instances they need. Specifically, resource instances are created in a cloud computing system based on a blueprint that is provided to a blueprint processor. The blueprint declaratively defines the resources that the user needs to have created in the cloud. Based on the information contained in blueprint, the blueprint processor causes the cloud to orchestrate the creation of resource instances, doing so in parallel when possible, and to configure those resource instances as specified in blueprint. Techniques are described for generating a timeline to convey status during the deployment process, and for performing debugging operations.Type: GrantFiled: January 16, 2013Date of Patent: May 30, 2017Assignee: Oracle International CorporationInventors: Jonathan Asher Bauer, Guillaume Nicolas Vambenepe, Frederick H. Carter
-
Patent number: 9659012Abstract: In various embodiments, a data integration system is disclosed which enables users to debug distributed data integration scenarios which are platform and technology independent. A debugger client can connect to a plurality of local and/or remote hosts executing portions of a distributed data integration scenario. The debugger client can additionally enable line-by-line debugging of the portions of the distributed data integration scenario using a plurality of language-specific interfaces. The language-specific interfaces can further enable the user to dynamically update and debug changes to the code during debugging, reducing the time and resources required by multiple recompilations of the code.Type: GrantFiled: September 30, 2013Date of Patent: May 23, 2017Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Sachin Thatte, Sebu Thomas Koleth, Vikas Varma
-
Patent number: 9652359Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for generating natural keys for software annotations. One of the methods includes receiving a source code representation of a collection of source code, the source code having an annotation attached to a particular source code element in the source code. An index is generated for the annotation, the index representing a position of the annotation in an order of all annotations attached to the particular source code element. A natural key is generated for the annotation including combining a key of the particular source code element and the index for the annotation. A data entry is generated for the annotation, the data entry having the natural key for the annotation.Type: GrantFiled: October 27, 2016Date of Patent: May 16, 2017Assignee: Semmle LimitedInventors: Alexander Spoon, Julian Tibble
-
Patent number: 9632910Abstract: This disclosure provides software that identifies a variable in a computer program as a target variable. The software automatically processes a first source code statement in the computer program for the target variable. The software determines if the target variable is not found in the particular processed statement and progresses through preceding statements until the target variable is found. The software determines if the particular statement involves an indirect assignment to the target variable and can return that particular statement as the origination statement. Additionally, the software determines if the particular statement involves a direct assignment to the target variable from a second variable. If the particular statement involves a direct assignment to the target variable from a second variable, the software can change the target variable to the second variable and can progress through preceding statements until the new target variable is found in a particular of the statements.Type: GrantFiled: December 16, 2008Date of Patent: April 25, 2017Assignee: SAP SEInventor: Udo Klein
-
Patent number: 9632912Abstract: A system and method of debugging a program may include obtaining a selection of a portion of the program which is between trackable inputs and outputs. The method may also include simulating an execution on the portion of the program, by providing input data via the inputs that was input through said inputs during a recorded execution of the program. The method may further include presenting information relating to the simulated execution on an output device.Type: GrantFiled: March 28, 2014Date of Patent: April 25, 2017Assignee: CADENCE DESIGN SYSTEMS, INC.Inventors: Nadav Chazan, Yonatan Ashkenazi
-
Patent number: 9575872Abstract: A streams manager monitors data tuples processed by a streaming application represented by an operator graph. The streams manager includes a tuple breakpoint mechanism that allows defining a tuple breakpoint that fires when a tuple has been in the operator graph too long. What constitutes too long can be defined in a number of different ways, including a time limit, a processing limit for multiple operators, and a processing limit for an individual operator. When the tuple breakpoint fires, one or more operators in the operator graph are halted according to specified halt criteria. Information corresponding to the breakpoint that fired is then displayed. The tuple breakpoint mechanism thus provides a way to debug a streaming application that may have data tuples that stay in the operator graph too long.Type: GrantFiled: July 31, 2015Date of Patent: February 21, 2017Assignee: International Business Machines CorporationInventors: Eric L. Barsness, Michael J. Branson, John M. Santosuosso
-
Patent number: 9575870Abstract: A streams manager monitors data tuples processed by a streaming application represented by an operator graph. The streams manager includes a tuple breakpoint mechanism that allows defining a tuple breakpoint that fires when a tuple has been in the operator graph too long. What constitutes too long can be defined in a number of different ways, including a time limit, a processing limit for multiple operators, and a processing limit for an individual operator. When the tuple breakpoint fires, one or more operators in the operator graph are halted according to specified halt criteria. Information corresponding to the breakpoint that fired is then displayed. The tuple breakpoint mechanism thus provides a way to debug a streaming application that may have data tuples that stay in the operator graph too long.Type: GrantFiled: July 23, 2015Date of Patent: February 21, 2017Assignee: International Business Machines CorporationInventors: Eric L. Barsness, Michael J. Branson, John M. Santosuosso
-
Patent number: 9575913Abstract: A technique for handling cache-inhibited operations in a data processing system includes receiving, at a topology specific replicated bus unit, a cache-inhibited (CI) operation that is scope limited. The replicated bus unit determines whether an address associated with the CI operation matches an address for the replicated bus unit. In response to the address associated with the CI operation matching the address for the replicated bus unit, the replicated bus unit processes the CI operation based on the scope being limited to that of the replicated bus unit. In response to the address associated with the CI operation not matching the address for the replicated bus unit, the replicated bus unit ignores the CI operation.Type: GrantFiled: December 7, 2015Date of Patent: February 21, 2017Assignee: International Business Machines CorporationInventors: Richard L. Arndt, Florian Auernhammer, Hugh Shen, Derek E. Williams
-
Patent number: 9557987Abstract: A method and system is provided for auto formatting changes to computer program source code stored in a code repository. The code comprises a plurality of separately identifiable sections each of which includes non-functional formatting information which differs between at least some of the sections. In response to a user input request a selected source code section is extracted and edited via a user interface. A set of formatting rules is determined automatically from at least the code section being edited. This set of rules is one of a plurality of possible sets corresponding to the separately identifiable sections. The edited code is then formatted according to the determined set of formatting rules and stored in the code repository.Type: GrantFiled: February 5, 2008Date of Patent: January 31, 2017Assignee: International Business Machines CorporationInventors: Gareth Edward Jones, Andrew John Owen, Matthew Whitehead
-
Patent number: 9507691Abstract: A method, computer program product, and computer system for setting, at a computing device, a breakpoint of a plurality of breakpoints for use by a debugger at an entry point of a plurality of entry points for a component of a plurality of components, wherein the breakpoint is set automatically. While executing the debugger on the component, it is determined whether the breakpoint is reached from outside of the component by a program. If the breakpoint is reached from outside of the component, the program executed by the debugger stops. If the breakpoint is reached from inside of the component, the program executed by the debugger continues.Type: GrantFiled: January 10, 2014Date of Patent: November 29, 2016Assignee: International Business Machines CorporationInventors: Marlin R. Deckert, Si Bin Fan, Jian Jiang, De Zhi Mou, Fang Wang, Jiang Li Wu
-
Patent number: 9489287Abstract: An on-chip system uses a time measurement circuit to trap code that takes longer than expected to execute by breaking code execution on excess time consumption.Type: GrantFiled: August 23, 2013Date of Patent: November 8, 2016Assignee: Atmel CorporationInventor: Ingar Hanssen
-
Patent number: 9477581Abstract: The system and method presented provides a multi-phase, end-to-end integrated process for testing application software using a standard software testing tool. The system and method involve integrating the functional, automated regression and performance phases of software application testing by leveraging deliverables at each phase so that the deliverables may be efficiently reused in subsequent test phases. Deliverables such as functional and technical test conditions and manual test scripts are used as inputs for each phase of the integrated tests. The use of leveraged requirements-based deliverables between test phases significantly reduces much of the repetitive testing typically associated with functionality and performance testing and minimizes repetition of testing errors discovered in earlier test phases.Type: GrantFiled: March 26, 2013Date of Patent: October 25, 2016Assignee: JPMorgan Chase Bank, N.A.Inventors: Morrisha Hudgons, Michael E. Frank, Judit Lukashevich, Alex Rheingans
-
Patent number: 9459989Abstract: A method and apparatus for reverse debugging source code using causal analysis is disclosed. The method comprises executing byte-code created from a plurality of lines of source code, wherein the plurality of lines of source code comprise at least one breakpoint; storing execution data after execution of each line of source code in the plurality of lines of source code until execution reaches the at least one breakpoint; performing a code execution analysis using the execution data and the plurality of lines of source code; receiving an input via a graphical user interface (GUI), wherein the input requests specific execution details based on the code execution analysis; and responding via the GUI to the input.Type: GrantFiled: July 26, 2012Date of Patent: October 4, 2016Assignee: ADOBE SYSTEMS INCORPORATEDInventor: Anirudh Sasikumar
-
Patent number: 9438673Abstract: Tenant changes are received at a multi-tenant service. The tenant changes are segmented, by tenant, and individual update streams are established with individual tenant stream processors. Each tenant stream processor makes changes for a given tenant, until the changes for that tenant are completed.Type: GrantFiled: July 16, 2014Date of Patent: September 6, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Vipul Bansal, Marcus Vinicius Silva Gois, Mark Coburn, Suraj Gaurav, Swaminathan Pattabiraman
-
Patent number: 9424309Abstract: The present disclosure proposes the method for optimizing the performance of data base/web-service backed applications by automatically prefetching query results. The proposed system and methods automatically insert prefetch instructions at the earliest possible points across procedure calls in application source code, in presence of conditional branching and loops. A data flow analysis technique called anticipable expressions analysis is extended, to analyze anticipability of queries. The benefit of prefetching is limited due to the presence of assignment statements and conditional branches that precede the query execution statement. Enhancements such as code motion, chaining and rewriting prefetch requests are devised to increase benefits of prefetching. These techniques perform equivalence preserving program and query transformations.Type: GrantFiled: January 8, 2014Date of Patent: August 23, 2016Assignee: INDIAN INSTITUTE OF TECHNOLOGY BOMBAYInventors: Karthik Ramachandra, Sundararajarao Sudarshan
-
Patent number: 9372693Abstract: Embodiments of the invention relate to implementing run-time instrumentation sampling in transactional-execution mode. An aspect of the invention includes a method for implementing run-time instrumentation sampling in transactional-execution mode. The method includes determining, by a processor, that the processor is configured to execute instructions of an instruction stream in a transactional-execution mode, the instructions defining a transaction. The method also includes interlocking completion of storage operations of the instructions to prevent instruction-directed storage until completion of the transaction. The method further includes recognizing a sample point during execution of the instructions while in the transactional-execution mode. The method additionally includes run-time-instrumentation-directed storing, upon successful completion of the transaction, run-time instrumentation information obtained at the sample point.Type: GrantFiled: March 7, 2013Date of Patent: June 21, 2016Assignee: International Business Machines CorporationInventors: Jonathan D. Bradbury, Charles W. Gainey, Jr., Michael K. Gschwind