Here’s my wish for the long-term future of Android phones to achieve faster software updates: separate the carrier portion of the OS from the rest of it to allow the “rest of it” to be upgraded/replaced on less restricted timescales.
The problem is that carriers are slow to qualify new OS updates for technical, legal and business reasons of various legitimacy. But the parts of the OS that they really need to care about are fairly small, as CyanogenMod has proved to many people.
1) Virtualization: the user OS (e.g. Jellybean, KitKat) runs in a container above the carrier OS, or they both run above a hypervisor.
2) Hybrid hardware: the carrier OS runs on a low-power, completely separate CPU with it’s own ROM and the user OS talks to it via internal bus