Thursday, July 22, 2010

Android System architecture : Episode 1

Android Software Stack has a very simple system architecture

Linux Kernel 2.6
Libraries and Android Runtime
Application Framework
Applications

Lets break it one by one:::::


Linux Kernel 2.6


Its hardware abstraction layer. It provides support to access device hardware and capabilities.

Display drivers
Camera drivers
Bluetooth drivers
Binder (IPC) drivers
USB drivers
Keyboard driver
Wifi driver
M - Systems driver
Audio driver
Power Management

Libraries
These are the libraries written in C languages.
Surface Manager
Open GL/ES : 3D rendering engine
SGL : 2D rendering engine
Media Framework
Free type : renders fonts
SSL : secured socket layer
SQLite
WebKit - browser
LibC

Android Run time

Core Libraries : written in Java Programming Languages
Dalvik Virtual Machine


Application Framework


Activity Manager
Package Manager
Window Manager
Telephony Manager
Content Providers
Resource Manager
View Systems
Location Manager
Notification Manager
XMPP Services

No comments:

Post a Comment