KasperskyOS Community Edition 1.0
About the echo example
About the echo example
The echo example describes a basic case of interaction between two entities:
- The
Client
entity sends a number (value
) to theServer
entity. - The
Server
entity modifies this number and sends the new number (result
) to theClient
entity. - The
Client
entity prints theresult
to the screen.
To set up this interaction between entities:
- Connect the
Client
andServer
entities by using the init description. - On the server, implement an interface with a single
Ping
method that has one input argument (the original number (value
)) and one output argument (the modified number (result
)).Description of the
Ping
method in the IDL language:Ping(in UInt32 value, out UInt32 result);
- Create static description files in the EDL, CDL and IDL languages. Use the NK compiler to generate files containing transport methods and types (proxy object, dispatchers, etc.).
- In the code of the
Client
entity, initialize all required objects (transport, proxy object, request structure, etc.) and call the interface method. - In the code of the
Server
entity, prepare all the required objects (transport, component dispatcher and entity dispatcher, etc.), accept the request from the client, process it and send a response.
The echo example consists of the following source files:
client/src/client.c
– implementation of theClient
entity.server/src/server.c
– implementation of theServer
entity.resources/Server.edl
,resources/Client.edl
,resources/Ping.cdl
,resources/Ping.idl
– static descriptions.init.yaml
– init description.
Article ID: about_echo_example, Last review: Feb 16, 2022