views:

61

answers:

1

How the Linux drivers interact with the host devices through the Android Emulator? I mean for instance how a virtual sound device driver, compiled for ARM and running inside of the Emulator communicates with the actual speaker on the computer.

I heard that you need to use a special kernel image when running on top of the Emulator, so I imagine that the drivers do some magic but I couldn't find any information on the web nor locate the drivers on the git repositories.

+1  A: 

It uses the goldfish virtual platform that's in Android kernel: it's a special platform ARM architecture, made to interact with the custom Qemu that Android uses:

Qemu code: http://android.git.kernel.org/?p=platform/external/qemu.git;a=tree;f=android;h=f94235cf26746f4877fb270781a1c007aa64df42;hb=froyo-release

Android kernel code: http://android.git.kernel.org/?p=kernel/common.git;a=tree;f=arch/arm/mach-goldfish;h=88fd7a4b794f27ea620a9aabd724458eaf945578;hb=android-goldfish-2.6.29

Aissen