android架构

为什么有android?

行业竞争的压力,当前没有满足我们需求的手机操作系统。

www.openhandsetalliance.com

android架构



第一层:Linux kernel,采用Linux内核,实现操作系统必不可少的功能,驱动也在这一层。用c写的

第二层:系统类库和android的runtime运行时,用c和c++写的,Linux开发

第三层:application framework,主要用Java,在第二层和第三层之间有一个通信,叫JNI,通过Java调c++,

第四层:application,Java应用程序


1st   Layer_Linux Knerel{

.基于Linux2.6内核{

内存管理

进程管理

网络线

驱动模型{

显示驱动-Frame Buffer

键盘驱动-KeyBoard Driver

Flash内存驱动(闪存驱动)

Binder  IPC驱动

}

}

}

2nd  Layer Library&Runtime{

Native Libraries Layer {


系统类库{

System C Library

MediaLibraries

SurfaceManager

LibWebCore

SGF

3DLibraries based  on OpenGL ES1.0

FreeType

SQLite

}


}


HAL Layer(基于内核的硬件抽象层HardWare abstraction Layer)



Android Runtime

  

核心类库用于支持java5的各类操作,例如io,网络。

}

 3re FrameWork Layer


对类库在封装。封装起来的四大组件(提供调用系统功能的api)

和对硬件的访问操作


4 urApplication  Layer(用Java开发){

核心应用

}


你可能感兴趣的:(android,架构)