Patent classifications
G06F8/54
PROGRAM DEVELOPMENT DEVICE, PROJECT CREATION METHOD, AND STORAGE MEDIUM
This program development device comprises: a storage unit which holds a project; and an update means which imports one or a plurality of program modules into the project. Each of the program modules contains a program, and can define a first variable which is a variable that can be referenced among all program modules, a second variable which is a variable that can be referenced among the plurality of program modules, and a third variable which is a variable referenced in each program module. The update means maintains the variable name of the first variable contained in the imported program module, and when the variable name of the second variable contained in the imported program module overlaps the variable name of the second variable contained in any of the program modules of the project, the update means accepts a change of the overlapping variable name.
Methods for User Interface Generation and Application Modification
A method of generating a user interface for presentation to a user. The method comprises executing a first application computer program to provide a user interface, executing agent computer program code to interrogate and modify said user interface during execution of said first application computer program, and presenting said modified user interface. The first application computer program may be run on a server, while the modified user interface may be presented to a user at a client connected to said server.
Methods for User Interface Generation and Application Modification
A method of generating a user interface for presentation to a user. The method comprises executing a first application computer program to provide a user interface, executing agent computer program code to interrogate and modify said user interface during execution of said first application computer program, and presenting said modified user interface. The first application computer program may be run on a server, while the modified user interface may be presented to a user at a client connected to said server.
Method and apparatus for loading multiple differing versions of a native library into a native environment
A method for loading multiple versions of the same native library in a native runtime environment. In one embodiment, the method comprises cloning a native library workspace with a first version number as a cloned native library; applying a namespace across the cloned native library; injecting a macro into source code associated with the cloned native library; adding a dependency to the cloned native library in source code associated with the native runtime environment; and registering the first version number in a project configuration of the native runtime environment.
Method and apparatus for loading multiple differing versions of a native library into a native environment
A method for loading multiple versions of the same native library in a native runtime environment. In one embodiment, the method comprises cloning a native library workspace with a first version number as a cloned native library; applying a namespace across the cloned native library; injecting a macro into source code associated with the cloned native library; adding a dependency to the cloned native library in source code associated with the native runtime environment; and registering the first version number in a project configuration of the native runtime environment.
Authentication for functions as a service
A machine-learning algorithm receives code indicative of a software unit and parses the code to extract an authenticating parameter. The machine-learning algorithm constructs an authentication template based on the authenticating parameter and providing the authentication template to a user. The algorithm receives user input from the user responsive to the authentication template and creates an authentication microservice based on the authentication template (and optionally the input). The algorithm links the authentication microservice to the software unit to deploy the authentication microservice within the software unit. The machine-learning algorithm is then modified based on the input.
Compiler operations for heterogeneous code objects
Described herein are techniques for performing compilation operations for heterogeneous code objects. According to the techniques, a compiler identifies architectures targeted by a compilation unit, compiles the compilation unit into a heterogeneous code object that includes a different code object portion for each identified architecture, performs name mangling on functions of the compilation unit, links the heterogeneous code object with a second code object to form an executable, and generates relocation records for the executable.
Compiler operations for heterogeneous code objects
Described herein are techniques for performing compilation operations for heterogeneous code objects. According to the techniques, a compiler identifies architectures targeted by a compilation unit, compiles the compilation unit into a heterogeneous code object that includes a different code object portion for each identified architecture, performs name mangling on functions of the compilation unit, links the heterogeneous code object with a second code object to form an executable, and generates relocation records for the executable.
Analysis and Testing of Embedded Code
A method, system and product comprising determining a characterization of a terminal of a plurality of terminals within a binary code based on influences of the terminal, wherein the characterization of the terminal indicates a role of the terminal in the binary code; based on the characterization of the terminal, determining that the terminal is potentially affected by external input that is inputted to a device executing the binary code; determining for the terminal a corresponding propagation path within the binary code, wherein the propagation path indicates a reachability of the terminal within the binary code; locating in the binary code a code patch associated with a functionality of the binary code, wherein the code patch is associated with the propagation path of the terminal, wherein the code patch can be executed independently from the binary code; extracting the code patch from the binary code for testing; and generating an emulation of the code patch to enable fuzz testing of the emulation, whereby the code patch is tested independently.
Dynamically replacing a call to a software library with a call to an accelerator
A computer program includes calls to a software library. A virtual function table is built that includes the calls to the software library in the computer program. A programmable device includes one or more currently-implemented accelerators. The available accelerators that are currently-implemented are determined. The calls in the software library that correspond to a currently-implemented accelerator are determined. One or more calls to the software library in the virtual function table are replaced with one or more corresponding calls to a corresponding currently-implemented accelerator. When a call in the software library could be implemented in a new accelerator, an accelerator image for the new accelerator is dynamically generated. The accelerator image is then deployed to create the new accelerator. One or more calls to the software library in the virtual function table are replaced with one or more corresponding calls to the new accelerator.