Android Stack: From Source to Device

Posted on Feb 8, 2012 (2 years ago). Seen 2,553 times. 2 comments. Permalink Feed
Photo Marko Gargenta
@MarkoGargenta
Member since Jan 19, 2007
Location: San Francisco
Stream Posts: 42

There are many variations of what the Android Stack looks like. Here's the one that I use to explain how the Android system gets built, from source code to the actual binaries on the device. 

Android Stack

And a typical interaction among parts of the stack may look like this:

Android Stack Interaction

For more info, check out my video tutorial on Android Stack

Comments

Posted on May 25, 2012
Photo Sreeni Rayanki
Member since Oct 25, 2011
Hi Marko,

Presentation by "Sasa" on Android Services Black Magic (http://www.youtube.com/watch?v=NgifNa7qD5s&hd=1) suggests that "System Services" are located in
/system/framework/services.jar where as the above diagram suggests that same are located in /system/app.

As far as my knowledge goes, system_server (native executable) resides in /system/bin, libsystem_server (shared library) resides in /system/lib and System Services reside in /system/framework/services.jar.

Can you please help clarify?

Best Regards,
Sreeni
Posted on May 27, 2012
Photo Marko Gargenta
@MarkoGargenta
Member since Jan 19, 2007
Location: San Francisco
Sreeni, good observation.

System services are all over the place, actually. Keep in mind there's the Java part, as well as the native libraries. Some are packaged as apps (NFC, for example). So, it's really on service by service basis. Sasa's talk goes into some of the more popular ones.

Hope this helps a bit!
Marko