Android Architecture

Android architecture is a software stack of components to support a mobile device needs. Android software stack contains a Linux Kernel, collection of c/c++ libraries which is exposed through an application framework services, runtime and application.

Following are main components of android architecture those are -:
    • Applications
    • Android Framework
    • Android Runtime
    • Platform Libraries

    1.Linux Kernel

    Linux is the heart of Android architecture.It provides a level of abstraction between the hardware devices and the upper layers of the Android software stack.The Android operating system is based on the Linux kernel.The Linux kernel is responsible for various device drivers such as Camera driver, Display driver, Bluetooth driver, Keypad driver, Memory management, Process management, Power management, etc.

     2. Libraries
    This layer consists of a set of Libraries and Android Runtime. The Android component is built using native codes and require native libraries, which are written in C/C++ and most of the libraries are open source libraries. Also, this layer handles data that is specific to the hardware. Some of the native libraries are SSL, SQLite, Libc, OpenGL, media framework, FreeType and Surface Manager.
    3.Android Runtime
    Android Runtime is the third section of the architecture and situated on the second layer from the bottom.Android Runtime includes core libraries and Dalvik Virtual Machine (DVM) which is responsible to run android application.Dalvik Virtual Machine (DVM) is like Java Virtual Machine (JVM) in Java, but DVM is optimized for mobile Devices.
    4. Application Framework
    Application framework is situated on the top of the Native libraries and Android runtime.Android framework provides a lot of classes and interfaces for Android application development and higher level services to the applications in the form of Java classes.It includes Android API's such as Activity manager, Window manager, Content Provider, Telephony Manager, etc.
    Applications are situated on the top of the Application framework.The applications such as Home, Contact, Alarm, Calender, Camera, Browsers, etc. use the Android framework which uses Android runtime and libraries. Android runtime and Native libraries use Linux kernel.

    Post a Comment