- 1. Fundamentals
- 2. AUTOSAR Methodology
- 3. Functional Software in Practice
- 4. Basic Software and RTE
- 5. Tools, Migration and Testing
- 6. Outlook
Implementing the communication and call mechanisms contained in the description of the Software Components requires an efficient runtime environment (RTE).
Formal descriptions of the SWCs allow for an automatic analysis of the software design as well as derivation, generation and optimization of the runtime environment.
Information contained in this formalized description of a software design includes the context in which a Runnable Entity is called as well as how it interacts with other parts of the same SWC or another SWC.
By taking into account other constraints such as configuration of the basic software, it is possible to make decisions about how a function call can be implemented optimally.
Essentially, decisions have to be made regarding:
- The selection of a blocking mechanism against access from other Runnable Entities that are running in parallel, if required.
- The calling method used.
Calls can be made either directly (as a macro or C function call) or via an RTE Event that is triggered in conjunction with the operating system.
- The type of write or read access.
This may be either access to a variable or calling of an API of the Basic Software. The semantics of different access types must also be considered as well as the mechanisms that are used to implement them.
Depending on the specific configuration, these decisions can have strong impacts on performance.
In general, the generator for the runtime environment should exhibit sparing use of OS events and alarms. Appropriate configuration of the system can result in significant savings in resource utilization and execution time. To accomplish this, it is necessary to understand the effects of specific design decisions made during the design phase of the software components.