A collection of softwareIn this context, "software" refers to functions in an IoT device that are implemented by running instructions through some kind of processor. It's distinct from "hardware," where functions are built into a silicon chip or some other component. that’s been built up over the years. It’s usually been improved an optimized gradually for the processorA computer chip that does computing work for a computer. It may do general work (like in your home computer) or it may do specialized work (like some of the processors in your smartphone). it’s running on, and it works, so developers will be reluctant to make major changes to it.