Show Buttons
Share On Facebook
Share On Twitter
Share On Google Plus
Share On Linkdin
Share On Reddit
Contact us
Hide Buttons

Android System Architecture

Android archi­tec­ture con­sist of main four layers

  • Linux Ker­nel
  • Libraries and Android Runtime.
  • Appli­ca­tion Framework
  • Appli­ca­tions



Linux Ker­nel

  • Based on Linux 26 kernel.
  • Hard­ware abstrac­tion layer
  • Use Linux because it pro­vides proven dri­ver model and exist­ing drivers.
  • Pro­vides Mem­ory man­age­ment, Process man­age­ment, Secu­rity man­age­ment, Net­work­ing etc


  • Writ­ten in C/C++
  • Sur­face Man­ager : Com­pos­ing dif­fer­ent draw­ing sur­faces in on the screen. So Sur­face man­ager is respon­si­ble for tak­ing care of dif­fer­ent win­dows owns by dif­fer­ent appli­ca­tion run­ning on diff process.
  • OpenGL/ES and SGL : These two will make the core of the Graph­ics Library. OpenGL/ES takes care of 3D graph­ics library and SGL take care of 2 D graphics
  • Media Frame­work : pro­vides by packet video. all audio and video codec, AAC, JPEG, MP3 etc
  • Free Type: ren­der out fonts
  • SQLite : core for data storage.
  • Webkit : open source browser engine.


  • Pro­vides the set of core libraries that allows devel­op­ers to develop the android apps using java pro­gram­ming language.
  • Delvik vir­tual machine allows every android every android app to run on its own process.
  • Android appli­ca­tions are com­plied into Dalvik executables
  • Delvik vir­tual machine is designed for android and opti­mized for lim­ited bat­tery, lim­ited mem­ory and CPU.
  • Core libraries : blue, writ­ten in java. Con­tains col­lec­tions classes, util­i­ties, IO, tools etc.

Appli­ca­tion Framework:

  • Writ­ten in java
  • Tool kit that all appli­ca­tion uses.
  • Appli­ca­tions writ­ten by Google or by you. All appli­ca­tions uses same API and framework.’
  • Activ­ity Man­ager: man­ages the life cycle of an appli­ca­tions and main­tains the back stack as well so that the appli­ca­tions run­ning on dif­fer­ent processes has smooth navigations.
  • Pack­age Man­ager: keeps track of which appli­ca­tions are installed in your device.
  • Win­dow Man­ager : Man­ages win­dows which are java pro­gram­ming abstrac­tions on top of lower level sur­faces pro­vided by sur­face manager.
  • Tele­phony Man­agers: man­ages the API which is use to build the phone appli­ca­tions that is
  • Con­tent Providers: Pro­vide fea­ture where on appli­ca­tion can share the data with another appli­ca­tion. like phone num­ber , address, etc
  • View Man­ager : But­tons , Edit text , all the build­ing blocks of UI, event dis­patch­ing etc


All this top layer you will find all the appli­ca­tions that comes along with your android device like phone, con­tacts, web browsers, Cam­era etc. This layer shows all the appli­ca­tions devel­oped by you.

Happy Android­ing 🙂
Sumit Jain

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *