1-4章心得

第一章:

Android移植分为Android应用移植和Android系统移植,在Android系统移植中,linux驱动作为一个重点使其作为基础而运行,在源代码的基础上进行更改或者添加将其实现独有的功能。Linux内核层:Linux内核和驱动模块。Linux的设备驱动有3类,字符设备驱动、块设备驱动、网络接口驱动。

Linux驱动开发的前提:

1、操作系统

2、搭建linux驱动的开发环境

3、在该系统下测试linux驱动。

HAL层:硬件抽象层,将Android Framework和内核隔离,Android Framework的开发可以不用考虑太多内核驱动程序。HAL没有开源,HAL层的存在主要是google为了保护硬件厂商的驱动程序,不用开源而保密硬件规格。

控制S3C6410开发板上的4个LED的LED驱动程序代码涉及了许多系统的函数与结构体,如readl、writel、printk等。该驱动是设备驱动。。

第二章:

Android底层开发需要配置驱动开发环境、Android应用程序和Android NDK程序的开发环境,此外还需要一些辅助工具测试linux驱动以及调试开发板。

开发、测试和调试linux驱动、HAL程序库需要的工具:

1、  JDK6或以上版本

2、  Eclipse3.4或以上版本

3、  ADT(用于开发Android应用程序)

4、  CDT(用于开发Android NDK程序)

5、  Android SDK

6、  Android NDK

7、  交叉编译环境

8、  linux内核源代码

9、  Android源代码

10、              用于调试开发板的串口工具:minicom

搭建Android开发环境:

1、  下载并安装JDK

2、  搭建Android应用开发环境

(1)       下载并安装Android SDK

(2)       安装Eclipse

(3)       安装ADT

(4)       建立AVD

3、  安装Android NDK开发环境

(1)       下载Android NDK

(2)       安装CDT(用于开发c/c++程序的插件)

(3)       命令行方式编译Android NDK程序

(4)       导入Android NDK的例子

直接将<Android NDK安装目录>/samples/hello-gl2导入到Eclipse中,再重新编译即可在手机中运行

(5)       配置Android NDK的集成开发环境

4、  安装交叉编译环境。(可以从网上下载集成好的交叉编译环境,也可以自己制作)

第三章:

Git拥有非凡的性能和最为优化的存储能力,而且在各方面都优于其他同类的源代码管理软件(如CVS、SVN)

1、  安装Git(有很多linux系统自带Git,无需再装,也可重装最新版本)

2、  查看Git文档(用man命令查看制定命令的帮助文档)

源代码的提交与获取:

1、  创建版本库:Git init

2、  将文件提交到本地版本库Git commit

3、  创建本地分支:Git branch

4、  切换本地分支:Git checkout

5、  在Git Hub上创建开源项目

6、  上传源代码到Git Hub:Git push

7、  从Git Hub上下载源代码

第四章:

源代码的下载与编译

1、  Android源代码下载环境的配置

(1)       创建一个用于存放下载脚本文件(repo)的目录

(2)       下载repo脚本文件(用于下载Android源代码)

(3)       创建用于存放Android源代码的目录(可放在其他目录中)

(4)       初始化

(5)       下载Android源代码

2、  Android源代码目录结构解析

3、  下载Android源代码中的一部分(使用repo sync命令或者使用git clone命令)

4、  编译Android源代码

(1)       初始化Android编译环境

(2)       使用lunch命令设置编译目标

(3)       编译Android源代码

5、  out目录结构解析

6、  将自己的APK作为Android内置程序发布

7、  用模拟器测试system.img文件

下载和编译linux内核源代码

1、  下载linux内核源代码

2、  linux内核源代码的目录

3、  安装Android内核的编译环境

(1)       准备

(2)       解压编译器

(3)       验证交叉编译环境

(4)       安装libncurses5

(5)       配置和编译linux内核

时间: 2024-12-25 18:30:09

1-4章心得的相关文章

第四章心得

第四章 源代码的下载和编译心得体会 通过前三章的学习,基础的有了了解和一些认识,但在第四章,对总体有了更深刻的认识.在第四章源代码的下载和编译中, 本章主要介绍使用Git下载两套源代码.一套是Android 源代码,另一套是Linux 内核源代码. 首先是Android源代码的下载.编译和测试.配置Android源代码下载环境,第一步要创建一个用于存放下载脚本文件的目录,第二步下载repo脚本文件,第三步创建用于存放Android源代码的目录,第四步进行初始化,进行完上述步骤后,最后开始下载An

《Android深度探索》(卷1)HAL与驱动开发 第九章心得体会

本章主要学习了硬件抽象层:HAL. Android的硬件抽象层,简单来说,就是对Linux内核驱动程序的封装,向上提供接口,屏蔽低层的实现细节.也就是说,把对硬件的支持分成了两层,一层放在用户空间(User Space),一层放在内核空间(Kernel Space),其中,硬件抽象层运行在用户空间,而Linux内核驱动程序运行在内核空间.为什么要这样安排呢?把硬件抽象层和内核驱动整合在一起放在内核空间不可行吗?从技术实现的角度来看,是可以的,然而从商业的角度来看,把对硬件的支持逻辑都放在内核空间

Android深度探索-卷1第六章心得体会

这章主要介绍了第一个linux驱动程序:统计单词个数.Linux系统将每一个驱动都映射成一个文件,这些文件称为设备文件或驱动文件,都保存在/dev目录中.大多数Linux驱动都有与其对应的设备文件,因此与Linux驱动交换数据就变成了与文件交换数据,也就是文件操作. 编写Linux驱动程序的步骤 第一步:建立Linux驱动骨架(装载和卸载Linux驱动) 第二步:注册和注销设备文件 第三步:指定于驱动相关的信息 第四步:指定回调函数 第五步:编写业务逻辑 第六步:编写Makefile文件 第七步

第三章 心得体会

第三章的GIT的安装与使用 1:安装Git 在安装的时候可以使用以下命令安装! # apt-get install git # apt-get install git-doc git-svn git-small git-gui gitk 在低版本的Ubuntu Linux中,如果Git这个名字被另的软件包占了,为了加以区分需要将用于版本控制的Git软件包改为git-core. 2:查看Git文档 在Linux下可以直接使用man命令查看指定命令的帮助文档,查询git-checkout命令的帮助文

Android深度探索第一章心得

本章主要是对Android和Linux驱动做一个简单的介绍 第一节介绍Android 系统架构,一共分为四层,从下到上依次为: 1.第一层:linux内核,主要包括驱动程序以及管理内存.进程.电源等资源的程序. 2.第二层:C/C++代码库,主要包括Linux的.so文件以及嵌入到APK程序中的NDK代码. 3.第三层:Android SDK API,直接面向应用程序的JAVA APK 4.第四层:应用程序,直接面向最终用户的JAVA应用程序(APK程序) 第二节介绍Android移植的主要工作

Android深度探索第二章心得

本章主要介绍如何搭建Android底层开发的环境,主要包括Android应用程序开发环境,和交叉编译环境的搭建. 其中开发.测试和调试Linux驱动.HAL程序库需要的工具包括: 1. JDK6或以上版本 2. Eclipse3.4或以上版本 3. ADT(用于开发Android应用程序) 4. CDT(用于开发Android NDK程序) 5. Android SDK 6. Android NDK 7. 交叉编译环境 8. Linux 内核源代码 9. Android 源代码 10.用于调试开

第二章 心得体会

第二章主要学习了搭建Android底层开发环境的步骤和Android应用程序开发环境的步骤 通过学习搭建Android应用程序开发环境的步骤,在安装JDK以及配置Windows上JDK的变量环境的时候就出现了错误,导致环境一直搭建不好. 后来请教同学还有网上搜索,还有之前搭建环境的经验,解决了自己搭建环境时的问题. 下载安装Eclipse之后环境基本搭建完毕 下载安装Android SDK . 为Eclipse安装ADT插件.Android应用程序开发环境就这样搭建完了. Android底层开发

Android深度探索第三章心得

本章主要介绍GIT的学习,以及介绍GIT用于获取诸多开源项目的源代码. 1.安装Git命令: #apt-get  install git # apt-get install git-doc git-svn git-email git-gui gitk 2.查看Git文档: # man git-checkout 3.源代码的提交与获取 1.创建版本库:git init   GIT的版本库分为本地版本库与远程版本库.在建立开源项目之初,需要使用git init 在本地建立一个空的版本库.其命令为:

Android深度探索第四章心得

本章主要介绍使用Git下载两套源代码.一套是Android 源代码,另一套是Linux 内核源代码.主要介绍如何下载和编译Android源代码和Linux内核源代码. Android源代码包含较多东西,如内嵌在Android系统内置应用程序的源代码,Android SDK带的各种工具的源代码以及HAL源代码. 1.配置Android源代码下载环境,在Linux终端执行一系列命令: 第一步:创建一个用于存放下载脚本文件(repo)的目录(可将该脚本文件放置到任何目录中,在这里使用~/bin) #

阅读《软件工程—理论方法与实践》第五章心得体会

阅读第五章所了解到的基本知识,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动.主要目的是保证软件的正确性.已建立的形式化方法可分为操作类和描述类.操作类方法基于状态和转移;描述类基于数学公理和概念.形式证明与验证技术主要包括模型检测(适用于有穷状态系统,完全自动化并且验证速度快)和定理证明(采用逻辑公式来表示系统规约及其性质,分为自动和交互式两种).一阶线性时态逻辑是一阶谓词逻辑的扩展.对汉诺塔操作规划问题有了更深一步的理解.计算树逻辑是