zoukankan      html  css  js  c++  java
  • Android 深度探索(卷1)HAL 与驱动开发 第一章Android 系统移植与驱动开发概述 心得体会

    Android 深度探索(卷1)HAL 与驱动开发

     

    第一章Android 系统移植与驱动开发概述

     

    心得体会

     

    本章第一节介绍Android 系统架构,一共分为四层,从下到上依次为:

    1.第一层:linux内核,主要包括驱动程序以及管理内存、进程、电源等资源的程序。

    2.第二层:C/C++代码库,主要包括Linux的.so文件以及嵌入到APK程序中的NDK代码。

    3.第三层:Android SDK API,直接面向应用程序的JAVA APK

    4.第四层:应用程序,直接面向最终用户的JAVA应用程序(APK程序)

    其中重点讲解第一层 Linux 内核。这一层主要包括Linux的驱动程序以及内存管理、进程管理、电源管理等程序。

           对于第二节主要是Android移植工作,主要包括移植Linux 驱动和移植HAL(硬件抽象层)

    这里着重对HAL了解一下:一般的Android驱动都有对应的HAL,不过HAL也不是必须的,通过NDK也可以直接访问LINUX驱动。

    NDK(Native Development Kit):是一系列工具的集合,提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。

           接下来的内容主要是设备的分类以及特点。驱动针对的是存储器和外设(包括CPU内部集成的存储器和外设),而不是针对CPU核。

    Linux将存储器和外设分为三类,分别为字符设备(Character devices),块设备(Block devices),网络设备(Network devices)。

           最后介绍了下Linux驱动:LED ,只是简单介绍。

           本章主要是对Android和Linux驱动做一个简单的介绍,是的我们队Linux驱动有一个感性认识,并为更好地学习Linux驱动的方法和技巧打下基础。

    http://www.cnblogs.com/xl9313/

  • 相关阅读:
    在TreeView控件节点中显示图片
    PAT 甲级 1146 Topological Order (25 分)
    PAT 甲级 1146 Topological Order (25 分)
    PAT 甲级 1145 Hashing
    PAT 甲级 1145 Hashing
    PAT 甲级 1144 The Missing Number (20 分)
    PAT 甲级 1144 The Missing Number (20 分)
    PAT 甲级 1151 LCA in a Binary Tree (30 分)
    PAT 甲级 1151 LCA in a Binary Tree (30 分)
    PAT 甲级 1149 Dangerous Goods Packaging
  • 原文地址:https://www.cnblogs.com/xl9313/p/5421659.html
Copyright © 2011-2022 走看看