The subject of a full blown version of Windows 10 being backward compatible on Qualcomm’s SoCs: 835 – 821 – 820 – 810 has been frustrating the hell out of me.
Of course I want to solve this mystery because I have a selfish interest in the problem. And neither the tech press or Microsoft or Qualcomm or the companies that inked deals to build mobile devices with the Qualcomm Snapdragon 835 running Windows 10 have said a damn word about it.
Some articles I’ve read suggested that it might not come down to a technical issue, that Microsoft might just do a ‘technical reset’ on the Windows 10 Mobile phone OS like it did when it killed the Windows 7 phone and then killed Windows RT.
But the Windows 7 phone kill off was predicated on technology; those devices running it were simply unable to support the multi-core features that came with the Windows 8 phone.
And keep in mind that both Windows 7 phone and Windows RT were full blown (albeit in RT’s case, lame) OS’s created and compiled to run on the Qualcomm devices while the new Windows 10 running on Qualcomm is more about the software emulator that sits between the Windows 10 OS and the ARM OS and not about the OS’s themselves.
Think of an emulator as a translator which translates x86 ISA (that’s the native Windows stuff) to ARM ISA. And I did some research to compare the ISA’s running on the 835 vs. the ISA running on the 810 and guess what? They both run run ARMv8-A* ISA’s.
Granted the processors are different – the 835 is running ‘Kryo’ processors while the 810 is running a combination of the Cortex-A55 and Cortex-A57 processors but as I pointed out the ISA’s are identical.
See my previous post on this subject, but ISA (Instruction Set Architectures) refers to the machine level instruction set. So theoretically, Microsoft in building it’s new emulator hasn’t any technical limitations in porting the new full blown version of Windows 10 to any current ARM/Qualcomm device that uses the ARMv8-A ISA.
There. I’ve satisfied myself.
And hope you’ve enjoyed the ride.
*Actually the ARM powered device runs the AArch64 instruction set (and ARMv8-A is the version number).