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

libmetal is too big/complex for normal RTOS usage #278

Open
wmamills opened this issue Nov 16, 2023 · 1 comment
Open

libmetal is too big/complex for normal RTOS usage #278

wmamills opened this issue Nov 16, 2023 · 1 comment
Labels

Comments

@wmamills
Copy link
Contributor

wmamills commented Nov 16, 2023

libmetal was designed to make Linux user space and RTOS and bare-metal have the same API.
This works and the amount of abstraction present is required for Linux user space (uio & vfio etc).

HOWEVER, when viewed from the perspective of only bare-metal and RTOS the library is heavy weight and overly abstract.

We should find a way to skinny down libmetal for the common case of bare-metal and RTOS. Some people have suggested a different code base with the same API but we should also look at a common code base with A compiler time flag to select the model desired. Make the default the simple model for bare-metal and RTOS platforms.

Evaluation criteria:

  • Code & data size
  • Dynamic memory allocation:
    • can be made optional?
    • simple allocate only possible?
  • Ease of porting to a new platform on a supporrted RTOS
    • This should be zero work, prove this is true
    • the library is pre-ported to Zephyr FreeRTOS Nuttx etc, If the RTOS works on a given platfrom libmetal should as well.
  • Ease of porting to a new bare-metal platform
    • W/o the abstraction of an RTOS, some porting work is required
    • Make this as simple as possible
    • Be more prescriptive about what the bare-metal BSP provides. Give porters a clean target to fit.
@wmamills wmamills changed the title libmetal is too big for normal RTOS usage libmetal is too big/complex for normal RTOS usage Nov 16, 2023
Copy link

github-actions bot commented Jan 5, 2024

This issue has been marked as a stale issue because it has been open (more than) 45 days with no activity.

@github-actions github-actions bot added the Stale label Jan 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant