随笔分类 - Android深度探索-卷1_读书笔记
摘要:LED驱动的移植:Android系统能否正常运行,很大程度上取决于Android能否识别当前设备的硬件,识别工作主要由Linux驱动完成。而Linux驱动必须要在当前使用的Linux内核编译才可安装在当前的Linux或Android系统中。LED驱动最简单的移植就是将其在不同的Linux内核版本下进
阅读全文
摘要:一、Linux驱动到底是个什么东西: 1、 实际上Linux驱动和普通的Linux API没有本质的区别,只是使用Linux驱动的方式与使用Linux API的方式不同而已; 2、 Linux系统将每一个驱动都映射成一个文件。这些文件称为设备文件或驱动文件,都保存在/dev目录中。这种设计理念使得与
阅读全文
摘要:1、 开发板是开发和学习嵌入式技术的主要硬件设备,尽管可以在PC 上开发Linux驱动,然后重新编译成ARM架构的Linux驱动模块。但最终都是要在开发板上进行测试的。主要是因为ARM架构的开发板可基于X86架构的PC在CPU指令以及二进制格式上都有所不同。而且如果Linux驱动需呀访问硬件(如LC
阅读全文
摘要:1、Android系统架构分为四层,从下至上依次为Linux内核层,C/C++代码库、Android SDK API、应用程序,要熟悉每一层的内容以及功能; 2、Android移植分为应用移植和系统移植,系统移植的主要工作是移植Linux驱动和移植HAL,Android移植的基本原则是尽可能找到驱动
阅读全文
摘要:这一章主要是讲解如何搭建Android开发环境,需要准备的工具有: (1) JDK6或以上的版本; (2) Eclipse (3) ADT(用于开发Android应用程序) (4) CDT(用于开发Android NDK程序) (5) Android SDK (6) Android NDK (7)
阅读全文
摘要:1、Android移植主要就是Linux内核移植,而Linux内核移植主要是Linux驱动移植,为了开发和测试Linux驱动,要在Ubuntu下搭建两套开发环境:Android应用程序开发环境和Linux内核开发环境; 2、Android源代码包括:内嵌在Android系统中的应用程序的源代码,An
阅读全文
摘要:1、Git作用:对源代码进行管理; 2、安装Git命令: apt-get install git apt-get install git-doc git-svn git-email git-gui gitk 第二条语句安装的内容原本也是Git安装包的一部分,但因为有着不一样的软件包依赖,所以单独作为
阅读全文
摘要:1、安装Android SDK (1)首选下载Android SDK; (2)下载完成之后,在Ubuntu系统下进行解压; (3)解压完成之后,配置环境变量; ①用vim打开/etc/profile文件; ②在底部添加: ANDROID_SDK_PATH=/mch0dmin/android-sdk-
阅读全文
摘要:在Ubuntu下安装JDK的步骤: (1)首先需要自己安装的Ubuntu系统是多少位的,可以使用命令【getconf LONG_BIT】获取这个信息; (2)在JDK官网下载相应(选取和Linux系统位数相一致的版本进行下载)的JDK; (3)在Ubuntu系统下对下载的JDK压缩包进行解压,使用命
阅读全文
摘要:1、Linux驱动只与Linux内核有关,与Linux系统无关,只要使用同样的内核,驱动就可以通用; 2、唯一判断Linux内核是否相同的方法就是Linux内核版本号; 3、只有组成内核版本号的五部分完全相同,才能说明两个Linux系统的内核是相同的; 4、Android驱动与Linux驱动的区别就
阅读全文
摘要:1、任何的Linux驱动都有一个装载函数(装载驱动时调用)和一个卸载函数(卸载驱动时调用); 2、装载函数和卸载函数分别通过module_init和module_exit宏指定。
阅读全文
摘要:1、设备驱动的作用: 计算机系统的运行是软硬件共同作用的结果。如果应用程序直接访问硬件,会造成应用程序与硬件耦合度过高(了解面向对象的读者会很容易想到,降低对象与对象之间的耦合度最有效的方法是通过接口对类进行抽象,抽象度越高,耦合度越低,抽象硬件的任务就成了驱动的任务)。驱动是直接和硬件交互的一类程
阅读全文
摘要:1、准备一个自己熟悉的Linux操作系统,用于开发和测试Linux驱动,建议使用Ubuntu Linux 10.04及以上版本; 2、准备一块开发板,建议采用基于ARM11的开发板; 3、学习GUN C; 4、学习相关的硬件知识; 5、不断地实践。
阅读全文
摘要:Linux内核版本号的组成: (1)主版本号; (2)次版本号; (3)修订版本号; (4)微调版本号; (5)为特定的Linux系统特别调校的描述; 例子:2.6.29.7-flykernel-12a 2是主版本号; 6是次版本号;(主版本号和次版本号会组成一个Linux内核版本的系列) 29是修
阅读全文
摘要:1、目前Linux内核主要维护的三个版本:Linux2.4、Linux2.6和Linux3.x,Android使用的是Linux2.6;Linux3.x是最新推出的Linux内核版本; 2、查看Linux系统内核版本的方法: (1)使用命令:uname -a (2)使用命令:cat /proc/ve
阅读全文
摘要:1、Android移植分为两部分:应用移植和系统移植; 2、应用移植:指将第四层的应用程序一直到某一特定硬件平台上。 (1)为保证应用程序能在新的平台上正常运行,需要对源代码就行一些修改,因为硬件平台之间以及Android SDk API之前都可能存在差异。如果无法获取应用程序的源代码,只能重新在新
阅读全文
摘要:Android目前是一个非常优秀的嵌入式系统,具有非常完善的系统架构! Android系统架构分为4层:(从下至上) 第一层:Linux内核层,包括驱动程序以及管理内存、进程、电源等资源的程序 因为Android是基于Linux内核的,所以Android和其他Linux系统的核心部分的差异很小; 不
阅读全文

浙公网安备 33010602011771号