4 ms·
Is this for if you are writing firmware that has non-cooperative processes (eg installable applications)? It sounds like it from the description. Of note, it s
by the__alchemist 2y ago
Is this for if you are writing firmware that has non-cooperative processes (eg installable applications)? It sounds like it from the description. Of note, it seems like in C and C++, it is common use an RTOS for any project. In rust, you can get away with a lot (including complex programs with lots of IO) without one. Eg, using interrupts, DMA, timers etc to build an event loop and manage asynchronous events.
- therein 2y agoA loop that puts you into a deeper sleep that you can be woken up by interrupts from DMA, timers, GPIO etc. would provide the same. I like Rust as much as the next guy but let's not pretend we couldn't do this with C, C++ or assembly.
- ladyanita22 2y agoTechnically you could do the same in all three: C, C++ and Rust.
- the__alchemist 2y agoYou can do this in C, C++, assembly, but my observation is that many projects are started with an RTOS, even if they are cooperative and/or simple.