Andriod系统采用分层架构,分为4层:
- 应用程序层(Applications) 包含所有安装在手机上的应用程序(包括系统自带的程序)
- 应用程序框架层(Application Framework) 提供构建应用程序时要用到的各种API,比如视图(View)、Activity Manager。
- 核心类库(Libraries) 包含系统库和Android运行时库,系统库主要是C/C++库,Andriod运行时库中包含了Dalvik虚拟机,每个运行中的Andriod程序都是一个单独的Dalvik虚拟机实例。
- Linux内核(Linux Kernel) Linux内核层为手机的各种硬件提供了底层驱动,比如显示驱动、音频驱动、照相机驱动、电源管理驱动、蓝牙驱动等。
.java文件会被编译为.dex文件,实际在Dalvik虚拟机上运行的是.dex文件。