Understanding Intel's Android 4.0 x86 Optimizationsby Anand Lal Shimpi on November 9, 2011 8:42 PM EST
Earlier this week Computer World published a story about Intel adding x86 optimizations to the Ice Cream Sandwich release of Android (4.0). The story itself was fine but a quote in the article was a bit confusing:
"Ice Cream Sandwich includes OS optimization for x86, so Intel architecture-based devices can support it," said Suzy Greenberg, an Intel spokeswoman.
This statement was taken by many to assume that Intel had somehow done some optimization to Ice Cream Sandwich, however that can't be true as it flies in the face of what we know about how Google operates.
For each major Android release, Google first and foremost chooses a device OEM (e.g. Samsung for ICS, Motorola for Honeycomb). Together with the device OEM, Google selects components to be used for this Android launch vehicle - including the SoC. All of the SoC players bid. The selection process is a bit mystified however it seems that Google takes into account how well you did last time in picking you for the next round. Deliver killer performance on or ahead of schedule? Good for you. Let schedule slip or force Google to push back its launch? There may not be a next time. That's oversimplifying it a bit but you get the drift.
Only Google, the OEM selected and the SoC parter get access to the next Android code at this point. The rest of Google's partners are free to work on the Android Open Source Project (AOSP), but they don't get access to the new version of Android until it's added to the project.
For Ice Cream Sandwich, only Google and Samsung have access to the source. Sometime very soon, ICS will be added to the AOSP and then all of the SoC guys get to have at it. But where does this leave Intel and the statement above about ICS including OS optimization for x86?
It's not as exciting as it sounds.
Intel has been contributing x86 patches to the AOSP and Google's internal developer branch for the past two years. Today if you're to download Android, you can build a version that should run on x86 just fine. All of Intel's x86 support should be included as of Android 2.3.7.
When Google goes about developing a new version of Android, it takes the current AOSP and branches off from there. Any patches/optimizations that have been committed at the point of the branch make their way into the next version of Android. See where I'm going?
Any patches/optimizations, including those by Intel, that were present at the time of the branch made their way into ICS. Therefore, ICS does technically include OS optimization for x86.
Intel doesn't have access to ICS, nor is it any closer than all of the other SoC vendors to putting out an optimized ICS build. When ICS is open sourced, Intel along with NVIDIA, Samsung, Qualcomm, et al. will begin work on optimizing the OS for their platforms.