第一章

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

 一 Andiord的系统架构

    第一层 Linux内核:主要包括驱动开发及管理内存进程 电源等资源的程序;  

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

    第三层 Andiord SDK API:直接面向程序的JAVA APK;

    第四层 应用程序:直接面向用户的JAVA应用程序;

 二 Andiord系统移植的主要工作

    Andiord的系统移植可分为两部分:应用移植和系统移植

       应用移植是将Andiord的应用程序移植到某个特殊的硬件平台上,一般不涉及驱动和HAL程序库;

       系统移植是指让Andiord操作系统在某一个特定的硬件平台上运行,包括移植CPU以及驱动,HAL等;

         注:Andiord不像其他的Linux系统的其他程序一样直接访问驱动,而是中间隔了一层HAL;

 三 查看Linux的内核版本

     目前Linux内核主要维护2个版本:Linux2.4 Linux2.6 Linux3.x

     查看内核版本的方法

     1 在liunx终端执行下面命令:        uname-a

     2 在linux终端执行下面命令:        cat /proc /version

         其中 /proc 不是普通的系统文件,而是系统内核的影像,该目录的文件存放在系统的内存之中,它以文件系统的方式访问系统内核数据的操作提供接口。

 四 Linux内核版本号的定义

    Linux内核版本号由以下几部分组成:     主版本号  次版本号 修订版本号 微调版本号 为特定的Linux系统特别调校的描述

 五 如何学习Linux驱动开发

    准备一个自己熟悉的Linux操作系统,用于开发和测试Linux驱动,

    准备一块开发板

    学习GNUC

    学习相关的硬件知识

    不断地实践  六 Linux驱动设备

      驱动是直接和硬件交互的一类程序,负责对硬件进行抽象。

      驱动针对的对象是存储器和外设,而不是针对CPU

      Linux将存储器和外设分为3大类:

         字符设备(Character Devices):必须以串行顺序依次访问的设备

         块设备(Block Devices):任意顺序进行访问

         网络设备(Network Devices):没有明显的界限

 

http://www.cnblogs.com/jsljt/

 

posted on 2016-04-27 11:15  JSLJT  阅读(133)  评论(0编辑  收藏  举报

导航