flip-link
cargo-call-stack
flip-link | cargo-call-stack | |
---|---|---|
3 | 1 | |
232 | 4 | |
3.9% | - | |
7.2 | 5.7 | |
17 days ago | 3 months ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
flip-link
- Measuring Stack Usage the Hard Way
-
Discussion Thread
Don't worry, it can be fixed by rewriting your linker in rust.
-
What are your guys' thoughts on Rust?
Stack overflows: https://github.com/knurling-rs/flip-link C bindings in Rust require unsafe blocks because C code is just that, unsafe.
cargo-call-stack
-
Measuring Stack Usage the Hard Way
At least in Rust, we have `cargo-call-stack` [0] for static analysis, but "worst case stack usage" can be challenging to measure, if you have interrupts (including nested ones at different prios so you have to add them together!), function pointers (including dyn dispatch), or recursion.
There are ways to annotate and work around this! I'm also from a safety critical background. But there aren't many (any?) OSS tools that do this completely. cargo-call-stack is the closest I've seen.
[0]: https://github.com/Dirbaio/cargo-call-stack/
I agree static analysis is preferrable, but it's also not a "just enable the check, duh" easy, sadly, and it's good to know different techniques.
What are some alternatives?
defmt - Efficient, deferred formatting for logging on embedded systems
awesome-embedded-rust - Curated list of resources for Embedded and Low-level development in the Rust programming language
wg - Coordination repository of the embedded devices Working Group
app-template - Quickly set up a `probe-rs` + `defmt` + `flip-link` embedded project
stm32f7xx-hal - A Rust embedded-hal HAL for all MCUs in the STM32 F7 family
factorio-cheat-sheet - Cheat Sheet for Factorio
rust-raspberrypi-OS-tutorials - :books: Learn to write an embedded OS in Rust :crab:
probe-run - Run embedded programs just like native ones
rustberry-pi-pico - Collection of firmware binaries for Raspberry Pi Pico written in Rust.