Friday, 26 February 2016

Android OS Architecture

Android OS Architecture

Android operating system comprise of different software components arranges in stack. Different components of android operating system are –
  1. Linux kernel
  2. Libraries
  3. Android Run time
  4. Application Framework
  5. Applications.

Linux kernel

  1. Bottom layer of android operating system is Linux kernel.
  2. Android is built on top of Linux 2.6 Kernel and few architectural changes made by Google.
  3. Linux Kernel provides the basic system functionality such as process management, memory management and device management
  4. Linux kernel also provides array of device drivers which make our task easier while interfacing the android with peripheral devices.

Libraries

  1. On the top of Linux Kernel another layer called libraries is present.
  2. It provides the different libraries useful for well functioning of android operating system.
  3. Libraries are java libraries build specific for android operating system.
Some of the libraries are listed below –
LibrariesExplanation
SQLiteIt is used to access data published by content providers and includes SQLite database management classes
SSLIt is used to provide internet security
OpenGLIt is used to provide Java interface to the OpenGL/ES 3D graphics rendering API.
Media frameworkIt is used to provides different media codecs which allow the recording and playback of different media formats
WebKitIt is the browser engine used to display internet content or HTML content

Android Runtime

  1. It is third component of the android architecture and placed in second layer from bottom
  2. It provides most important part of android called Dalvik Virtual Machine.
  3. Dalvik Virtual Machine is similar to JVM but only difference is that it is designed and optimized for Android.
  4. Dalvik Virtual machine uses core functions of Linux such as memory management and multithreading and enables each android app to run its own process.

Application framework

  1. It is 2nd topmost component in android operating system stack
  2. Android applications directly interacts with application framework.
  3. Application framework manages the basic functions of android device such as resource management, voice call management etc
Important blocks of Application framework are :
BlockExplanation
Activity ManagerBlock is used to manage complete activity life cycle of applications
Content ProvidersBlock is used to manage the data sharing between two applications
Telephony ManagerBlock is used to manages all voice calls
Location ManagerBlock is used to manage the Locations obtained using GPS or cell tower
Resource ManagerBlock is used to manage the different types of resources used in android app

Applications

Applications created by third party users or developer will be installed on application layer.

No comments:

Post a Comment