One of the things that I think we are missing is a Roadmap to guide and prioritize new feature development.  Other RTOS' (like Zephyr) do have such published roadmaps and are responsive to needs and requests of users and sponsors.  I have even seen web pages where the Zephyr team has laid out what new features on the roadmap will be available in future releases.

While I think it would be essentially impossible for us to manage such a thing with our loose organiation, I think we should have a roadmap that identifies the important directions that operating system will take.

For me, the important thing is to stay relevant and contemporary and not get lost in some aging niche architecture or toolset.  I think that the best way to predict where NuttX needs to be is to look at the SoCs in use just above the upper end of the NuttX market.  I think over time, those features will trickle down into embedded systems (albeit with some twists and modifications for the embedded market).  The Cortex-M7 introduces I-Cache and L1 D-Cache, for example.  A few years ago, those were higher end features not available on MCUs.

I think that SMP and AMP are key technologies to get us a leg up on future mutli-core MCUs.  KERNEL mode places us in a position to support MCUs with MMUs.  A proper TrustZone model for all ARM parts is needed too (the multi-core TrustZone model is pretty well in place, but what do we do with TrustZone on a single CPU?).

Security, especially IoT security is very important.  Some security topics are addressed by PROTECTED mode.  So although PROTECTED and KERNEL build modes are not commonly used,  I believe that they are important parts of the roadmap.

Other thoughts?  We should collaborate and  define a meaningful roadmap that will keep the OS healthy well into the future.  We should publish that roadmap somewhere so that anyone can see where we are going and can offer insights for other directions.


Reply via email to