Skip to content
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

OSAL event callback framework for platform-specific handling #540

Closed
jphickey opened this issue Jul 10, 2020 · 0 comments · Fixed by #541 or #612
Closed

OSAL event callback framework for platform-specific handling #540

jphickey opened this issue Jul 10, 2020 · 0 comments · Fixed by #541 or #612
Assignees
Milestone

Comments

@jphickey
Copy link
Contributor

Is your feature request related to a problem? Please describe.
Many platforms support extra non-standardized features, but OSAL cannot make use of these. This includes items such as setting the processor affinity in a multi-processor system, or propagating the user-friendly task name at the OS level, as was suggested in #532.

Describe the solution you'd like
An event callback framework could help solve this problem, allowing those platform-specific features to be invoked from the PSP/BSP layer while keeping OSAL itself standards-compliant.

Describe alternatives you've considered
Use #ifdef conditional compiles for platform-specific features (ugly and not as maintainable).

Requester Info
Joseph Hickey, Vantage Systems, Inc.

@jphickey jphickey self-assigned this Jul 10, 2020
jphickey added a commit to jphickey/osal that referenced this issue Jul 10, 2020
Define an interface to allow an app/PSP to be notified when state changes
or other events occur at the OS level.  Initially defined events are resource
creation/deletion and task startup.

The interface is easily extendable with more events as needed.

This can be used to add platform-specific/nonstandard functions by putting
the code inside the event handler at the PSP level.
jphickey added a commit to jphickey/osal that referenced this issue Jul 10, 2020
@jphickey jphickey linked a pull request Aug 12, 2020 that will close this issue
jphickey added a commit to jphickey/osal that referenced this issue Aug 18, 2020
Define an interface to allow an app/PSP to be notified when state changes
or other events occur at the OS level.  Initially defined events are resource
creation/deletion and task startup.

The interface is easily extendable with more events as needed.

This can be used to add platform-specific/nonstandard functions by putting
the code inside the event handler at the PSP level.
jphickey added a commit to jphickey/osal that referenced this issue Aug 18, 2020
Define an interface to allow an app/PSP to be notified when state changes
or other events occur at the OS level.  Initially defined events are resource
creation/deletion and task startup.

The interface is easily extendable with more events as needed.

This can be used to add platform-specific/nonstandard functions by putting
the code inside the event handler at the PSP level.
jphickey added a commit to jphickey/osal that referenced this issue Sep 23, 2020
Define an interface to allow an app/PSP to be notified when state changes
or other events occur at the OS level.  Initially defined events are resource
creation/deletion and task startup.

The interface is easily extendable with more events as needed.

This can be used to add platform-specific/nonstandard functions by putting
the code inside the event handler at the PSP level.
jphickey added a commit to jphickey/PSP that referenced this issue Sep 23, 2020
This is an example of how nasa/osal#540 can be used
astrogeco added a commit that referenced this issue Oct 1, 2020
@astrogeco astrogeco added this to the 6.0.0 milestone Oct 1, 2020
jphickey pushed a commit to jphickey/osal that referenced this issue Aug 10, 2022
NOTE - Comments/documentation only, no logic updates
Also fixes nasa#403, resolves all warnings
Also fixes nasa#536, comment typo in CFE_SB_RcvMsg implementation header
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants