zoukankan      html  css  js  c++  java
  • 安卓系统移植与驱动开发概述

         

       随着当前各种系统百花齐放,竞相发展,安卓系统占市场的份额已遥遥领先于其他系统,为使在各种设备上完美运行Android,我们可以学习基于Linux的Android驱动开发与移植,本章对Linux和Android做了一个比较系统的介绍,使我们更全面的了解Linux驱动,为我们进一步学习打下坚实的基础。

        学习Android驱动开发我们首先要了解Android系统构架,它主要包括:

        第一层:Linux内核

        主要包括Linux的驱动程序及内存管理、进程管理、电源管理等程序。Android使用Linux2.6作为其内核。

    第二层:c/c++代码库

    主要包括c/c++编写的代码库和Dalivk虚拟机的运行时

    第三层:Android SDK API

    也称为Java API层

    第四层:应用程序

    即指Android的UI,所有的Android用户都要接触,这一层要依靠Android SDK API来完成各种功能。

    其次我们要清楚Android系统一直的主要工作。Android移植可分为:应用移植和系统移植。应用移植是将Android系统构架中的应用程序移植到某一特定的硬件平台。系统移植是指让Android操作系统在某一特定硬件平台上运行。其首要条件就是该操作系统支持硬件平台的CPU构架,而且还必须让Android识别平台上的硬件,这主要由Linux内核完成。Android系统中还增加了硬件抽象层HAL,Linux驱动移植和HAL移植就是Android移植的主要工作。

    此外,在Android移植与驱动开发时,我们要了解适用于Android的Linux内核的版本即Linux2.6。本章还介绍了Linux设备驱动的发展与作用,设备的分类与特点等。

    最后,本章还通过一个实例用Linux驱动来控制开发板上的LED灯来加深我们对Linux驱动的认识。

    我们要通过学习CNU 及相关硬件知识,再加上大量实践和练习,一定可以学好Linux驱动开发的。

  • 相关阅读:
    pip升级报错AttributeError: 'NoneType' object has no attribute 'bytes'
    在Windows中安装MySQL
    nginx配置成功,浏览器无法访问
    mysql 安装完以后没有mysql服务
    对字符串的切片操作
    linux下anaconda的安装和使用
    python学习笔记
    python学习笔记2018-9-18
    python学习笔记2018-9-17
    电脑必须用U盘引导盘才能进系统解决办法
  • 原文地址:https://www.cnblogs.com/soultel/p/5449594.html
Copyright © 2011-2022 走看看