Wednesday, June 13, 2018

ANDROID ARCHITECTURE



Android is an open source and Linux-based operating system developed by Google for mobile devices such as smartphones , notebooks, e-book readers, tablet computers etc. Basic understanding of Java programming language will be handy for this tutorial.





As described in the above pic, the android architectural framework is divided into the following parts: 

  •  Applications – The top most layer in the architectural stack contains the applications like Camera, Contacts , Gallery etc which are developed and installed on the device.

  •  Application framework – This layer provides the high level interaction with the android system. It contains Android APIs which helps in managing the user interface, rendering the graphics,  accessing the database , interaction with the  content providers etc.

  • Libraries – This layer contains set of native libraries like SQLite (repository for application data) ,SSL (internet security) , WebKit (engine for web browser), OpenGL & SGL (rendering graphics in 3d& 2d) , FreeType (rendering fonts)etc.

  • Android RunTime (ART) – This layer provides a set of java libraries which enable developers to write Android applications using java programming and is capable of Just-in-time(JIT) and Ahead-of-time(AOT) compilations. Apart from the libraries, it also features a java virtual machine known as Dalvik which is optimized for android and was used to execute Dalvik Executable (Dex) bytecodes and formats. Android RunTime (ART) is the next version of Dalvik introduced with Android 4.4 Kitkat. The main difference between the two is that Dalvik is based on JIT compilation while ART relies on AOT compilation i.e the whole code of the app will be pre-compiled during installation itself, thus providing faster execution of apps.

  • Linux Kernel – The Linux kernel is the heart of the android system and contains all the device drivers for hardware components viz Audio, Display, Keypad, Camera etc.

Refer Version History for various android releases till date.



ANDROID ARCHITECTURE

Android is an open source and Linux-based operating system developed by Google for mobile devices such as smartphones , notebooks,...