AoU: ETAS_RTACAR_SM_OS_189¶
The ETAS_RTACAR_SM_OS 189 AoU requires that if the Disallow Schedule() optimization is enabled,
no task uses the Schedule() API call.
Verification Approach¶
The verification is performed by analyzing the OS ECUC configuration files (ARXML) provided via the
--os-arxml parameter or discovered in the project directory specified by --dir.
The tool performs the following steps:
Configuration Loading: Parses the ARXML files to extract the OS ECUC configuration.
Configuration Options Detection: Identifies
Disallow Schedule()configuration options.Configuration Options Validation: Checks that the
Disallow Schedule()value is consistent across all configuration files. When multiple entries are present and incompatible values are detected, manual verification is required.Result Reporting: Generates a result based on the analysis outcome.
Important
Automated Verification Scope
The current implementation detects the presence of Disallow Schedule() in the ECUC configuration but
does not yet implement full automated verification of Schedule() API calls from tasks.
When the Disallow Schedule() option is disabled (the default value is assumed when it is not explicitly set
in the ECUC ARXML configuration), the tool reports a pass result, indicating that the AoU is trivially satisfied.
When an enabled Disallow Schedule() option is detected, the tool reports a review result, requiring manual verification
to confirm compliance with the complete AoU requirement.
ARXML Configuration Requirements¶
To enable this check, the OS ECUC configuration must be provided in AUTOSAR ARXML format. The tool analyzes:
Disallow Schedule() configuration options
Disallow Schedule()option Enabled/DisabledMultiple Disallow Schedule() configuration options to ensure configuration consistency
Rule Id |
ETAS_RTACAR_SM_OS_189 |
|---|---|
Title |
If Disallow Schedule() optimization is enabled, explicit calls to the Schedule() API function from tasks are not allowed. |
Description |
The rule verifies that if Disallow Schedule() optimization is enabled within the RTA-OS configuration, explicit calls to the Schedule() API function from tasks are not allowed. |
Message Description¶
Id |
id_000 |
Message |
Issue detected while executing the verification. |
Kind |
Open |
Level |
None |
Description |
An internal exception occurred during the execution. This can happen if there are insufficient resources available on the host machine, or if the ARXML configuration files cannot be properly parsed. For more details, please consult the RTA-SQF log file. |
How To Fix |
Restart the command to exclude any internal exceptions. Verify that the ARXML files are well-formed and accessible. Alternatively, please contact ETAS GmbH support for assistance. When reporting the error, include a sample configuration and command line that reproduces the issue. |
Id |
id_001 |
Message |
The Disallow Schedule() optimization was not found or not enabled in the ECUC configuration; the AoU constraint is satisfied by default. |
Kind |
Pass |
Level |
None |
Description |
The analysis of the OS ECUC configuration did not detect any enabled Disallow Schedule() option. Since the AoU constraint only applies when Disallow Schedule() option is enabled, the check passes. The AoU constraint is trivially satisfied. The check is limited to the scenario(s) documented in the RTA-SQF User Manual. Please refer to the manual for more information. |
How To Fix |
Everything is in order. No action is required. |
Id |
id_002 |
Message |
Disallow Schedule() optimization is enabled in the ECUC configuration. The automated verification of the associated configuration constraints is not yet implemented. Manual verification is required to confirm that all constraints specified in the AoU have been met. |
Kind |
Review |
Level |
None |
Description |
The tool detected one or more enabled Disallow Schedule() options in the OS ECUC configuration, but the full automated cross-reference verification about Schedule() calls from tasks is not yet implemented. Manual verification is required. The check is limited to the scenario(s) documented in the RTA-SQF User Manual. Please refer to the manual for more information. |
How To Fix |
Manually verify the following: Presence of Schedule() calls from tasks. Document your verification in your project’s safety documentation. |
Id |
id_003 |
Message |
No ECUC configuration options were found. Manual verification is required to confirm that all constraints specified in the AoU have been met. |
Kind |
Review |
Level |
None |
Description |
No OS ECUC configuration was found in the provided ARXML files or project directory. This may occur if the –os-arxml parameter was not specified and no ARXML files were found in the project directory (–dir), or if the ARXML files do not contain OS ECUC configuration data. Manual verification is required to ensure compliance with the AoU constraint. The check is limited to the scenario(s) documented in the RTA-SQF User Manual. Please refer to the manual for more information. |
How To Fix |
Verify that ARXML files containing the OS ECUC configuration are provided via the –os-arxml parameter or are present in the project directory specified by –dir. |
Id |
id_004 |
Message |
Incompatible values were detected for {0} param. Manual verification is required. |
Kind |
Review |
Level |
None |
Description |
The tool detected incompatible values for the Disallow Schedule() option across multiple ARXML configuration files. This inconsistency prevents the tool from reliably determining the Disallow Schedule() state. Manual verification is required to resolve the configuration issue and confirm compliance with the AoU constraint. The check is limited to the scenario(s) documented in the RTA-SQF User Manual. Please refer to the manual for more information. |
How To Fix |
Review the OS configuration files and ensure that the Disallow Schedule() option has a consistent value across all ARXML files. Resolve any inconsistencies in the configuration. After correcting the configuration, re-run the RTA-SQF tool to verify the constraint. |
See Also¶
os options for information on providing ARXML files via
--os-arxmlor--dir