Android architecture consist of five layers. They are
- Android OS is made up of different layers.
- Each layer provides different services to the layer just above it.
1. Linux kernel
2. Libraries
3. Android run-time
4. Application framework
5. Application
2. Libraries
3. Android run-time
4. Application framework
5. Application
Fig:: Architecture of android OS
1. LINUX KERNEL
Linux kernel is one of the largest open source project in the world. The whole android os is built on the top of the Linux kernel with some architectural changes. It simply says android is the core of linux kernel but you cannot run any linux packages in android. Linux kernel contains all the necessary hardware drivers, Drivers are the program which can control and communicate the hardware devices. For EX all the device have audio function so the kernel needs to include the audio driver to communicate with the audio hardware.
2. LIBRARIES
It is the layer that enables the device to handle different types of data. These libraries are written in C or C++ language. Some of the important libraries are explained below,
- Surface Manager:: It is used for composting window manager with off-screen buffering. This off-screen buffering is the reason behind the transparency of windows.
- Media framework:: It provides different media codes for allowing the recording and playback of different media format.
- SQlite:: It is a android database engine for data storage purpose.
- Webkit:: It is the browser engine used to display the HTML content.
- OpenGL:: It is used to render the 2D and 3D graphic content to the screen.
Android Run time consist of Delvik Virtual Machine and Libraries core.
1. Delvik Virtual Machine(DVM)
It is a android virtual machine optimized for mobile devices.It optimize the virtual machine for memory, performance and battery life. It doesn't run .class file like JVM , instead of that it runs .dex (Delvik executable) file. Dex compiler converts the .class file into .dex file.
ART(Android Run Time) completely replaced DVM in the newest version of android (lollipop).
2. Libraries core
These are different from java SE and java ME libraries.
4. APPLICATION FRAMEWORK
These are the blocks that our application directly interact with. These programs manages the basic functions of phones like resource management, call management etc..
Some of the important blocks are
- Activity manager:: Manages the activity life cycle of application.
- Location manager::Location management using GPS and cell towers.
- Telephony manager::It manages all the voice calls. Telephony manager is used if we want to access the video calls in the application.
It is the top layer in the architecture of the android OS and this is where our our application gonna fix init.Several standard application are pre-installed in the device. Some of them are
1. SMS client app
2. Dialer
3. Web browser
No comments:
Post a Comment