Open paulreimer opened 4 years ago
Hi sorry for the late reply here.
What you are looking for is indeed possible, though not supported. I moved to Rust, and continued this project there and we did develop what you are looking for.
If you let the SRP based system handle interrupts, one can run a normal task/thread scheduler in the idle
task. Then you would keep all guarantees that is connected to SRP while keeping the full power of an operating system (with threads/tasks).
If you want to give it a try I'd recommend to start with a simple round robin scheduler in idle and go from there. :) If you want to check out the Rust project, you can go here: www.rtfm.rs
Good luck!
I am very excited to try SRP-style scheduling for more of my projects.
The majority of applications I work on involve some form of mainstream wireless communication (bluetooth, wifi, etc). And, normally the IC mfr. provides some software integrating with a popular RTOS. For example, nrf52 Bluetooth using the Nordic Softdevice, or NimBLE stack running on Apache MyNewt/Zephyr RTOS. Preemptive scheduling or cooperative scheduling is typically used, and in my experience applications integrate + use the same RTOS.
My question is: can crect be used alongside these RTOSes? Does one scheduler fit within another (e.g. crect acts as a blackbox/task within the preemptive RTOS? (or, vice versa, perhaps the RTOS is treated as a blackbox/resource within crect?)
Any tips/suggestions/ideas are welcome (especially if it is a straightforward “no, you cannot do this”)