共计 768 个字符,预计需要花费 2 分钟才能阅读完成。
这篇文章次要介绍了 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 驱动底层 (内核层):
最初驱动硬件实现性能。