自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (8)
  • 收藏
  • 关注

原创 android adb流程

1. adb_trace_init  : 初始化调试级别,  通过设置ADB_TRACE=all环境变量可打开调试    默认的服务端口为5037,也可以通过环境变量ANDROID_ADB_SERVER_PORT来设置。执行adb命令时过程:   *) 把命令变成字符串(例如 host:devices)   *) 通过tcp连接到本地服务器(5037端口)   *) 如果服务器

2013-07-03 18:36:20 4178

原创 git邮件发送

1. 下载脚本:  post-receive    获取git项目下config文件中的内容:收件人列表:           recipients=$(git config hooks.mailinglist)里程碑收件人列表, 不是必须的:  announcerecipients=$(git config hooks.announcelist)邮件标题前缀:       e

2013-07-02 11:43:33 1756

原创 音频降采样系数

如果需要把8K, 16K, 32K, 48K采样率的音频数据降为4K的音频数据, 最简单的方法根据降频倍数来取点, 但是线性度不好.另一种线性度好一点的方法是: 取适当个数的点数, 各点乘以各自点的系数, 然后相加取平均值.降频倍数与系数的关系如下:2倍:     {0.3, 0.4, 0.3}4倍:    {0.15, 0.2, 0.3, 0.2, 0.15}8倍:   {0

2013-06-09 10:06:37 4257

原创 shell+makefle提取kernel和uboot等编译部分的代码

之前写过一篇使用 使用scsh编写脚本收集编译的代码(http://blog.csdn.net/joans123/article/details/7475046), 之所以再写这边文章是因为scsh不常见,以及之前那种方法的扩张性不行. 由于代码编译有Makefile管理的,所以用Makefile来搜集所编译的代码是相当方便及容易扩张的.下面的collect-src脚本先生成一个Makef

2013-01-18 18:27:49 1359

原创 linux commands

1. lsb_release         print distribution-specific information, example :#lsb_release  -aDistributor ID:    UbuntuDescription:    Ubuntu 12.04.1 LTSRelease:    12.04Codename:    precise

2012-11-16 21:58:57 581

原创 实模式和保护模式

一. 实模式介绍    X86体系的CPU启动时进入实模式, 20根地址线, 16位寄存器, 最多访问1M的内存空间,使用段地址(CS) + 偏移地址的方式来访问. 二.保护模式介绍     提供了硬件对多任务的支持并能够快速地进行任务切换和保护任务环境,  物理内存也不能直接被程序访问. 4个特权和完善的特权检查机制. 为了在32位保护模式下执行纯16位程序,支持虚拟8086方式

2012-11-10 22:14:39 718

原创 objcopy/objdump/readelf等工具使用

1. objcopy 复制及修改目标文件    -I  :   输入文件的格式(binary, elf32-i386等)    -O  :   输出文件的格式    -B  :   二进制文件体系结构(i386, arm等)    -R  :   删除不用的section(.comment  .note 等)    -j  :   仅留下有用的section(.text

2012-11-07 19:46:10 1405

原创 linux下汇编语言编译执行

1. 如果使用gcc编译汇编文件的话, 使用main符号作为入口( gcc -o a.out  a.S)2. 如果使用as和ld命令编译汇编的话, 使用_start符号作为入口( as  test.S -o test.o;  ld test.o -o a.out)     以上生成两个文件都是ELF格式的可执行文件, 只不过第一个会自动添加一些环境的初始化代码. 对于ELF文件可以通过

2012-11-07 18:57:51 7442

原创 gnu汇编

1. GNU汇编的伪指令. = _start + 4        表示当前地址等于标号_start的地址加4.file   定义一个FILE类型的符号.text   指明后面段为指令.data   指明后面段为数据.comm symbol,length        申明一个符号名为symbol的通用符号(common symbol).当链接时,目标文件中的通用符号可

2012-11-06 22:56:21 1299

原创 IA-32汇编知识

1. 通用寄存器     EAX   用于操作数和结果数的累加器     EBX   指向数据内存段中的数据指针     ECX   计数器     EDX   IO指针     EDI     用于字符串操作的目标数据指针     ESI     用于字符串操作的源数据指针     ESP    堆栈指针     EBP    堆栈数据指针其中EAX, EBX

2012-11-06 22:23:07 753

原创 内核学习

1. 节点中使用的链表通知机制(函数: fsnotify_clear_marks_by_inode )struct fsnotify_mark_entry {    __u32 mask;            /* mask this mark entry is for */    /* we hold ref for each i_list and g_list.  also

2012-09-29 09:23:35 580

原创 usb-简介

1. USB物理接口分类:    主机(USB HOST)    设备(USB DEVICE)    集线器(USB HUB)2. 速率传输: 低速(1.5Mb/s), 中速(12Mb/s), 高速(480Mb/s)3. 数据传输方式:    控制传输(Control transfer)      --- 短包,用于设备控制合配置.    中断传输(Interrup

2012-08-10 19:44:19 947

原创 usb-host

1. 端点0中断处理    * 选择端点0    * 读取端点0状态查看接收到的数据长度    * 判断错误状态,如果出错设置urb->status状态并结束urb请求    * 判断端点0状态做出相应动作并更新状态        1)START : 发送setup包,并设置为IN或者OUT状态        2)IN    : 读入数据包到urb        3)O

2012-08-10 19:43:23 878

原创 usb存储

1. USB存储类下面的子类有:    01h     flash设备    02h     CD-ROM    03h     QIC-157    04h     Floppy    05h     Removable media    06h     SCSI transparent    07h     password-protected    f0h

2012-08-10 19:42:48 718

原创 usb 驱动

1. USB host Controller驱动程序    * 处理USB状态,管理并报告状态信息    * 数据并/传转换    * 生成frame或者microframe    * 处理数据传输的请求    * 处理USB总线协议    * 进行差错检测和控制    * 处理电源管理请求, 把总线置为suspended状态以及响应wakeup事件    * 提供

2012-08-10 19:42:08 2871

原创 omap3 usb register

* 功能地址寄存器(Function Address Regsiter     --- 0x00)    设备模式时,作为USB设备的地址.* 电源管理寄存器(Power Management Register     --- 0x01)    bit[0] : 设置使能挂起输出    bit[1] : 设置时进入挂起模式. 读中断或者RESUME位设置时清除此位    b

2012-08-10 19:40:33 1038

原创 arm mmu

一个两级页表集合存储在内存中用来控制地址转换,权限检查,内存区域属性。MMU使用一个转换查找缓冲(TLB)来缓存页表. 地址转换映射可分为页表映射和区域映射。  * 大页映射  * 小页映射  * 极小页映射  * 段(section) 映射段映射只要一级转换, 页映射需要2级转换.段描述符:  提供1M内存块的基址, 即一个描述符描述1M的内存空间.bits

2012-06-09 12:14:13 1147

原创 缓冲区溢出保护

1. 堆栈内存地址随机化,程序每次执行的堆栈地址都不一样(空出一段随机偏移).关闭方法:sysctl –w kernel.randomize_va_space=0echo 0 > /proc/sys/kernel/randomize_va_space2. 栈代码不可执行   如果栈中代码不可执行的话, 缓冲区溢出的shellcode将不能执行.关闭方法:

2012-06-09 10:39:52 1182

原创 linux进程空间

在32位机器的linux系统同进程的地址空间大小是4G.0~3G( 0x0000 0000 ~ 0xBFFF FFFF) 属于用户空间3~4G( 0xC000 0000 ~ 0xFFFF FFFF) 属于内核空间进程地址空间由以下几部分组成高地址          内核空间                          |  0xc000 0000    |

2012-06-09 10:10:33 819

原创 arm AAPCS(程序调用标准)

ABI         :  Application Binary Interface 应用程序二进制接口EABI      :  Embedded ABI  嵌入式ABIPCS       :  Procedure Call Standard  程序调用标准AAPCS  :  PCS for ARM Architecture    ARM体系结构程序调用标准APCS     :

2012-06-06 13:23:10 7712

原创 arm 相关学习(2)

* 六个操作模式  User Mode  ---  用户模式,大部分任务在此模式下运行  FIQ      ---  快速中断模式  IRQ     ---  普通中断模式  Supervisor  ---  特权模式,软件中断或者复位进入  Abort   ---  数据访问错误模式  Undef  ---  指令未定义模式*  ARM V4添加第七中模式   S

2012-06-05 20:44:26 984

原创 arm 相关学习(1)

1. 有16个可见的32bit寄存器:      r0-r7(所有处理器模式都有各自的寄存器)     r8-r12(通用目的寄存器)其中:   r10  ---  sl (stack limit)寄存器            r11  ---  fp (frame point) 寄存器            r12   --- ip (供链接器使用)     r1

2012-06-05 13:50:10 1175

原创 linux completion

一. linux kernel阻塞等待事件方法:    把线程置为可中断或者不可中断状态    然后调用进程调度函数执行其他代码    该进程代码再次执行的情况:    1) 调度超时    2) 进程被等待事件唤醒    3) 进程设置可中断状态,被某个信号中断了    4) CPU空闲调度    此时需要判断进程是否被等待事件唤醒, 是的话则返回. 否则重复上述

2012-05-30 20:00:36 1353

原创 emacs 之 缩写表(abbrev)

变量:abbrev-table-name-list  缩写表变量的列表global-abbrev-table    全局缩写表变量local-abbrev-table    当前buffer的缩写表fundamental-mode-abbrev-table    基础模式的本地缩写表abbrev-all-caps        非空表示扩展多字缩写时全部大写abbrev-s

2012-05-19 09:58:41 1518

原创 asmack杂记

asmack的代码以及jar可以从 http://code.google.com/p/asmack/downloads/list 下载.在android中创建一个service用来管理连接以及处理报文.创建连接代码如下 ,其中server_ip是jabber服务器的ip, 可以是域名.        Log.i(TAG, "ConnectManager in...");

2012-05-14 20:12:32 13062

原创 Emacs 键映射(keymap)

Emacs 键映射(keymap)   一个键序列是由一些键值单元组成的。键值包括字符,功能键和鼠标按钮以及所有你能发送到电脑的输入。 在elisp中键序列要么是字符串,要么就是向量。 控制字符以 "\C-" 串打头,Meta字符以"\M-"打头。 另外,,,这些事件与"\t", "\r", "\e"和"\d"相对应。 键序列和函数绑定记录在keymap的结构体当中。   全局的key

2012-05-13 14:24:45 6589

原创 Elisp 标记-清除算法简介

标记-清除(mark-sweep)算法    Emacs Lisp最早使用的就是标记清除算法. 算法分为"标记"和"清除"两个阶段.1) 首先标记出所有正在使用的对象.2) 回收那些所有未被标记的对象,并清除掉标记.    该算法的缺点是:1) 效率问题, 标记和清除的效率并不高. 2) GC运行时, 正常程序必须停下来, 降低实时性.下面以elisp中的cons单

2012-05-08 20:28:21 1659

原创 linux下查看哪些程序占用sdcard or usb

1. 遍历查看/proc下的程序(以数字打头的目录, 一个目录对应一个程序的pid)    文件名称获取  cat  /proc/ [pid] /cmdline2.查看 fd目录下的链接文件查看 maps文件的内容查看 cwd链接文件查看 root链接文件查看 exe链接文件如果其中一个路径与你sdcard的路径相同, 则代表该程序占用sdcard

2012-05-07 10:43:49 1254

原创 使用flex编程解析内存依赖的.o.cmd文件

编译内核之后相应的文件会产生一个 .*.o.cmd的依赖文件, 根据此文件可以看出被编译的.o文件依赖哪些头文件,以及被编译的参数..o.cmd文件的格式为:cmd_dir/output.o := commandsdep_dir/output.o := depended_files     总的来说由两部份组成, 一个是编译命令, 另一个是依赖文件. 所以此法分析分成两结: CMD

2012-04-26 19:53:26 2933

原创 objdump 反汇编一个函数的脚本

1)使用System.map文件查找函数的起始地址和结束地址2)使用objdump -d 反汇编, 然后通过--start-address和--stop-address参数指定函数区间3)使用nm -n out.elf > System.map 命令生成System.map文件4)grep -A 1 打印匹配行和下一行, awk 打印第一列地址.#!/bin/shrou

2012-04-19 12:51:44 4439

原创 使用scsh编写脚本收集编译的代码

在查看比较复杂的代码时, 往往由于过多的宏定义以及相同的函数名弄的晕头转向的.比较快速的查看代码的方法是1. 先用自己板子的配置文件编译源码2. 根据编译的.o文件和.depend文件 使用脚本生成一个文件列表3. 使用source insight或者其他查看代码工具添加文件列表.    经以上步骤, 查看的源码就不会包含那些不被使用的头文件和c文件.  这样便能快速而方便的了

2012-04-18 20:32:19 1648 1

原创 dma使用

1. DMA : 直接存储访问. 在不带MPU或者DSP的情况下,外设和内存之间高性能数据传输.2. 一个DMA传输器可以通过一个逻辑DMA通道来编程, 以适应应用需求.3. 专用DMA控制器: ISP(camera image signal processor) DMA, EDMA(内嵌在IVA2.2子系统), 显示DMA, USB HS(high-speed) DMA.4. DMA

2012-04-11 13:50:51 5893 1

原创 自上而下分析法

归约: -- 自下而上的语法分析过程 -- 分类: 简单优先分析法,算符优先分析法,LR分析法1.自下而上的语法分析过程思想 -- 是一个最左归约的过程, 从输入串开始, 朝着文法的开始符号进行规约,直到文法到达文法的开始符号为止的过程。 -- 工作方式: 移进--规约 -- 即: 自左至右把输入串的符号以一个移进栈,在移进过程中不断查看栈顶符号串,一旦形成某个巨型

2012-04-08 09:45:36 4607

原创 自上而下语法分析LL(1)

1. 语法分析的地位 --- 是编译程序的核心部分2. 语法分析的任务   -- 识别由词法分析得出的单词序列是否是给定文法的句子3. 语法分析的理论基础   -- 上下文无关文法和下推自动机4. 语法分析的方式   1) 自上而下语法分析      * 反复使用不同产生式进行推导以谋求与输入符号串相匹配   2) 自下而上语法分析      * 对输入符号串寻

2012-04-07 15:06:00 11390

原创 flex中dfa和nfa

有限自动机的数学模型由五个部分组成:  1. 有穷状态集 States  2. 输入字符集 Input symbols  3. 转移函数 Transitions  4. 起始状态 Start state  5. 接受状态 Accepting states一个状态机由起始状态, 通过接受输入一系列字符来实现状态迁移, 最终到达接受状态. 一. 在flex中一个nf

2012-04-05 20:45:15 1707

原创 设备事件通知

1. hotplug使用   1)内核配置文件:CONFIG_HOTPLUG=yCONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"   2) 当设备添加,删除,更改时内核会调用 /sbin/hotplug 程序执行   3) 可通过/sys/kernel/uevent_helper 或者 /proc/sys/kernel/hotplug 修改 h

2012-03-29 08:46:21 671

原创 linux工具

1. ip与mac绑定#arp  -f ip-macip-mac内容为:192.168.99.19   bc:30:5b:b9:93:82#arp -n地址                     类型    硬件地址            标志  Mask            接口192.168.40.215           ether   14:14:4b:0

2012-03-29 08:41:18 708

原创 gcc生成二进制文件供uboot的go命令执行

使用gcc编译出二进制文件给uboot中go的命令执行.test.c 文件如下 ================ Start of test.c =======================================#include typedef void (*pr)(const char *fmt, ...);int main(int argc, cha

2012-03-21 20:36:30 5625 1

原创 android 屏幕设置相关

锁屏设置:1. 初始值 : 600002. 数据库/data/data/com.android.providers.settings/databases/settings.db中        system 表 screen_off_timeout.3. 开机锁屏, 在frameworks/policies/base/phone/com/android/internal/polic

2012-03-09 19:33:27 11702 1

原创 kernel-DDR配置

启动过程参考: http://bbs.chinaunix.net/thread-2039668-1-1.html参考: http://processors.wiki.ti.com/index.php/Setting_up_AM37x_SDRC_registersomap3_evm_init_irq 函数配置 sdrc_cs0和sdrc_cs1各种速率所对应的参数.最后通过 om

2012-03-08 20:23:14 4687

git发送邮件脚本

根据post-receive修改的git发送邮件脚本. 更正邮件标题,并发送详细的diff记录.

2013-07-02

windows 键值对照表

windows下修改键值映射表, 修改注册表,添加scancode map时使用

2011-11-23

omap3evm的u-boot的lcd补丁

omap3evm的u-boot的lcd补丁。 在board/ti/evm/目录下打上该补丁。

2011-11-01

U盘kon-boot制作

注:压缩文件中包含:1.grub4dos引导文件及修改好的配置文件。 2.grubinst_gui.exe程序 3.kon-boot镜像文件 使用kon-boot镜像和grubinst_gui.exe程序制作U盘可引导设备,重启后可以直接进入系统,无需使用密码。基本上适用所有windows系统(包括win7)及Ubuntu系统。 windows下可选择任何用户、空白密码就能进去。 Ubuntu下切换到字符终端,用户名为:kon-usr 若出现错误请输入:kon-fix

2010-04-25

NASM中文手册 PDF

NASM的中文手册,NASM是linux和Windows通用的Intel汇编格式的汇编器。对学习汇编来说是个不错的选择

2009-05-24

黑客攻防编程解析 机械工业出版社

机械工业出版社 本书从网络技术角度,深入探讨了攻防技术,并提供了一些主要c/c++来描述的有参考价值的代码

2009-05-24

jflash_s3c2440.linux.tar.bz2

jflash 2440在linux下面使用烧写程序到ARM开发板上去,需要使用到并口。 网上这玩意不好找!

2009-04-18

php_manual_en.chm

学习PHP必备的手册,本手册详细介绍PHP语言的各种函数功能等等。。。。。

2009-04-18

空空如也

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

TA关注的人

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