G06F8/53

Training and/or using neural network model to generate target source code from lower-level representation

Training and/or utilization of a neural decompiler that can be used to generate, from a lower-level compiled representation, a target source code snippet in a target programming language. In some implementations, the lower-level compiled representation is generated by compiling a base source code snippet that is in a base programming language, thereby enabling translation of the base programming language (e.g., C++) to a target programming language (e.g., Python). In some of those implementations, output(s) from the neural decompiler indicate canonical representation(s) of variables. Technique(s) can be used to match those canonical representation(s) to variable(s) of the base source code snippet. In some implementations, multiple candidate target source code snippets are generated using the neural decompiler, and a subset (e.g., one) is selected based on evaluation(s).

GENERATING EXECUTABLES FOR TARGET OPERATIONAL ENVIRONMENTS

In some examples, a computing device can include a memory resource storing instructions to cause a processor resource to disassemble a compiled executable of a native operational environment into assembly-based instructions, map each assembly-based instruction to a corresponding module of a target operational environment, and generate an executable for the target operational environment using the mapped modules of the target operational environment.

Replacing remote device functions

A software development infrastructure can enable user developers to select remote hardware devices to develop and test their software programs. For some tests and development activity, physical access to the remote device can be provided by the infrastructure administrator by replacing the internal calls of an application with mimic code, which can respond to application requests for sensor data, as if the user was physically handling the remote device at the same location.

Replacing remote device functions

A software development infrastructure can enable user developers to select remote hardware devices to develop and test their software programs. For some tests and development activity, physical access to the remote device can be provided by the infrastructure administrator by replacing the internal calls of an application with mimic code, which can respond to application requests for sensor data, as if the user was physically handling the remote device at the same location.

Security tool

An apparatus includes a memory and a hardware processor. The memory stores a plurality of conversion rules. The processor receives a first log from a server. The first log indicates that the server attempted to install a software patch. The processor converts, based on the plurality of conversion rules, the first log into a different format to produce a second log. The processor also determines, based on the second log, that the software patch install failed and determines a cause for the software patch install failure. The processor further determines a series of steps to remedy the cause and perform the series of steps to remedy the cause.

Security tool

An apparatus includes a memory and a hardware processor. The memory stores a plurality of conversion rules. The processor receives a first log from a server. The first log indicates that the server attempted to install a software patch. The processor converts, based on the plurality of conversion rules, the first log into a different format to produce a second log. The processor also determines, based on the second log, that the software patch install failed and determines a cause for the software patch install failure. The processor further determines a series of steps to remedy the cause and perform the series of steps to remedy the cause.

Language interoperability to automate code analysis

Language interoperability between source code programs not compatible with an interprocedural static code analyzer is achieved through language-independent representations of the programs. The source code programs are transformed into respective intermediate language instructions from which a language-independent control flow graph and a language-independent type environment is created. A program compatible with the interprocedural static code analyzer is generated from the language-independent control flow graph and the language-independent type environment in order to utilize the interprocedural static code analyzer to detect memory safety faults.

Language interoperability to automate code analysis

Language interoperability between source code programs not compatible with an interprocedural static code analyzer is achieved through language-independent representations of the programs. The source code programs are transformed into respective intermediate language instructions from which a language-independent control flow graph and a language-independent type environment is created. A program compatible with the interprocedural static code analyzer is generated from the language-independent control flow graph and the language-independent type environment in order to utilize the interprocedural static code analyzer to detect memory safety faults.

Perceptible Indicators That Wires are Attached Correctly to Controller
20230120713 · 2023-04-20 ·

Tools and techniques are described to automate line testing when wiring devices (such as equipment and sensors) to controllers. Controllers have access to databases of the devices that are controlled by them, including wiring diagrams and protocols, such that the controller can automatically check that each wire responds correctly to stimulus from the controller. After testing, a reporting device rapidly shows the results of the line testing.

Perceptible Indicators That Wires are Attached Correctly to Controller
20230120713 · 2023-04-20 ·

Tools and techniques are described to automate line testing when wiring devices (such as equipment and sensors) to controllers. Controllers have access to databases of the devices that are controlled by them, including wiring diagrams and protocols, such that the controller can automatically check that each wire responds correctly to stimulus from the controller. After testing, a reporting device rapidly shows the results of the line testing.