Android ABI / Variable instruction sets on various CPUs
-
Anyone know about Android ABI? Some sketchy github site was claiming that these phones all have different instruction sets, possibly to make it so it's really hard to bypass android, and that could be why there's so many android builds - google has a custom compiler to target various instruction sets that they modify on each new CPU? Is that true, and does that mean this "ABI", which might be some sorta VM since anything we compile isn't going to target the right instruction set, or is the instruction set of the supported phones known and we have compilers that target them? I guess the BUS/interface to devices is similar, I assume they're using non standard protocols and drivers that might be sorta 'obfuscated' or 'encrypted' to the hardware? And then to access those, I guess are we bringing in android core and android drivers, and then ABI + uh, what's their other VM, ART, in order to run more programs in this environment, or are we not using those?
-
Well, there are a few ISAs (Instruction Set Architectures) supported by Android. They are armv8 (aarch64 or arm64), armv7 (armhf), and x86_64 (amd64).
Every SoC does not have a completely different instruction set. Whatever you read has no idea what they're talking about I guess, or you did not understand it properly. We also do not use VMs or ART for the Android portions we need.