Android Architecture in details

Are you an android developer and you are going for an interview, keep in mind you will face this question much time "explain android architecture".

It's extremely essential to know how android device functions and what parts are utilized to make android device work. 

For this, we have to understand Android Architecture.

So we should begin with, 

What is architecture? 

So any software or framework depends on some set of segments that cooperate to achieve some specific task or to play out some particular function. This is a huge point and without examining much about it lets see what segments Android is comprised of and how they all work together to get things going.

What are android OS Components?
Android Operating System is mainly based on 6 components
  1. System Application
  2. Application Framework
  3. Libraries
  4. Android Runtime
  5. Hardware Abstraction Layer and
  6. Linux Kernel

System Application:
This is the topmost layer of the android architecture, it contains a very basic application to run the android apps,
example- Dialer, Camera, Calendar, etc.

Application Framework:
The Application Framework layer gives numerous more high-level services to applications as Java classes and furthermore contains different APIs. Application developers are permitted to utilize these services in their applications.

Above Linux kernel, there is a lot of libraries including an open-source Web browser, SQLite database, libraries to play and record sound and video, SSL libraries liable for Internet security, and so forth. All Java-based libraries that are required for building an Android application likewise lives here.

Android Runtime:
This part contains one of the most significant segments Dalvik Virtual Machine, DVM. This is a sort of JVM that is uniquely streamlined and made for Android. It empowers each android application to run its own process which empowers us to run numerous applications at the same time. It record into. Dex group.

Hardware Abstraction Layer:
A HAL characterizes a standard interface for hardware merchants to actualize, which enables Android to be agnostic about lower-level driver usage. Utilizing a HAL permits you to implement functionality without influencing or changing the more elevated level framework. HAL usage is bundled into modules and stacked by the Android framework at the proper time.

Linux Kernel:
A kernel is the center of any OS. The Linux Kernel sits at the base of Android design. The Android stage is based on the Linux 2.6 Kernel. The Linux Kernel offers help for some, highlights like memory management, security, process management, and device, and so on. It likewise contains all the driver that causes the Android device to speak with other hardware devices.

That's all about Android Architecture.
Thanks to being here.