Friday, May 27, 2011

Current Focus

I've been looking through the source of the Android Emulator (AE) and comparing it to mainline QEMU. I'm currently stepping through the AE's wrapper main function to figure out how much I can strip out and how to manually emulate an Android Virtual Device (The Android SDK specially sets up AVD's for use with the AE, hiding the image files from the user). Some things of note:

Goldfish
The hardware used in the Android Emulator is essentially self-contained. While this is probably the most essential piece to port over for basic operations, I don't think it will be as difficult as I originally conceived due to the modular design of the hardware component of QEMU.

Networking
The AE heavily modified/added on to the networking components of QEMU. They created their own copy of slirp/ under slirp-android/ and modified it for their own use, though I don't understand what changes they've made as of yet. They've also added support for the phone components under telephony/, including support for SMS and GSM.

I don't believe that the specialized networking components will be necessary to get Android to boot on QEMU, so I will plan to port these components after those necessary to boot.

No comments:

Post a Comment