The iPhone Wiki is no longer updated. Visit this article on The Apple Wiki for current information. |
Difference between revisions of "ARMv7"
(No difference)
|
Revision as of 20:10, 9 March 2012
Armv7 is the processor instruction set used starting with the S5L8920 in the iPhone 3GS and in all subsequent devices. Processors that support Armv7 instructions are backward compatible with Armv6 instructions, but attempting to run binaries compiled for Arm7 on older, Armv6 processors will result in the error: "Bad CPU type in executable".
Benefits
The instructions are more efficient and numerous than the older Armv6 instructions, resulting in a smaller binary and faster execution time. The official SDK allows developers to choose to compile for only Armv6 or a hybrid Armv6/Armv7 binary.
Negatives
The applications and libraries that are built into iOS for Armv7 devices do not contain the Armv6 binaries, so the code will not run on the older processors. This is likely because Apple wants to keep the iOS filesize down and not include unnecessary "junk". It could also serve as a side-benefit for Apple because it prohibits older processors from running "premium features" like Voice Control on an iPhone 3G.
This hardware article is a "stub", an incomplete page. Please add more content to this article and remove this tag. |