Can anyone clue me in on the status of async/await in hubris? I have some HAL code that both really needs and uses async (or callbacks) to work and currently just use my own homebrew WFE/WFI wakers (with a fixed, known a priori number of tasks) but it would be nice to switch to something more elegant and less brittle. (Context: async/await-based per-task loop to facilitate background LoRa send/receive while other tas…
We don't use async in hubris, so there is no async/await. Hubris is 99.99999% synchronous. For more: https://hubris.oxide.computer/reference/#_why_synchronous (Basically, this probably hasn't changed since you looked at it, but for anyone else who hasn't seen it yet...) > shutting the primary Cortex core down We don't have mainline support for multicore systems, and there's a big ? in there, design-wise. So yes, you…
Can you comment on this: others have asked here on HN before but didn't seem to get an answer - does power management/consumption factor in at all in the architectural design (even if it's "this makes it possible to add power management later") or is it strictly a non-goal? (I know your current particular application domains aren't constrained by battery capacity.)
It would be easy enough to hack the kernel to always WFI/WFE if all tasks are exited/completed, but I'm thinking about cases where task(s) are still running but the supervisor process is aware that they're all currently in a busy-waiting state. But that wouldn't be sufficient (on its own) if the OS requires certain peripherals to always remain powered up, uses a high-frequency tick interrupt that will constantly wake the device anyway, etc, etc.