A software ecosystem and developer community has developed around each Cortex family. These ecosystems contain many of the software building blocks that you need, from component libraries to tools like compilers. The Arm Developer Community includes support forums where you can ask for help with your own projects.
One of the benefits of the variety of Arm-based chips is the wide range of commercial and open source software that supports them. If you need to find additional engineering expertise, many engineers have experience working with Arm-based devices.
For Cortex-M devices, CMSIS libraries include machine learning and DSP functionality, many real-time operating systems, and middleware libraries. For Cortex-A, there is extensive support for Linux and commercial operating systems. Arm and partners actively contribute to Linux development through the Linaro organization.
To allow software ecosystems to grow successfully, the instruction set needs to be well-defined and governed. This enables software to be readily portable between different implementations of the same architecture. For example, mobile phone app stores include apps that are developed once, but are deployed on many devices.