2

I am new to autosar and I got a task to get a list of all runnable entities invoked by a concrete RTE function.

Let me explain it:

  • If I correctly understand the basics of autosar, Software Components can communicate with each other ONLY by using RTE functions.
  • Each of SWE has some runnables, which invokes a RTE function and then this RTE function invokes another runnable from another SWE.
  • I need to segregate all these functions, for example:

    RTE_function_1 and as values a list of SWE runnables invoked by this function.

So how can I generate a Call-Map of all RunnableEntities and their callers?

zx485
  • 28,498
  • 28
  • 50
  • 59
  • I added a question to your question. If the added question does not fit your question's needs, please edit the question to add your own question. – zx485 Aug 01 '18 at 18:46
  • As far as I know, the available AUTOSAR tools do not support such a feature (call-map of runnables). Once I also was desperately looking for such a tool/feature. – Oliver Scheid Aug 20 '18 at 08:30
  • The only thing I have in mind where Runnables call another one directly are client-server interfaces. Do I get this right, that you want to have a list of all clients for each server? – Torsten Knodt Nov 17 '21 at 13:01

1 Answers1

0

Not sure, if you mean out of the C-code or the SWCs software component description (SWCD).

The RTE interfaces in C-code are described in the AUTOSAR_SWS_RTE.pdf in the RTE API Function reference. In the end, all official interface usage of an SWC is coming out of the contract of the SWCD, they all start with Rte_*. Keep in mind, that some interfaces also call down into BSW modules, like Rte_Read/Write to Com (Com_Send/ReceiveSignal, Com_Send/ReceiveSignalGroup, ...), which might depend on the system descriptions definition, if the SWCs are mapped on the same ECU (Intra-ECU-comm.) or different ECUs (Inter-ECU-comm.). And even Intra-ECU-comm. might depend on, if they are on the same partition or not (Inter-OS-application comm.), if you have multiple cores in the ECU/processor.

In the SWCD, each SWC has its Client/Server and Sender/Receiver Ports. Each Runnable Entity (RE) describes the access to ports and the triggering of the RE due to an Event (e.g. dataReveivedEvent, TimingEvent, Internal/ExternalTriggerOccuredEvent, OperationInvokedEvent, ..).

These Events are then mapped by RTE.

Exceptions to this are library calls, here the SWCs are only required to specify the dependency to a specific library and its version (for AUTOSAR Standard libs like BFX, EFX, IFL/X, MFL/X the version is implicitly the same as the AUTOSAR version used). The actual library functions called from the SWC are not described by SWCD, due to how AUTOSAR defines libraries.

kesselhaus
  • 1,241
  • 8
  • 9