The Four basic layers that accumulatively create Android Architecture or Android Software Stack
Android Architecture is composed of 4 main layers which are given below:
- Linux Kernel
- Native Libraries
- Application Framework
1. Linux kernel
Linux kernel is responsible for the power management, battery management and device management in the Operating System. It is actually used for the proper functionality of the hardware devices in an Android mobile. The hardware devices such as camera, keypad are operated by using Linux kernel, also the networking tasks of the phone.
The Android uses kernel also for interfacing with different devices in which kernel is actually really good at. The basic foundation of Android Operating System architecture is Linux kernel, such is the importance of it. It is the basic background of Android architecture and the basic layer on which any other layer stands upon.
Lets see Android Architecture Diagram:
2. Native libraries
After the very basic layer of Linux kernel, comes the layer of Native libraries in the Android architecture. The Native libraries possesses a set of other small libraries and two of its basic components are (DVM) Dalvik virtual machine and core libraries.
The Dalvik virtual machine makes an Android application run on its Operating System. The machine look after the features like threading and memory management. While to understand core libraries, we need to see few of its components.
- Dalvik VM Specific Libraries
The Dalvik VM Specific Libraries are usually not used by majority of Android developers. But it is a collection of libraries and connects directly with Dalvik virtual machine. Check out: Android vs IOS
- Java Interoperability Libraries
Java Interoperability Libraries is used for networking, file management and string handling. Most of its components are created on Java and it is an open source code of implementation. Read also: Android tips and tricks
- Android libraries
Android Libraries are also the component of core libraries that are used for Android development purpose such as graphic drawing, database and user interface building. e.g;
See also: Components of Android
3. Android Framework
Android Framework is the third layer from the bottom which performs high quality functions. This Android framework has a significant value for the Android developers as it provides services to applications in the form of the Java classes. Android developers are having the full authority for these services in their developmental tasks.
Few of the basic services that Android framework provide are:
- Activity manager
The life-cycle of the application is controlled by the Activity manager.
- Content providers
It is the service through which different application share data in a device.
- Notifications Manager
As you can judge from its name, it is responsible for the notification and alarm alert to the users.
- View System
It is utilized to create user interface via use of some set of views.
4. Application layer
The final and the top most layer of the Android OS is the Android application we use. It includes every application from the basic component such as home, contact, and network to the complicated application of browser settings and other outsourced applications like Games.