This item was not updated in last three versions of the Radar. Should it have appeared in one of the more recent editions, there is a good chance it remains pertinent. However, if the item dates back further, its relevance may have diminished and our current evaluation could vary. Regrettably, our capacity to consistently revisit items from past Radar editions is limited.
Adopt
Why?
Difficult or impossible to change functionality of embedded system after deployment Embedded development is difficult, mostly in C No standard component model, so customization cost is high
Many instances of compromised IoT devices Vulnerabilities cannot all be found before shipping
WebAssembly provides: Robustness
- Memory safety on IoT HW without MMU (most MCUs) Change functionality without full OTA
- Need dynamic loading and linking of application code Enable application portability - important for marketplace
- Enable portability across HW platforms
- Enable portability across Operating Systems
- RTOS ecosystem is fragmented Reduce the development & testing effort
- Support high level languages
- Reduce testing requirements of higher layers
What?
Use WebAssembly as sandboxing technology for applications running on RTOS (NuttX).