eRPC: embedded Remote Procedure Call system for multichip embedded systems and heterogeneous multicore SoCs
Identifikátory výsledku
Kód výsledku v IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F27116051%3A_____%2F18%3AN0000002" target="_blank" >RIV/27116051:_____/18:N0000002 - isvavai.cz</a>
Výsledek na webu
<a href="https://github.com/EmbeddedRPC/erpc" target="_blank" >https://github.com/EmbeddedRPC/erpc</a>
DOI - Digital Object Identifier
—
Alternativní jazyky
Jazyk výsledku
angličtina
Název v původním jazyce
eRPC: embedded Remote Procedure Call system for multichip embedded systems and heterogeneous multicore SoCs
Popis výsledku v původním jazyce
eRPC (Embedded RPC) is an open source Remote Procedure Call (RPC) system for multichip embedded systems and heterogeneous multicore SoCs. Unlike other modern RPC systems, eRPC distinguishes itself by being designed for tightly coupled systems, using plain C for remote functions, and having a small code size (<5kB). It is not intended for high performance distributed systems over a network. eRPC does not force upon you any particular API style. It allows you to export existing C functions, without having to change their prototypes. (There are limits, of course.) And although the internal infrastructure is written in C++, most users will be able to use only the simple C setup APIs shown in the examples below. A code generator tool called erpcgen is included. It accepts input IDL files, having an .erpc extension, that have definitions of your data types and remote interfaces, and generates the shim code that handles serialization and invocation. erpcgen can generate either C/C++ or Python code. The NXP eRPC implementation: - Provides transparent function call interface to remote services - Scalable from bare metal to Linux - Configurable memory and threading policies - Focus on embedded systems - Intrinsic support for C - Modular, lightweight implementation - Abstracted transport interface - RPMsg-Lite is the primary transport for multicore
Název v anglickém jazyce
eRPC: embedded Remote Procedure Call system for multichip embedded systems and heterogeneous multicore SoCs
Popis výsledku anglicky
eRPC (Embedded RPC) is an open source Remote Procedure Call (RPC) system for multichip embedded systems and heterogeneous multicore SoCs. Unlike other modern RPC systems, eRPC distinguishes itself by being designed for tightly coupled systems, using plain C for remote functions, and having a small code size (<5kB). It is not intended for high performance distributed systems over a network. eRPC does not force upon you any particular API style. It allows you to export existing C functions, without having to change their prototypes. (There are limits, of course.) And although the internal infrastructure is written in C++, most users will be able to use only the simple C setup APIs shown in the examples below. A code generator tool called erpcgen is included. It accepts input IDL files, having an .erpc extension, that have definitions of your data types and remote interfaces, and generates the shim code that handles serialization and invocation. erpcgen can generate either C/C++ or Python code. The NXP eRPC implementation: - Provides transparent function call interface to remote services - Scalable from bare metal to Linux - Configurable memory and threading policies - Focus on embedded systems - Intrinsic support for C - Modular, lightweight implementation - Abstracted transport interface - RPMsg-Lite is the primary transport for multicore
Klasifikace
Druh
R - Software
CEP obor
—
OECD FORD obor
20201 - Electrical and electronic engineering
Návaznosti výsledku
Projekt
<a href="/cs/project/7H14001" target="_blank" >7H14001: Embedded multi-core systems for mixed criticality applications in dynamic and changeable real-time environments</a><br>
Návaznosti
P - Projekt vyzkumu a vyvoje financovany z verejnych zdroju (s odkazem do CEP)
Ostatní
Rok uplatnění
2018
Kód důvěrnosti údajů
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Údaje specifické pro druh výsledku
Interní identifikační kód produktu
eRPC
Technické parametry
https://github.com/EmbeddedRPC/erpc Lightweight but scalable, targeted to embedded systems Small generated code size to allow usage on multicore parts with small memory size Abstracted transport interface Serialization layer is abstracted and replaceable Small size of serialized data Designed to work well with C, but flexible enough to support object-oriented languages Asynchronous notifications from server to client Multithreading of servers when built with an RTOS Unique specification of a function to be called Provisions for matching response messages to request messages Versioning of services Minimize any latency impact
Ekonomické parametry
Open source software
IČO vlastníka výsledku
—
Název vlastníka
NXP Semiconductors