自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Seal--学海无涯

嵌入式 Linux Android 内核 驱动

  • 博客(65)
  • 资源 (5)
  • 收藏
  • 关注

原创 Daily-C-Study(5):C语言extern关键字

Daily-C-Study(5):C语言extern关键字成于坚持,败于止步extern,外面的、外来的意思。那它有什么作用呢?举个例子:假设你在大街上看到一个黑皮肤绿眼睛红头发的美女(外星人?)或者帅哥。你的第一反应就是这人不是国产的。extern 就相当于他们的这些区别于中国人的特性。extern 可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,下面的代码用到的这些变

2013-05-30 19:28:18 8387 4

原创 Daily-C-Study(4):C语言struct关键字

Daily-C-Study(4):C语言struct关键字成于坚持,败于止步struct 是个神奇的关键字,它将一些相关联的数据打包成一个整体,方便使用。在网络协议、通信控制、嵌入式系统、驱动开发等地方,我们经常要传送的不是简单的字节流(char 型数组),而是多种数据组合起来的一个整体,其表现形式是一个结构体。经验不足的开发人员往往将所有需要传送的内容依顺序保存在char 型数组

2013-05-30 18:32:06 3096 3

原创 Daily-C-Study(3):C语言union关键字

Daily-C-Study(3):C语言union关键字成于坚持,败于止步union 关键字的用法与struct 的用法非常类似,但也有很大的不同。union 维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在union 中所有的数据成员共用一个空间,同一时间只能储存其中一个数据成员,所有的数据成员具有相同的起始地址。例子如下:union StateM

2013-05-29 20:17:06 2865

原创 Daily-C-Study(1):C语言typedef关键字

Daily-C-Study(1):C语言typedef关键字成于坚持,败于止步关于马甲的笑话。有这样一个笑话:一个猎人在河边抓捕一条蛇,蛇逃进了水里。过一会,一个乌龟爬到岸边。猎人一把抓住这个乌龟,大声的说道:小样,别你为你穿了个马甲我就不认识你了!typedef 关键字是个伟大的缝纫师,擅长做马甲,任何东西穿上这个马甲就立马变样。它可以把狼变成一头羊,也能把羊变成一头狼。甚至还可以把

2013-05-29 18:18:11 3856 2

原创 2013年6-12月规划

2013年6-12月规划真正做驱动只有几个月的时间了,想着这个行业有点作为,公司的项目渐渐满足不了自己的提升欲望了,为了将来,今天突然奔出来这个念头,该给自己规划一下将来的路了,不管五年或者十年以后我的打算是什么,但是几乎可以定论,五年以内,我将靠linux和android吃饭,养家,现在才想起来这些,好像晚了点,不过,那叫什么,浪子回头金不换??O(∩_∩)O~我要坚持做完规划的东西,明

2013-05-25 15:05:49 930 1

转载 制作可独立分发的Android模拟器

制作可独立分发的Android模拟器        如果我们编写了一个Android应用程序,想在一台没有Android SDK或者BUILD环境的机器显示给别人看,应该怎么办呢?通常,我们开发Android应用程序的时候,都是使用模拟器来运行程序,要么是SDK环境下,要么是在源代码BUILD环境下使用。在SDK环境下,结合Eclipse和ADT,使用模拟器很方便,而BUILD环境下,

2013-05-25 09:06:54 699

转载 浅谈Android系统开发中LOG的使用

浅谈Android系统开发中LOG的使用         在程序开发过程中,LOG是广泛使用的用来记录程序执行过程的机制,它既可以用于程序调试,也可以用于产品运营中的事件记录。在Android系统中,提供了简单、便利的LOG机制,开发人员可以方便地使用。在这一篇文章中,我们简单介绍在Android内核空间和用户空间中LOG的使用和查看方法。        一. 内核开发时LOG的使

2013-05-25 08:56:16 793

转载 在Ubuntu上下载、编译和安装Android最新内核源代码(Linux Kernel)

在Ubuntu上下载、编译和安装Android最新内核源代码(Linux Kernel)      在前一篇文章提到,从源代码树下载下来的最新Android源代码,是不包括内核代码的,也就是Android源代码工程默认不包含Linux Kernel代码,而是使用预先编译好的内核,也就是prebuilt/android-arm/kernel/kernel-qemu文件。那么,如何才能DI

2013-05-25 08:45:22 825

转载 如何单独编译Android源代码中的模块

如何单独编译Android源代码中的模块      第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了。以后如果我们修改了Android源代码中的某个模块或者在Android源代码工程新增一个自己的模块,是不是还是执行make命令呢?答案是否定的,Google为我

2013-05-25 08:26:37 780

原创 Android4.0.3 Binder机制分析

Android4.0.3 Binder机制分析一 说明Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。我们这里将以MediaService的例子来分析Binder的使用:l ServiceManager,这是Android OS的整

2013-05-24 20:11:13 1727

原创 在Ubuntu上下载、编译和安装Android最新源代码

在Ubuntu上下载、编译和安装Android最新源代码      文章是在老罗的基础上改动的,因为老罗写的很好,不想浪费了老罗的辞藻,O(∩_∩)O~     看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源代码了呢?一直习惯使用Windows系统,而Android源代码是不支持在Win

2013-05-24 17:58:00 2946

转载 Android进程间通信(IPC)机制Binder简要介绍和学习计划

Android进程间通信(IPC)机制Binder简要介绍和学习计划        在Android系统中,每一个应用程序都是由一些Activity和Service组成的,一般Service运行在独立的进程中,而Activity有可能运行在同一个进程中,也有可能运行在不同的进程中。那么,不在同一个进程的Activity或者Service是如何通信的呢?这就是本文中要介绍的Binder进

2013-05-23 09:22:00 753

转载 u-boot-2009.08在mini2440上的移植(五)---增加yaffs2文件系统

u-boot-2009.08在mini2440上的移植(五)---增加yaffs2文件系统  移植环境1,主机环境:VMare下CentOS 5.5 ,1G内存。2,集成开发环境:Elipse IDE3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-eabi-gcc v4.5.1。4,开发板:mini2440,2M nor f

2013-05-22 18:39:56 983

转载 在Ubuntu上为Android系统内置Java应用程序测试Application Frameworks层的硬件服务

在Ubuntu上为Android系统内置Java应用程序测试Application Frameworks层的硬件服务        我们在Android系统增加硬件服务的目的是为了让应用层的APP能够通过Java接口来访问硬件服务。那么, APP如何通过Java接口来访问Application Frameworks层提供的硬件服务呢?在这一篇文章中,我们将在Android系统的应用层增

2013-05-22 16:25:41 762

转载 在Ubuntu上为Android系统的Application Frameworks层增加硬件访问服务

在Ubuntu上为Android系统的Application Frameworks层增加硬件访问服务      在数字科技日新月异的今天,软件和硬件的完美结合,造就了智能移动设备的流行。今天大家对iOS和Android系统的趋之若鹜,一定程度上是由于这两个系统上有着丰富多彩的各种应用软件。因此,软件和硬件的关系,在一定程度上可以说,硬件是为软件服务的。硬件工程师研发出一款硬件设备,自然

2013-05-22 16:04:59 624

转载 在Ubuntu为Android硬件抽象层(HAL)模块编写JNI方法提供Java访问硬件服务接口

在Ubuntu为Android硬件抽象层(HAL)模块编写JNI方法提供Java访问硬件服务接口        在上两篇文章中,我们介绍了如何为Android系统的硬件编写驱动程序,包括如何在Linux内核空间实现内核驱动程序和在用户空间实现硬件抽象层接口。实现这两者的目的是为了向更上一层提供硬件访问接口,即为Android的Application Frameworks层提供硬件服务。

2013-05-22 15:39:12 672

转载 在Ubuntu上为Android增加硬件抽象层(HAL)模块访问Linux内核驱动程序

在Ubuntu上为Android增加硬件抽象层(HAL)模块访问Linux内核驱动程序      在Android硬件抽象层(HAL)概要介绍和学习计划一文中,我们简要介绍了在Android系统为为硬件编写驱动程序的方法。简单来说,硬件驱动程序一方面分布在Linux内核中,另一方面分布在用户空间的硬件抽象层中。接着,在Ubuntu上为Android系统编写Linux内核驱动程序一文中举

2013-05-22 15:26:10 730

转载 在Ubuntu上为Android系统内置C可执行程序测试Linux内核驱动程序

在Ubuntu上为Android系统内置C可执行程序测试Linux内核驱动程序      在前一篇文章中,我们介绍了如何在Ubuntu上为Android系统编写Linux内核驱动程序。在这个名为hello的Linux内核驱动程序中,创建三个不同的文件节点来供用户空间访问,分别是传统的设备文件/dev/hello、proc系统文件/proc/hello和devfs系统属性文件/sys/c

2013-05-22 15:15:10 1627

转载 在Ubuntu上为Android系统编写Linux内核驱动程序

在Ubuntu上为Android系统编写Linux内核驱动程序        在智能手机时代,每个品牌的手机都有自己的个性特点。正是依靠这种与众不同的个性来吸引用户,营造品牌凝聚力和用户忠城度,典型的代表非iphone莫属了。据统计,截止2011年5月,AppStore的应用软件数量达381062个,位居第一,而Android Market的应用软件数量达294738,紧随

2013-05-22 14:39:41 690

转载 u-boot-2009.08在mini2440上的移植(四)---增加DM9000驱动和命令自动补全功能

u-boot-2009.08在mini2440上的移植(四)---增加DM9000驱动和命令自动补全功能  移植环境1,主机环境:VMare下CentOS 5.5 ,1G内存。2,集成开发环境:Elipse IDE3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-eabi-gcc v4.5.1。4,开发板:mini2440,2

2013-05-20 18:17:05 1676

原创 虚拟机下ubuntu10.10访问Windows磁盘

虚拟机下ubuntu10.10访问Windows磁盘在虚拟机下安装的Linux,你用"fdisk -l"命令是看不到Windows各分区的设备名的,那就没法用mount命令挂载了,还好,VMware给我们提供了访问Windows磁盘分区的方法。首先,你得安装VMware Tools,先启动虚拟机下的Linux,然后在虚拟机菜单下选择:VM->Install VMware Tools,具体如

2013-05-19 20:41:18 2573

原创 u-boot-2009.08在mini2440上的移植(三)---增加nand flash功能

u-boot-2009.08在mini2440上的移植(三)---增加nand flash功能  转载补充,谢谢分享:http://blog.163.com/liuqiang_mail@126/blog/static/109968875201176214200/移植环境1,主机环境:VMare下CentOS 5.5 ,1G内存。2,集成开发环境:Elipse IDE

2013-05-18 16:34:39 1705

原创 u-boot-2009.08在mini2440上的移植(二)---增加nor flash功能

u-boot-2009.08在mini2440上的移植(二)---增加nor flash功能转载补充,谢谢分享:http://blog.163.com/liuqiang_mail@126/blog/static/10996887520117621027321/移植环境1,主机环境:VMare下CentOS 5.5 ,1G内存。2,集成开发环境:Elipse ID

2013-05-18 15:12:55 1791

原创 u-boot-2009.08在mini2440上的移植(一)---建立mini2440工程环境(3)

u-boot-2009.08在mini2440上的移植(一)---建立mini2440工程环境(3)转载别人的过程,加入自己的见解,谢谢分享:http://blog.163.com/liuqiang_mail@126/blog/static/1099688752011762710316/根据启动流程修改或添加基本的u-boot源码,使其能够在内存中启动【1】增加对S3C

2013-05-18 12:56:11 1623

转载 ARM汇编指令学习 - 实现数据块拷贝

ARM汇编指令学习 - 实现数据块拷贝这个学期,系里开了嵌入式的课程,正好借助这个机会系统地学习下ARM的指令系统。这个系列文章主要是通过一些简单的汇编程序实例来学习ARM指令,使用的编译器是ADS 1.2。程序要求:设计一段程序完成数据块的复制,数据从源数据区snum复制到目标数据区dnum,数据量大小为NUM字(1个字=4个字节),复制时以8个字为单位进行,对于最后所剩不到8个

2013-05-17 18:36:56 5736

转载 高通Android平台下关于display部分的几个关键问题

高通Android平台下关于display部分的几个关键问题    显示部分的几个问题这几天通过实际测试澄清了一下,主要是下图中各个模块的使用状况以及HAL层几个模块的调用流程。以问题的方式描述如下:0. SurfaceFlinger主要功能    SurfaceFlinger只是负责merge Surface的控制,如计算出两个Surface重叠的区域,至于Surface

2013-05-17 11:53:24 895

转载 Android 如何使用GPU硬件加速

Android 如何使用GPU硬件加速1.名词解释GPU:Graphic Processing Unit (图形处理器)OpenGL:Open Graphic Library 定义了一个跨编程语言、跨平台的编程接口的规格,不同厂商会有不同的实现方法,它主要用于三维图象(二维的亦可)绘制。SurfaceFlinger:Android中负责Surface之间叠加、混合操作的动态

2013-05-17 11:45:23 1999

转载 android surfaceflinger研究----Surface机制

android surfaceflinger研究----Surface机制转自: http://blog.csdn.net/windskier/article/details/7041610,感谢分享       前一篇文章介绍了android的显示系统,这篇文章中,我们把视角往上层移动一下,研究一下framework是如何与surfaceflinger进行业务交互的。

2013-05-17 11:40:52 1258

转载 Android4.0.3 显示系统深入理解

Android4.0.3 显示系统深入理解转载地址:http://blog.csdn.net/myarrow/article/details/7180561很不错的文章,很有质量1. 简介              网上已经有很多兄弟对Android的显示系统做了深入解剖,很是佩服。可最近小弟在研究Android4.0时发现出入比较大,也许是Android4.0的修改比较多吧!

2013-05-17 11:36:12 1296

转载 Android 显示系统分析

Android 显示系统分析转载地址:http://blog.csdn.net/myarrow/article/details/7164503谢谢分享喽Android display system introduce(Qualcomm 8x60 platform)一、Overview    上图的原型取自高通的文档,由于原图无法描述现有的架构,我在原图的基础了做了些

2013-05-17 11:04:57 1145

转载 Surfaceflinger process流程分析

Surfaceflinger process流程分析转载地址:http://blog.csdn.net/myarrow/article/details/7165701,多谢分享喽根据前面的介绍,surfaceflinger作为一个server process(其进程入口见main_surfaceflinger.cpp中的main函数),上层的应用程序(作为client)通过Bind

2013-05-17 10:58:06 979

转载 Android Display System --- Surface Flinger

Android Display System --- Surface Flinger文章转载地址:http://chenjianneng3.blog.163.com/blog/static/1283451262012527103641668/感觉写的很漂亮的文章,主要是针对android2.x的,虽然和Android4.x有些不同,但还是很受用,谢谢分享Su

2013-05-17 09:18:12 1031

原创 u-boot-2009.08在mini2440上的移植(一)-建立mini2440工程环境(2)

u-boot-2009.08在mini2440上的移植(一)-建立mini2440工程环境(2)  在真正开始移植Uboot之前,这里还是先分析一下uboot的启动流程吧!很有利于之后对移植的理解,这里分析的是未经修改的u-boot源码根据cpu/arm920t/u-boot.lds中指定的连接方式:OUTPUT_FORMAT("elf32-littlearm", "elf32-l

2013-05-16 20:22:42 1648

转载 ldr详解

ldr详解 ldr pc, _undefined_instruction ldr pc, _software_interrupt ldr pc, _prefetch_abort ldr pc, _data_abort ldr pc, _not_used ldr pc, _irq ldr pc, _fiq ldr命令的语法为

2013-05-15 20:22:57 3562

原创 u-boot.lds文件详解

u-boot.lds文件详解网上大部分u-boot.lds文件的分析大部分都是千遍一律,例如下面就是本人在网上找到的关于u-boot.lds的资料。OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")/*指定输出可执行文件是elf格式,32位ARM指令,小端*/OUTPU

2013-05-15 18:04:19 2403

转载 Android源代码下载

Android源代码下载下过一次Android源代码,下了6%之后就死活下不了,不是提示连接失败就是提示没有任何数据返回,最后网上人说android.git.kernel.org网站被黑了,git方式和http方式都下不了,折腾好些时间终于知道怎么配置文件,最后网站被黑却下不了,灰常悲催。今天晚上试了一下,还是不行,最后google了一下,在网上找到了答案。下面写一个完整的步骤供大

2013-05-14 23:59:19 864

转载 u-boot-2009.08在mini2440上的移植(一)---建立mini2440工程环境(1)

u-boot-2009.08在mini2440上的移植(一)-建立mini2440工程环境(1)   移植环境1,主机环境:VMare下CentOS 5.5 ,1G内存。2,集成开发环境:Elipse IDE3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-eabi-gcc v4.5.1。4,开发板:mini2440,

2013-05-14 20:13:09 899

原创 mini2440uboot移植-基本操作指令

mini2440uboot移植-基本操作指令继续uboot移植的基础知识学习1.首先学习下nandfalsh基本操作指令nand info(显示可以使用的nand flash)nand device [dev](显示或设定当前使用的nand flash)nand read addr off size (nand flash读取命令,从nand的off偏移地址处读取size字节的

2013-05-14 19:01:48 1191

转载 Android+Driver之旅:梦想、学习、坚持、自信、淡定

2012年的Android之旅:梦想、学习、坚持、自信、淡定        转载这篇文章,是为了学习老罗的精神,学习了,大神前段时间参加了2012年度IT博客大赛,进了前十强,写了一篇获奖感言,不过还没正式在CSDN发表出来。眼看2012年就要结束了,刚好借这个机会将2012年度IT博客大十强获奖感言发表出来,也算是对2012年博客的一个总结,关键字是“梦想”、“学习”、“坚持”、

2013-05-14 16:03:32 889

原创 ubuntu安装jdk全过程

ubuntu安装jdk全过程首先,从http://java.sun.com中下载jdk,我的版本是jdk1.6.0_12,我下载的是bin文件,我将下载的jdk1.6.0_12.bin文件置于/usr/lib/jvm/java中然后,在shell中执行:代码:sudo chmod u+x  /usr/lib/jvm/java/jdk1.6.0_12.bin修改bin

2013-05-14 14:29:48 1823

etc.tar.gz

etc目录,用于构建文件系统时直接使用,省去额外花费时间去编辑

2013-06-21

busybox-1.13.3

busybox-1.13.3,构建文件系统工具

2013-06-21

u-boot-2010.03-tekkaman-master

u-boot-2010.03-tekkaman-master,完整移植版本,方便初学者学习

2013-06-21

C语言接口与实现

C语言接口与实现,深入學習c語言開發,適用於中級開發人員,更上一個臺階!!

2012-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除