这篇文章次要介绍了Android操作系统的架构设计剖析,Android零碎架构分为Linux内核驱动、C/C ++框架、Java框架、Java应用程序,本文别离解说了它的作用,须要的敌人能够参考下

  之前始终在Android应用层上做工作,最近开始钻研Android平台上的东东了,次要是在Android Frameworks层和零碎库层进行钻研。以下是我本人的了解,领悟,心愿与大家一块分享。

  Android零碎架构分为Linux内核驱动、C/C ++框架、Java框架、Java应用程序。

  Android应用层:

  Android应用程序须要Java框架反对。次要是针对手机用户的。Android应用层都是由Java代码写的,运行在虚拟机中。虚拟机在Android平台中扮演着很重要的角色。虚拟机在执行Java类的过程中,如果Java类须要与C/C++组件沟通时,虚构机会载入C/C++组件,而后让Java函数顺利的调用到C/C++组件的函数。Java与C/C++能通过规范的JNI界面互相沟通。

  注:Java类是在虚拟机上运行的,C/C++不是在虚拟机上执行的。那么如何加载C/C++组件函数的呢?

  答案是:通过System.loadLibrary(*.so的档案名);入口函数是JNI_OnLoad();

  Frameworks框架层(利用框架层):

  Java框架就是由C/C++库包装成为了一个JNI。简称Java Native Interface,即Java本地接口。在应用层和零碎库层之间起了一个桥梁的作用。次要是针对手机开发商。

  C/C++框架(零碎库):

  具体实现Java框架性能。Java域名交易框架中的native办法都是由C/C++来实现的。

  Android驱动底层(内核层):

  最初驱动硬件实现性能。