Blog Details



As Android architecture is an open-source stack which was implemented from the  Linux  kernel and is derived from different varieties of device arrays and the other form factors. And it is further divided into different section which is listed below:

  1. Linux kernel
  2. HAL or hardware abstraction layer
  3. Android Runtime
  4. Libraries for native C/C++
  5. The framework of Java API
  6. System applications


Linux kernel is the important and base of the android OS architecture.

Linux kernel is the base or the foundation of the android operating system. The  Android  runtime depends on the Linux kernel for the different types of functionalities such as threading, memory management of the low-level memory these are all a type of underlying functionalities.
Android has the advantage while using the Linux kernel as it allows to take the advantage of the key security features and it helps in developing the hardware drivers for the well-established kernels.


HAL is the basic interface that is required in the latest android architecture techniques. Hardware abstraction layer works as an interface that reveals the hidden capabilities of the hardware system to a much higher level Java API framework. HAL basically consists of a lot of modules and libraries inside it and each one implements a different type of interface for every different type of hardware and each one has a specific type of hardware component such as the camera module, Bluetooth module, wifi module etc. while we make a call or dial someone to talk to them the library module gets activated and helps you get connected to them and enables to call easily with them.


Best Android architecture is having the best android Runtime application. For all the mobile phones having the Android version more than Android 5.0 each application in this version runs on it own it can also be called as ART or the android runtime. Android runtime is actually written to run on the low memory based devices with having the ability to run in multiple virtual machines.

Features of Android runtime are:

  • Compilation of ahead of time and just in time.
  • Collection of the optimized garbage.
  • Having the best debugging support and the dedicating sampling profiler, reporting all the diagnostic exception and its reports, to monitor the watchpoints at that place.

Dalvik virtual machine was the older version of this Android 5.0 operating system if your applications run in the android runtime then it will surely run on the Dalvik platform also. Whereas if your applications run in Dalvik VM then it may or may not run on the Android 5.0 and above versions.


Native libraries are very much important because the Android components such as the HAL and ART are being derived from the C and C++ of the Native libraries which means the codes of the HAL and ART are derived from the Native C/ C++ library. To implement this in the android functionality the JAVA framework and API is used for some of the native applications. We can use Java framework in android to access the OpenGL ES which mainly manipulates the graphics that are in 2D and 3D in the applications.


The Java framework is written that is available in the API format is the whole set of the  Android operating system.  And the API’s are nothing but the building blocks that which needs only some changes in the core and can be reused by simplifying it, and new applications can be made by reusing these and even can get modular system components and services which involves the below things:

  • Use texts, grids, lists, button, infographic and create a brand new and attractive view system which you can use to build the User Interface of an application.
  • The notification pops up when the notification manager alerts about it in the status bar.
  • The lifespan of the applications is being tracked by the activity manager.


There are a lot of top Android application architecture and system application is one.

There are some of the core applications that are in-built by the Android those are the email messaging, text messaging, browsing on the internet, contacts and a lot more. The inbuilt applications and the applications that are downloaded by the users are all same they don't possess any special status. Both the in-built and downloaded applications have the same status and the same backend work. So, the third party application can also become the default browser for the user’s, default messaging applications, and even if the default keyboard. But the system apps can be accessed by the users and the developers together whereas the developers get the key capabilities to access their own applications. Suppose you want to play a game you didn’t require to build the whole application only that you to download it to play it.