Inleiding: In de beginjaren ondersteunde het Android-systeem bijna alleen de ARMv5 CPU-architectuur, maar nu ondersteunt het Android-platform 7 verschillende CPU-architecturen, namelijk ARMv5, ARMv7 (vanaf 2010), x86 (vanaf 2011), MIPS (vanaf 2012), ARMv8, MIPS64 en x86_64 (vanaf 2014), die elk gekoppeld zijn aan een bijbehorende ABI (applicatie). Binaire Interface)。 De Application Binary Interface definieert hoe binaries (vooral .so-bestanden) draaien op het bijbehorende systeemplatform, vanuit de gebruikte instructieset, geheugen uitgelijnd met de beschikbare systeemfunctiebibliotheken. Op Android komt elke CPU-architectuur overeen met een ABI: armeabi, armeabi-v7a, x86, mips, arm64-v8a, mips64, x86_64.
X86-serie export ANDROID_ABI=x86
ARM's Cortex-A8 of Cortex-A9 serie exporteren ANDROID_ABI=armeabi-v7a (Opmerking: armeabi-v7a is voor ARM-CPU's met floating-point-operaties of geavanceerde extensies)
ARMv6 exporteren ANDROID_ABI=Armeabi (Opmerking: Armeabi is voor normale of oude Arm-CPU's)
ARMv6 wordt niet geleverd met FPU export ANDROID_ABI=armeabi export NO_FPU=1
ARMv5 of Emulator export ANDROID_ABI=armeabi Export NO_ARMV6=1
MIPS-serie Export ANDROID_ABI=MIPs
1. Over de ARM (Advanced RISC Machine) architectuur Het is een 32-bits RISC (Reduced Instruction Set Computing) processorarchitectuur die veel wordt gebruikt in veel embedded systeemontwerpen. Er zijn echter ook veel prestaties op andere gebieden; door de energiebesparing zijn ARM-processors zeer geschikt voor mobiele communicatie, waarmee ze aansluiten bij hun belangrijkste ontwerpdoelen van lage kosten, hoge prestaties en laag energieverbruik. Het voordeel van ARM ligt niet in krachtige prestaties, maar in efficiëntie; ARM gebruikt de RISC-pijplijninstructieset, die nadelig is bij het voltooien van volledig werk, en de voordelen ervan kunnen volledig benut worden in sommige toepassingen met relatief vaste taken. ARM-structuurcomputers verbinden de CPU met dataopslagapparaten via een speciale data-interface, waardoor het moeilijk is om de prestaties van ARM-opslag en -geheugen uit te breiden (over het algemeen is de capaciteit van geheugen en dataopslag bepaald in het productontwerp), waardoor het systeem met de ARM-structuur doorgaans geen rekening houdt met uitbreiding. Het principe van "genoeg is goed" wordt in feite nagestreefd. 2. Over x86-architectuur Het is een complexe instructieset CISC (Complex Instruction Set Computer) processorarchitectuur. X86-computers zijn sowieso veel sneller en sterker qua prestaties dan ARM-gebaseerde systemen. De CPU van de X86 is meer dan 1G, dual-core en quad-core. X86-structuurcomputers gebruiken de "bridge"-methode om verbinding te maken met uitbreidingsapparaten (zoals: harde schijven, geheugen, enz.), en x86-structuurcomputers bestaan al bijna 30 jaar, en de ondersteunende uitbreidingsapparaten zijn van vele typen en de prijs is relatief laag, waardoor x86-structuurcomputers gemakkelijk de prestaties kunnen verhogen, zoals het vergroten van geheugen, harde schijven, enzovoort. |