自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

绝影

奋斗在追求梦想的道路上,再累也是幸福的

  • 博客(50)
  • 资源 (2)
  • 收藏
  • 关注

原创 Android Studio 更新SDK无法联网问题

    Android studio通过获取Android SDK Sites设置的offline repo来安装,默认的offiline Repo可能刷新不出来SDK Platform和SDK Tools的其他版本,需要修改offline repo的URL,即offline-repo.xml文件,下面讲如何修改此文件:    可以去找一些repository的网址,网址内部会有cmake,NDK...

2018-06-12 10:54:33 1586

原创 Android 底层框架笔记

android底层的实现     android的apk想要获取底层的数据或者接口,要实现底层的相关服务,现对此作出记录      1,编写hal层                hal层代码主要是对驱动提供的接口进行操作,其中有open ,read,write,mmap,ioctl和sys下的一些接口的操作;              hal层代码严格按照安卓的那套写法编写,

2015-01-26 17:22:56 932 1

原创 Linux开机Log制作

1)安装工具    sudo apt-get install netpbm2)在配置内核的时候选中了启动Logo的支持。     使用下面的方法可以将企鹅的Logo换成自己喜欢的任意图片。     首先准备一幅自己喜欢的图片,然后将背景涂成黑色。然后将该图片保存成png格式,例如linuxlogo.png。在Linux下使用下面的命令:     # pngtopnm l

2014-12-15 10:33:55 1145

原创 AllWinner board 笔记

1,编译出现 sh : arm-linux- 找不到      是因为 Makefile配置CROSS_COMPARE的时候最后的空格没有处理干净;2,自己编译的驱动加载后出现             insmod: init_module 'wlan.ko' failed (Exec format error)             wlan: disagrees about

2014-12-13 22:14:24 917

原创 从Linux内核镜像中提取内核配置文件

如果你是一个喜欢编译内核的狂人,同时也是经常忘记将默认的.config文件备份的懒家伙,那么下面的方法将会使你的内核配置工作变得更轻松,从linux 2.6开始内核提供了一种将.config附加到映像文件的方法,通过这种方法,内核配置者可以不必备份当前的.config文件,而是在需要的时候直接从内核映像中提取.config文件。步骤如下:1. 配置内核1.1 make menuco

2014-12-13 22:03:43 1964

原创 Android的权限机制

Android是基于Linux的系统,其权限访问控制自然离不开Linux的权限访问控制,而在第一章当中,将分成两个部分来剖析Android的权限控制系统。一. Linux权限机制     Linux的权限访问是由进程(访问者)和文件(被访问者)两部分组成的。其中相当一部分内容参考至APUE[1]。1.1 Llinux文件权限     我们在Linux当中输入命令    $ls

2014-12-11 15:17:18 597

原创 Dropbear

dropbear是一个轻量级的ssh服务,比openssh要小的多,而且速度比较好。本文介绍在嵌入式的环境中的安装方法。环境以x86架构的linux+busybox环境为例,如果dropbear编译安装于流行版的linux下应该问题不大,但是对于精简的busybox环境就需要做一些工作。我所搭建的环境为x86架构的,比较简单,不需要交叉编译。对于其他的嵌入式架构,可能需要交叉编译。但是这里所说

2014-12-11 10:14:10 2287

原创 ts_calibrate

/* * tslib/tests/ts_calibrate.c * * Copyright (C) 2001 Russell King. * * This file is placed under the GPL. Please see the file * COPYING for more details. * * * Basic test program for touchscreen lib

2014-12-05 16:03:26 1737

原创 WIfi 移植

移植与交叉编译hostapdtar xzf wpa_supplicant_hostapd-0.8_rtw_r6747.20130222.tar.gzcd wpa_supplicant_hostapd-0.8_rtw_r6747.20130222/hostapd/CC=/usr/local/dvsdk/linux-devkit/bin/arm-arago-linux-gnueabi-gcc

2014-12-03 11:36:22 965

原创 Git常用命令

查看、添加、提交、删除、找回,重置修改文件git help # 显示command的helpgit show # 显示某次提交的内容 git show $idgit co -- # 抛弃工作区修改git co . # 抛弃工作区修改git add # 将工作文件修改提交到本地暂存区git add . # 将所有修改过的工作文件提交暂存区git rm # 从版本库

2014-11-27 10:18:09 309

原创 Linux DMA

大家都知道,DMA的操作是需要物理地址的,但是在linux内核中使用的都是虚拟地址,如果我们想要用DMA对一段内存进行操作,我们如何得到这一段内存的物理地址和虚拟地址的映射呢?dma_alloc_coherent这个函数实现了这种机制。1、函数原型:void *dma_alloc_coherent(struct device *dev, size_t size,dma_addr_t *dma_

2014-11-18 14:27:19 491

原创 Linux SDIO

1、sdio接口层解析SDIO总线     SDIO总线 和 USB总线 类似,SDIO也有两端,其中一端是HOST端,另一端是device端。所有的 通信 都是 由HOST端 发送 命令 开始的,Device端只要能解析命令,就可以相互通信。  CLK信号:HOST给DEVICE的 时钟信号,每个时钟周期传输一个命令。  CMD信号:双向 的信号,用于传送 命令 和 反应。 

2014-11-18 13:34:15 1182

原创 Linux 内核驱动固件加载方式

对于内核驱动需要的固件文件,有两种方式加载:   方式1:固件编写进内核1,  在驱动的  Driver  --->  Generic Driver Options  ---> External firmware blobs to build into the kernel binary 下编写 固件名字,(全称)。同时在此后的root direction下编写文件路径,  e

2014-11-13 15:44:14 2985 1

原创 Automake的生成

你说的是automake吧,否则makefile是自己写的。这个网上资料和流程的介绍很多的,给你一个当年我写的作业吧。其实都不难的,自己多试试就成,那时候我刚开始的也觉得一点都不会。按照步骤一步一步来吧,有什么问题继续问我把。这个也好长时间没弄了linux了,有点生疏了 呵呵~1.建目录 在工作目录下建一个zsy目录,用它来存放zsy程序及相关文件。

2014-11-07 09:36:41 441

原创 Linux 线程与进程的学习

【摘要】本文首先介绍了进程和线程的区别,接着分析了内核线程、轻量级LWP线程以及常见的用户线程的特点,同时介绍了内核线程和进程的区别。分析了创建内核线程kernel_thread函数的实现过程,介绍了一个在驱动中使用内核线程的实例。最后针对内核线程创建销毁的特点,给出了通用的内核线程操作函数API,使用该API可在自己的驱动或内核代码中方便的使用内核线程。 1      线程和进程的差别

2014-11-04 14:22:56 481

原创 BT 的初步探索

蓝牙模块与单片机或者嵌入式ARM处理器的接口有

2014-11-04 09:42:02 789

原创 C++ 总结笔记 <一>

一,定义类的对象先定义一个类:class A{public:     A();    virtual ~A();......};类实现略。用的时候:A a;a.成员函数;a.成员变量;a 就是一个对象。也可以这样用:A *a = new A;a->成员函数;a->成员变量;注:    A a; 

2014-11-03 09:20:52 381

原创 Android之Camera

总体介绍 Android Camera 框架从整体上看是一个 client/service 的架构,有两个进程:一个是 client 进 程,可以看成是 AP 端,主要包括 JAVA 代码与一些 native c/c++代码;另一个是 service 进 程,属于服务端,是 native c/c++代码,主要负责和 linux kernel 中的 camera driver 交互,搜

2014-10-21 10:24:00 422

原创 Android.mk

Android中加入自己的文件的 android.mk的编译:

2014-10-17 16:23:51 389

原创 vi 删除行的所有操作

我这里在编辑一个很大的文件,有几万行,都是文件名sheetid, 中间有很多空行,我现在要做的事情就有要把这个文件中的空行都删除掉,这个本来想在ultraedit里面完成的,结果弄了好半天都没有搞定,时间紧急也没法再去慢慢的try了,干脆放到AIX上面使用vi来做,也是在网上google 结果找到很多这样的:12)删除操作 :%s/r//g 删除DOS方式的回车^M :%s= *$

2014-10-10 13:52:26 922

原创 Android中Parcel的分析以及使用

简单点来说:Parcel就是一个存放读取数据的容器,Android系统中的binder进程间通信(IPC)就使用了Parcel类来进行客户端与服务端数据的交互,而且AIDL的数据也是通过Parcel来交互的。在Java空间和C++都实现了Parcel,由于它在C/C++中,直接使用了内存来读取数据,因此,它更有效率。分析Binder机制中的客户端与服务器端进行实际操作ontransact()函

2014-09-17 16:33:37 688

原创 Linux list解读

Sam之前看2.4 kernel时,常看到List.也仔细看了一下,但现在长期没有看kernel,没有写程序,已经忘记了很多。今天又看一看并记录下来。 Linux Kernel中,常常需要使用双向链表。在~/include/linux/list.h中,就定义了双向链表和常用的function.链表头如下:struct list_head { struct list_head *

2014-09-04 11:15:35 589

原创 Android.mk文件语法规范及使用模板

Android.mk文件语法规范根据eoeandroid上的的连载,进行一些更新、修改和加亮。今天翻译ANDROID-MK.TXT文件(英文原文件在/development/Ndk/Docs/android-mk.txt)Android.mk文件语法规范 Introduction:Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的, 这

2014-08-29 17:35:17 497

原创 linux gdb 调试

一.gdb常用命令:命令描述backtrace(或bt)查看各级函数调用及参数finish连续运行到当前函数返回为止,然后停下来等待命令frame(或f) 帧编号选择栈帧info(或i) locals查看当前栈帧局部变量的值list(或l)列出源代码,接着上次的位置往下列,每次列10行

2014-08-27 10:45:19 621

原创 Linux文件属性shell大全

1.创建文件夹#!/bin/shmkdir -m 777 "%%1"2.创建文件#!/bin/shtouch "%%1"3.删除文件#!/bin/shrm -if "%%1"4.删除文件夹#!/bin/shrm -rf "%%1"5.删除一个目录下所有的文件夹#!/bin/bashdirec="%%1" #$(pwd)for dir2del in $direc

2014-08-26 10:24:58 2285

原创 android 编译错误do_inode_allocate_extents: Failed to allocate 157

android 编译错误do_inode_allocate_extents: Failed to allocate 157 (2013-05-06 17:22:22)转载▼ 分类:android移植out/target/product/rk2928sdk/obj/PACKAGING/systemimage_intermediates/syst

2014-08-19 15:28:30 821

原创 Android wifi 简要分析

这里列了很多,但是大致可以分为四个主要的类ScanResult wifiConfiguration WifiInfo WifiManager(1)ScanResult,主要是通过wifi 硬件的扫描来获取一些周边的wifi 热点的信息。在我们进行wifi 搜索的时候,一般会搜到这些信息,首先是接入点名字、接入点信息的强弱、还有接入点使用的安全模式,是WPA、WPE。打开这个类,我们可以看到以

2014-08-12 10:53:18 935

原创 Vi 配置

搞了一天配置vim, 看了很多博客, 把基本的配置都整完了,貌似有个自动补全插件还没装,后面慢慢来了,现在基本的东西都差不多了,感觉还算做了见一劳永逸的事情, 感觉也多好耍的,就像看说明书玩玩具一样的感觉……syntax on " 语法高亮syntaxenablefiletype on"检测文件的类型filetype pluginonfiletype plugini

2014-08-12 09:53:15 411

原创 android的logcat详细用法

Android日志系统提供了记录和查看系统调试信息的功能。日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过 logcat 命令来查看和使用.     一、使用logcat命令的目的:      1、你可以用 logcat 命令来查看系统日志缓冲区的内容:      [adb] logcat [] ... [] ...       详细内容,请查看Li

2014-08-08 14:43:48 413

原创 android wifi驱动移植详细过程

对于刚入手android没多久的人来说,android wifi 驱动的移植确实还是有难度的,不过参考了网友的相关帖子后,最终还是移植成功了,,以便自己和他人查看学习:&&&& WIFI的基本架构 &&&&(这一部分比较重要,是一直wifi驱动的基础)1、wifi用户空间的程序和库:external/wpa_supplicant/生成库libwpaclient.so和守护进程w

2014-08-08 13:48:35 3680

原创 Ubuntu启动问题以及Grub Rescue修复方法

Ubuntu启动问题以及Grub Rescue修复方法问题:之前系统是Windows7 64bit(C盘) + D,E盘(都是NTFS) + Ubuntu。今天,在Windows7中删除了E盘,准备向其中安装RedHat 6。 重启Windows7之后发现Ubuntu的grub菜单不能启动。屏幕显示Invalid FileSystem。 (如果没有记错的话,

2014-08-04 14:45:58 480

原创 升级DM5校验

1,将某个文件生成带DM5的文件,使用srec_cat工具;       read A   #原始文件       srec_cat $A -o 要生成的文件名  -Line_Length 46 -Address_Length 3 -HEAder "The title"   2,从生成的文件中读取DM5数据      dm5sum  生成的文件         此时会将生成的带

2014-08-04 13:14:33 1210

原创 嵌入式杂项

让自己速度快起来你可以 自己在系统中设置 步骤我给你写出来   单击“开始→运行”命令,输入“gpedit.msc”后回车,运行“组策略”程序,  依次展开“计算机配置→管理模板→网络→Qos数据包调度程序”,在右侧的  窗口中双击“限制可保留带宽”项,打开“限制可保留带宽属性”对话框,  选择“已启用”选项,然后在“带宽限制”中把数值设为“0”即可一起用一  个..不要用软件

2014-07-05 15:33:23 548

原创 ubunt64位系统下的使用问题

1,ubunt64位系统安装之后有些软件biany

2014-07-05 15:02:17 576

原创 dd

dd命令使用详解1.命令简介 dd 的主要选项:指定数字的地方若以下列字符结尾乘以相应的数字:b=512, c=1, k=1024, w=2, xm=number mif=file #输入文件名,缺省为标准输入。 of=file #输出文件名,缺省为标准输出。 ibs=bytes #一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。 obs=b

2014-04-24 13:18:56 813

转载 SVN linux 命令

SVN linux 命令1、将文件checkout到本地目录svn checkout path(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn co2、往版本库中添加新的文件svn add file例如:svn add test.php(添加test.php)svn ad

2014-03-06 16:13:00 463

原创 应用程序实现多路监听的内核驱动实现

#include #include #include #include #include #include #include #include #include #include #include #include #include static int major;struct cdev btn_cdev;struct class

2014-02-20 11:04:21 512

原创 基于Linux的LCD驱动及测试代码

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include

2014-02-20 10:56:38 2689

原创 基于Linux内核的1-wair总线驱动

#include #include #include #include #include #include #include #include #include #include #include #define DS18B20_RESET   (0x10009)#define DS18B20_REL     (0x10011)#defi

2014-02-20 10:51:17 662

原创 基于Linux内核的IIC驱动

#include #include #include #include #include #include #include //分配初始化设备ID信息static struct i2c_device_id at24c02_id[] = {{"at24c02", 0} //这个名称很重要,用于匹配};static struct i2c_c

2014-02-20 10:45:31 1451

Linux命令大全检索

经典的Linux命令大全,全中文举例+翻译,增加了检索书签,下载后你就乐吧!

2014-05-07

S5PV210的lcd驱动分析

本文档是基于S5PV210 lcd驱动的最详细分析,简单易懂,有助于初学者快速进入lcd类型驱动的学习和移植;

2013-12-22

空空如也

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

TA关注的人

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