-
Notifications
You must be signed in to change notification settings - Fork 105
Define the FFI approach #3139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Define the FFI approach #3139
Changes from 2 commits
7739198
92758d7
422afea
8772719
545128b
48b2ae7
6915802
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -34,6 +34,15 @@ Assumptions of Use which are relevant for all users of any platform module. | |
| The specific Assumptions of Use relevant only for the users of a specific module are documented in the module's safety manual. | ||
| That means that the platform safety manual always has to be read together with all its modules safety manuals. | ||
|
|
||
| A platform module may contain both ASIL-relevant and QM components. The | ||
| classification is performed at component level and depends on the intended | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As we have a "safety" attribute on every work product, I think you cannot say classification is performed on the component level (only).
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It also depends on the allocated (safety) requirements |
||
| execution context rather than on the module as a whole. Components that are | ||
| intended to execute within an ASIL context are in scope of the applicable ASIL | ||
| safety lifecycle and shall be developed, verified, and released according to | ||
| the corresponding ASIL process. Components that are not intended to execute | ||
| within an ASIL context may remain QM, provided that freedom from interference | ||
| with the safety context is justified in the respective module safety manual. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. You may Consider Assumed Requirements, https://eclipse-score.github.io/process_description//main/folder_templates/platform/docs/change/decision_record.html, no mixed ASIL, "The SW-platform safety components running in one POSIX process shall implement the highest ASIL of their assigned functional requirements.", so the platform assumes already within Process all components must have same ASIL, may refer to that
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'll refer to it in that section, the goal of that section is to further clarify how we can abide by stkh_req__dependability__no_mixed_asil
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would have said FFI has nothing to do with the module safety manual. But you can refer to the platform AoU in https://eclipse-score.github.io/score/main/requirements/platform_assumptions/index.html#aou_req__platform__process_isolation |
||
|
|
||
| Assumed Platform Safety Requirements | ||
| ------------------------------------ | ||
|
|
||
|
|
@@ -93,6 +102,23 @@ The S-CORE SW platform has no safety concept additional to its module's safety c | |
| The expectations towards the execution environment are described in the respective AoU, this is mainly that a safe posix operating system | ||
| integrated into a target hardware which includes safety mechanisms which cover hardware related errors. | ||
|
|
||
| The platform allows ASIL and QM components to coexist within the same module. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. same information as above line 37, but not quite correct, as the "module" is only a container for documentation and source code but not a architectural element (as this sentence sounds). |
||
| Where components executing in an ASIL context depend on functionality that has | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As Assumed here, https://eclipse-score.github.io/score/pr-3139/platform_management_plan/software_verification.html#id1
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this is not exactly a new requirement but an attempt to clarify how to apply that requirement in the context of a module that may contain components with different ASIL levels all while maintaining freedom from interference
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, then it is more a safety concept to apply FFI on modules, which are QM, but also to be used from safety relevant component. The Safety Concept means, that the part for interacting with QM part shall be developed according to the required ASIL and run in the same context, etc. |
||
| no direct safety purpose, freedom from interference shall be ensured between | ||
| the safety-relevant and non-safety-relevant parts. This may require additional | ||
| safety requirements to be allocated to components that otherwise only provide | ||
| QM functionality. Such requirements exist to preserve the integrity of the | ||
| safety context and are applied in addition to the component's functional | ||
| requirements. | ||
|
|
||
| For example, the ``mw::log`` frontend is linked into and executed within an | ||
| ASIL-B application. Although logging functionality itself may only provide QM | ||
| services, the frontend forms part of the ASIL execution context and therefore | ||
| must fulfil additional safety requirements derived from the need to maintain | ||
| freedom from interference. In contrast, the ``datarouter`` daemon executes as a | ||
| separate process and may remain QM, provided that the required freedom from | ||
| interference is justified in the module safety manual. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. already justified in platform safety manual by https://eclipse-score.github.io/score/main/requirements/platform_assumptions/index.html#aou_req__platform__process_isolation |
||
|
|
||
|
|
||
| Safety Anomalies | ||
| ---------------- | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should also define what that means for the verification of the component. What is the difference between asil relevant components and qm components in respect to our safety process
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good overview here, what is required for QM and for ASIL
https://eclipse-score.github.io/score/pr-3139/platform_management_plan/software_verification.html#id1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added a reference to ASIL and QM Verification methods