zoukankan      html  css  js  c++  java
  • Android深度探索(卷1)HAL与驱动开发第一章总结

    Android系统在2015年占全球市场份额的的81.6%,而且近几年一直持增长趋势,走在大街上,随处可见的安卓手机,毋庸置疑,安卓已经成为当前智能手机操作系统的老大。当我们想要搞明白Android驱动开发的时候,其实就是在学习linux驱动开发的过程,只不过安卓增加了一个HAL,这是Android特有的。Google这样设计的原因有很多,例如由于Linux内核基于CPL开源协议,而很多驱动厂商不想开放源代码,所以增加HAL层后,可已经Linux驱动的业务逻辑放在HAL层。

       Android的系统架构分为4层。这4层包括的内容有:

       第1层:linux 内核

       由于Android是基于Linux内核,因此,Android和其他Linux系统的核心部分差异非常小。这一层主要包括linux的驱动程序以及内存管理,进程管理,电源管理等程序。

       第2层:C/C++代码库

       第3层:Android SDK API, 由于Android SDK API  是用java语言编写的,这一层也可称为Java API层。

       第4层:应用程序

       Android移植分为应用移植和系统移植,其中系统移植是指让Android操作系统在某一个特定的硬件平台上运行。要想Android 在不同的硬件平台上正常运行,只支持CPU结构还不行,必须要让Android可以识别平台的各种硬件,这些工作主要也是由Linux内核完成的,其中的主角就是Linux驱动。

       查看Linux系统内核版本有两种方法:1 uname -a 

                                        2 cat / proc /version

    当然第一章还有很多知识点就不一一叙述了。

    http://home.cnblogs.com/u/zivjeli/

  • 相关阅读:
    D
    C
    如何用最简单的方式解释依赖注入?依赖注入是如何实现解耦的?
    二维数组中的查找
    简单对称算法
    冒泡排序(数组排序)
    二分查找
    斐波那契数列
    顺序查找(数组里查找某个元素)
    二维数组排序算法函数
  • 原文地址:https://www.cnblogs.com/zivjeli/p/5393274.html
Copyright © 2011-2022 走看看