Patent classifications
G06F9/44521
SYSTEMS AND METHODS FOR DISTRIBUTING AND EXECUTING LOADABLE EMBEDDED SOFTWARE EXTENSIONS IN INDUSTRIAL CONTROLLERS
Various embodiments of the present technology generally relate to industrial controller firmware. More specifically, some embodiments relate to systems and methods for developing, deploying, and executing loadable embedded software extensions that expand controller functionality beyond that of what is available in a controller's base firmware. Systems and methods described herein provide for a firmware extension development environment, a firmware extension repository, a firmware extension deployment interface, and various firmware extension executions models. During execution of a control program within an industrial controller, when directed by the logic of the control program to perform an external function, industrial controller firmware may call an external component provided by an extension developed in accordance with the present disclosure to perform the external function.
IMPLEMENTING CHANGES MADE TO SOURCE CODE OF RELOADABLE TYPES AT RUNTIME
Systems and methods for implementing changes made to source code of a program at runtime are provided. In particular, a computing device may execute the source code in a runtime environment and detect changes made to the source code at runtime in the runtime environment. In response to detecting the changes, the computing device may determine if the changes were made to a type in the source code identified as reloadable. In response to determining that the changes were made to the type in the source code identified as reloadable, the computing device may create a new version of the type and perform implementation of the changes to the source code at runtime using the new version of the type.
AUGMENTING VIDEO GAMES WITH ADD-ONS
A computing system is configured to execute a computer program on a server and to provide a video stream of the program output to a geographically remote client over a communication network. An add-on manager is provided to facilitate the use of add-ons to extend the functionality of the computer program. The add-on manager is responsive to commands received from the client and is configured to associate individual add-ons and add-on data with specific user accounts. The add-ons can be located on the server or some other location remote from the client.
ROLL BACK OF DATA DELTA UPDATES
Disclosed embodiments relate to adjusting vehicle Electronic Control Unit (ECU) software versions. Operations may include receiving a prompt to adjust an ECU of a vehicle from executing a first version of ECU software to a second version of ECU software; configuring, in response to the prompt and based on a delta file corresponding to the second version of ECU software, the second version of ECU software on the ECU in the vehicle for execution; and configuring, in response to the prompt, the first version of ECU software on the ECU in the vehicle to become non-executable.
BROKERING SERVERS BASED ON REMOTE ACCESS PERFORMANCE
Examples of a method for brokering remote servers are described herein. In some examples, performance data is received from a plurality of remote servers, where the performance data indicates rendering performance of a foreground application executed by at least one of the remote servers and streamed from at least one of the remote servers over a remote desktop connection. An indication of a selected application is received from a client. The client is directed to at least one of the remote servers based on the performance data and the selected application.
Ephemeral Artificial Reality Experiences
In one embodiment, a method includes instructing sensors on an AR headset to capture data of a real-world environment, discovering a 3D location where a native application configured to run natively on an operating system is downloadable, generating and displaying a virtual object representing the native application at the 3D location, detecting a user of the AR system interacting with the virtual object, downloading a first executable portion of the native application, executing the first executable portion within a sandbox process having a predetermined set of access permissions, progressively downloading a remaining executable portion of the native application while the user is interacting with the executed first executable portion, and in response to a determination that the native application is completely downloaded, installing the native application on the operating system.
Dynamic link objects across different addressing modes
A call to an external interface to execute a target callee program associated with a first addressing mode in a secondary runtime environment (RTE) is received from a caller program associated with a second addressing mode running in a primary RTE. An address of a share area (SA) storing existing dynamic link object information in the primary RTE in storage is passed to the secondary RTE. The SA is accessible by both the caller program and the target callee program. In response to a request to load a dynamic link object by an initiating program during execution of the target callee program in the secondary RTE, an entry address of the dynamic link object is retrieved in the SA. The dynamic link object is loaded based on the retrieved entry address of the dynamic link object.
Lazy loading of code containers based on invoked actions in applications
A system can improve application performance by using lazy loading of code containers based on non-navigational actions in single-page or hybrid applications. A page can launch by loading a main bundle of code. The main bundle can include an action manifest that maps action identifiers to separate code modules. Those separate code modules can include functions for handling the actions. Based on a non-navigational action that occurs, the application can use the action manifest to map a first action identifier of the first action to a first code module. The application can then lazy load a first code module asynchronously from the main bundle. The application can also use route guards with filters to determine child actions, validate action routes, and cache the validated routes for later use without a remote server call.
MULTI-TENANT JAVA AGENT INSTRUMENTATION SYSTEM
In one embodiment, a device launches a core agent for a Java application. The core agent loads a first tenant and a second tenant, each tenant having its own isolated class loader. The device instruments, via the core agent and by each tenant, the Java application to capture data regarding execution of the Java application. The device provides the captured data to a user interface.
METHOD OF REBINDING COMPUTING UNIT IN HETEROGENEOUS COMPUTING CLOUDS AND APPARATUS THEREOF
The disclosure is related to a dynamic rebinding method for a computing unit in heterogeneous computing clouds. The method includes A dynamic rebinding method for a computing unit in heterogeneous computing clouds, receiving a first computing request from a terminal, generating a static FAT binary by compiling a device binary codes for each of all types of heterogeneous accelerators based on the first computing request, generating and storing global data including device binary codes and libraries of all types of the heterogeneous accelerators, generating a structure capable of dynamic binding by separating device binary codes for each type of the heterogeneous accelerators from the static fat binary, allocating a first compute node and first heterogeneous accelerators based on the first computing request.