Patent classifications
G06F11/362
MITIGATING SOFTWARE-UPDATE RISKS FOR END USERS
Software-update risks can be mitigated for end users by implementing some examples described herein. In one example, a system can receive an indication that an end user used a particular feature of an existing version of a software application on a computing device of the end user. The system can also determine that an update for the software application includes a code change to the particular feature. The system can generate a risk score for the update based on the code change. The system can then generate a graphical user interface indicating the risk score for the end user. This may assist the end user in determining whether to apply the update to the existing version of the software application.
SYSTEM FOR EXPRESSION EVALUATION AT DEBUG TIME
A system for expression evaluation at debug time includes a debugger which receives an executable program with debugging information from a compiler, where the executable program with the debugging information is generated by compiling a source code program and generating debugging information corresponding to the executable program. The compiler embeds at least a first abstract syntax tree of a first expression of the source code program in the debugging information. The debugger receives a first debugging command from a debugger client to evaluate a selected portion of the first expression. The debugger determines one or more nodes of the abstract syntax tree that correspond to the selected portion of the first expression. The debugger then steps through and evaluates the one or more nodes of the abstract syntax tree and returns one or more values generated by the evaluation.
Preservation of Modifications After Overlay Removal from a Container
An example method of preserving a modification to an internal state of a computer system includes applying an overlay on a target container. The overlay includes a set of events corresponding to a first set of modifications to a computer system. The method also includes after applying the overlay, receiving a set of user requests corresponding to a second set of modifications to the computer system. The method further includes changing, based on the set of user requests, the third set of internal states of the computer system to the fourth set of internal states. The method also includes removing the overlay from the target container, while preserving the second set of modifications to the computer system.
IDENTIFYING SOFTWARE DEPENDENCIES USING CONTROLLER CODE MODELS
Disclosed herein are techniques for identifying software dependencies based on functional line-of-code behavior and relation models. Techniques include accessing a first line-of-code behavior and relation model representing execution of functions of a first portion of executable code, the first portion of executable code being associated with a first symbol; detecting a change to the first portion of executable code; constructing, based on the changed first portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the changed first portion of executable code; determining, based on the constructed second model, a dependency between (i) the changed first portion of executable code or the first symbol and (ii) a second symbol; and generating, based on the determined difference, a report identifying the dependency.
INSTRUCTION SAMPLING WITHIN TRANSACTIONS
A data processing apparatus (4) includes processing circuitry (6) for executing program instructions that form part of a transaction which executes to generate speculative updates and to commit the speculative updates if the transaction completes without a conflict. Instruction sampling circuitry (44) captures instruction diagnostic data (IDD) relating to execution of a sampled instruction. Transaction tracking circuitry (46) detects if the sampled instruction is within a transaction and if so, tracks whether the speculative updates associated with the transaction are committed and captures transaction diagnostic data (TDD) indicative of whether or not the speculative updates were committed. Thus, both instruction diagnostic data relating to a sampled instruction and transaction diagnostic data relating to the fate of a transaction containing a sampled instruction are captured.
DETERMINING A SOURCE OF A VULNERABILITY IN SOFTWARE
Systems and methods are disclosed herein for determining a source of leaked sensitive data (e.g., passwords, insecure coding, log information, any information that should not exist, etc.) in compiled software applications. According to some aspects, a computing device (e.g., a software analysis device, a cloud-computing device, a server, a smart device, binary file/code scanner, etc.) may receive scan pattern information and a binary file of a software application. The computing device may be configured to determine one or more executable files of the software application based on the binary file. Based on the scan pattern information and the one or more executable files, the computing device may determine location information for one or more sensitive data elements configured with the software application. The computing device may use the location information for each of the one or more sensitive data elements to determine a respective source of the sensitive data element.
Real-time error debugging
In an approach to improve resolving defects within computer hardware, programs, software, or systems, embodiments pause mainline traffic and isolating interface or retention issues, and determine one or more types of errors in an event of a mainline traffic fail, wherein debug techniques are applied to fail information to resolve or further diagnose the one or more types of errors, and wherein the debug techniques are tracked and categorized. Additionally, embodiments apply corrective read actions to a detected error based on previously stored corrective actions associated with the detected error, and responsive to identifying no additional actions are required, restoring a collected system data. Further, embodiments, resume the paused mainline traffic.
MONITORING UTILIZATION OF TRANSACTIONAL PROCESSING RESOURCE
An apparatus (2) may have a processing element (4) for performing data access operations to access data from at least one storage device (10, 12, 14). The processing element may have at least one transactional processing resource (10, 18) supporting processing of a transaction in which data accesses are performed speculatively following a transaction start event and for which the speculative results are committed in response to a transaction end event. Monitoring circuitry (30) captures monitoring data indicating a degree of utilization of the transactional processing resource (10, 18) when processing the transaction.
IMAGE FORMING APPARATUS, CONTROL METHOD, AND PROGRAM
An image forming apparatus includes: a converter that applies unidirectional one-to-one conversion to possible target data that has a possibility of becoming a target of legal regulations; and a log outputter that outputs a debug log including conversion result data obtained by the one-to-one conversion.
Visualization of code execution through line-of-code behavior and relation models
Disclosed herein are techniques for visualizing and configuring controller function sequences. Techniques include identifying at least one executable code segment associated with a controller; analyzing the at least one executable code segment to determine at least one function and at least one functional relationship associated with the at least one code segment; constructing, a software functionality line-of-code behavior and relation model visually depicting the determined at least one function and at least one functional relationship; displaying the software functionality line-of-code behavior and relation model at a user interface; receiving a first input at the interface; in response to the received first input, animating the line-of-code behavior and relation model to visually depict execution of the at least one executable code segment on the controller; receiving a second input at the interface; and in response to the received second input, animating an update to the line-of-code behavior and relation model.