Wednesday, 15 July 2015

Android Architecture


  • Android OS is made up of different layers.
  • Each layer provides different  services to the layer just above it.
                                  Android architecture consist of five layers. They are
                                   
                                                 1. Linux kernel
                                                 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.
3. ANDROID RUN TIME
                             
                                 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.
5.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