自定义博客皮肤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)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 Source Insight 添加 文件格式化命令

1. 下载Astyle.exe文件http://d.119g.com/f/FB635F8C19491D1D.html     如,解压后位置为:"E:\installer\AStyle_2.03_windows\AStyle\bin\AStyle.exe"2.  打开sourceinsight3. options->custom commands -> add     加一个新

2015-09-20 17:03:31 735

原创 linux shell截取字符串

shell中截取字符串的方法有很多,${expression}一共有9种使用方法。   ${parameter:-word}   ${parameter:=word}   ${parameter:?word}   ${parameter:+word}  上面4种可以用来进行缺省值的替换。 ${#parameter}上面这种可以获得字符串的长度。  ${paramet

2015-01-12 15:54:54 756

原创 PCI 配置空间 相关摘要

1. 每一个在BUS上的DEVICE都有一个配置空间2.

2014-11-21 15:14:17 541

转载 activity属性设置大全

activity属性设置大全android:allowTaskReparenting=["true" | "false"]        是否允许activity更换从属的任务,比如从短信息任务 切换到浏览器任务。android:alwaysRetainTaskState=["true" | "false"]        是否保留状态不变, 比如切换回home, 再从新打开,

2014-11-18 10:53:52 530

原创 用GCC 展开 源文件

gcc -E -P 源文件这个命令只处理源文件,把相关的代码全部展开。

2014-09-03 15:31:33 914

转载 ARM Linux 3.x的设备树(Device Tree)

目录(?)[-]ARM Device Tree起源Device Tree组成和结构DTS device tree sourceDTC device tree compilerDevice Tree Blob dtbBindingBootloaderDevice Tree引发的BSP和驱动变更常用OF API总结1.    ARM Device Tree起源Lin

2014-05-12 23:55:45 487

原创 __devexit_p的功能

__devexit_p的功能在看驱动的时候,时常会有如下代码:.remove = __devexit_p(XX_exit),这里的__devexit_p有什么作用呢?我在include/linux/init.h中找到了它的定义:/* Functions marked as __devexit may be discarded at kernel link time, d

2014-05-08 16:59:01 1343

转载 i2c驱动之设备模型建立

一:设备模型建立流程图 二:重要函数分析(1)新适配器加入内核: int i2c_add_numbered_adapter(struct i2c_adapter *adap){ int id; int status; if (adap->nr & ~MAX_ID_MASK)  return -EINVAL;retry://为i2c_adapter

2014-05-07 11:45:27 803

转载 lock_kernel

谈到lock_kernel,首先应该参看源码(此处所讲的是2.6.11版本的内核)中的include/linux/smp_lock.h文件。具体请参见该文件,在此处就不列出源码了下面就开始分析了#ifdef CONFIG_LOCK_KERNEL首先就是判断我们是否配置内核支持内核锁。当然分两种情况了,要么配置了,要么就没有要这种功能先来看配置了内核锁之后的代码部

2014-05-07 11:23:49 1172

转载 class_create & class_device_create

//主要是在/sys/class/ 下创建一个 “name”的文件夹 ! 从linux内核2.6的某个版本之后,devfs不复存在,udev成为devfs的替代。相比devfs,udev有很多优势,在此就不罗嗦了,提醒一点,udev是应用层的东东,不要试图在内核的配置选项里找到它;加入对udev的支持很简单,以作者所写的一个字符设备驱动为例,在驱动初始化的代码里调用class_create

2014-05-06 21:25:39 684

转载 register_chrdev()与unregister_chrdev()

Linux下的设备驱动程序被组织为一组完成不同任务的函数的集合,通过这些函数使得Windows的设备操作犹如文件一般。在应用程序看来,硬件设备只 是一个设备文件,应用程序可以象操作普通文件一样对硬件设备进行操作,如open ()、close ()、read ()、write () 等。Linux主要将设备分为二类:字符设备和块设备。字符设备是指设备发送和接收数据以字符的形式进行;而块设备则以整

2014-05-06 16:26:33 1510

转载 浅析linux内核中的idr机制

原文:http://blogold.chinaunix.net/u3/93926/showart_1874142.html    idr在linux内核中指的就是整数ID管理机制,从本质上来说,这就是一种将整数ID号和特定指针关联在一起的机制。这个机制最早是在2003年2月加入内核的,当时是作为POSIX定时器的一个补丁。现在,在内核的很多地方都可以找到idr的身影。idr机制适用在那

2014-05-05 11:05:36 515

转载 i2c_client,i2c_adapter和I2C-core的简介

I2C的主要有两大数据结构,struct i2c_client 和 struct i2c_adapter。  2.1 i2c_client     struct i2c_client {        unsigned short flags;          unsigned short addr;          char name[I2C_NAME_SIZE]

2014-05-04 20:20:50 935

转载 OpenFlow安全:OpenFlow能否保护SDN

OpenFlow如何实现和保护软件定义网络?OpenFlow是实现软件定义网络(SDN)的协议。概括地说,SDN是一种新兴的企业网络方法, 它将控制平面从网络硬件中解耦出来,由控制器软件来管理网络设备的行为。很多人希望SDN能够实现网络硬件供应商之间更高水平的互操作性。在本质上,OpenFlow是一种语言,它允许控制器和设备相互“交谈”。当OpenFlow交换机被放置在网络中时,控制器将配合它

2014-04-16 17:16:59 1168

转载 select poll区别

多路复用的方式是真正实用的服务器程序,非多路复用的网络程序只能作为学习或着陪测的角色。本文说下个人接触过的多路复用函数:select/poll/epoll/port。kqueue的*nix系统没接触过,估计熟悉了上面四种,kqueue也只是需要熟悉一下而已。一、select模型select原型:int select(int n, fd_set *readfds, fd_set *w

2013-09-29 11:20:33 831

转载 LINUX文件系统详解

LINUX文件系统详解 在LINUX系统中有一个重要的概念:一切都是文件。其实这是UNIX哲学的一个体现,而Linux是重写UNIX而来,所以这个概念也就传承了下来。在UNIX系统中,把一切资源都看作是文件,包括硬件设备。UNIX系统把每个硬件都看成是一个文件,通常称为设备文件,这样用户就可以用读写文件的方式实现对硬件的访问。这样带来优势也是显而易见的:l         实现了设备无

2013-09-28 23:41:14 676

原创 Linux 分辨率

1.  查询分辨率参数通过命令cvt可以来做这个事情,比如:我需要添加1920x1080, cvt 1112 1000  ===>> Modeline "1112x1000_60.00"   92.00  1112 1184 1296 1480  1000 1003 1013 1038 -hsync +vsync 2. 在xorg.conf添加分辨率1> 将上述输出的结

2013-08-27 11:40:58 939 1

转载 linux shell if 参数

shell 编程中使用到得if语句内判断参数  –b 当file存在并且是块文件时返回真  -c 当file存在并且是字符文件时返回真  -d 当pathname存在并且是一个目录时返回真  -e 当pathname指定的文件或目录存在时返回真  -f 当file存在并且是正规文件时返回真  -g 当由pathname指定的文件或目录存在并且设置了S

2013-08-16 10:25:49 576

转载 CFI --- Common Flash Interface

1.CFI简介   CFI(Common Flash Interface)的作用是把 NOR Flash 的信息通过统一的方法读出来。   不同公司产的NOR Flash在 erase,program,lock,unlock等操作上有差别,即command set不一样。   本来产品中用这种NOR Flash,后来升级又换了其他牌子的了,command set不一样,就要改代

2013-08-16 00:02:05 2737

转载 NAND FLASH扇区管理及初始化

(1)首先需要了解NAND FLASH的结构。如图:             以镁光MT29F4G08BxB Nand Flash为例,这款Flash(如上图)以4个扇区(sector)组成1个页(page),64个页(page)组成1个块(block),4096个块(block)构成整个Flash存储器;由于每个扇区的容量是512 字节(bytes),整个Flash容量为4224

2013-08-12 16:26:22 878

转载 任务门,调用门,中断门,陷阱门

每个任务有一个任务状态段TSS,用于保存任务的有关信息,在任务内变换特权级和任务切换时,要用到这些信息。为了控制任务内发生特权级变换的转移,为了控制任务切换,一般要通过控制门进行这些转移。本文将介绍任务状态段和控制门。系统段描述符系统段是为了实现存储管理机制所使用的一种特别的段。在80386中,有两种系统段:任务状态段TSS和局部描述符表LDT段。用于描述系统段的描述符称为系统段描

2013-08-09 16:22:10 1043

转载 lowlevel_init.S 分析

在我迷迷糊学看了lowlevel_init.S中的代码之后,有一个感觉就是,要想读懂其中的代码首先得看一下你所用的芯片手册,因为里面有比较详细的存储器控制(MemoryController)描述。我用的是s3c2440手册里写得十分清楚,总共有8个块(Banks)(Bank0~Bank7),每个块对应着不同的控制与地址线,其实这些Bank很大一部分是对应着的控制寄存器的地址,这个要看实际的芯片与板

2013-08-09 10:22:01 913

转载 uboot的lowlevel_init.s解析

uboot版本为201103rc1.看了一下lowlevel_init.s里面的代码,发现最难懂的地方当属这里了:ldr r0, =SMRDATAldr r1, _TEXT_BASEsub r0, r0, r1ldr r1, =BWSCON /* Bus Width Status Controller */add r2, r0, #13*4 

2013-08-09 10:10:46 778

原创 uboot中gd全局变量

在uboot源码中,按照uboot代码流程,进入第二阶段的入口函数,start_armboot, 慕名奇妙的来了一个变量gd, 初始化如下:gd = (gd_t*)(_armboot_start - CFG_MALLOC_LEN - sizeof(gd_t));还是真不好找到这个变量定义的地方,只有认真的阅读代码才知道。以下给出这个变量的定义。DECLARE_GLOBAL_

2013-08-08 16:05:07 5596

转载 __asm__ __volatile__("": : :"memory")

__asm__ __volatile__("": : :"memory");内存屏障(memory barrier) #define set_mb(var, value) do { var = value; mb(); } while (0) #define mb() __asm__ __volatile__ ("" : : : "memory") 1)set_mb(),mb(),

2013-08-08 15:21:59 2955

转载 多寄存器寻址指令ldmia/ldmib和ARM存储器访问指令——多寄存器存取

多寄存器和堆栈寻址的用法:多寄存器寻址:LDMIA,LDMIB,STMIA,STMIB,LDMDA,LDMDB,STMDA,STMDB;堆栈寻址:LDMFA,LDMFD,STMFA,STMFD,LDMEA,LDMED,STMEA,STMED;弄清堆栈寻址的SP的变化:LDMFA,LDMFD,STMFA,STMFD,LDMEA,LDMED,STMEA,STMED;IA: 

2013-08-08 12:07:03 1449 1

转载 mov和ldr/str的区别

ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成,也就是ldr/str指令。比如想把数据从内存中某处读取到寄存器中,只能使用ldr比如:ldr r0, 0x12345678就是把0x12345678这个地址中的值存放到r0中。而mov不能干这个活,mov只能在寄存器之间移动数据,或者把立即数移动到寄存器中,这个和x86这种CISC架构的芯片区别最大的地

2013-08-08 11:48:12 908

转载 makefile 替换规则

对于一个已经定义的变量,可以使用“替换引用”将其值中的后缀字符(串)使用指定的字符(字符串)替换。格式为“$(VAR:A=B)”(或者“${VAR:A=B}”),意思是,替换变量“VAR”中所有“A”字符结尾的字为“B”结尾的字。“结尾”的含义是空格之前(变量值多个字之间使用空格分开)。而对于变量其它部分的“A”字符不进行替换。例如:foo := a.o b.o c.oba

2013-08-07 15:45:55 4892

原创 makefile --- sinclude

include : 如果程序找不到include的文件,make就会停止。-include和sinclude作用一样,就是找不到你所包含的文件时不停止执行,忽略该错误

2013-08-06 17:47:57 4696

转载 linux shell中的管道执行

linux shell中管道发挥的作用是文件描述符重定向,例如 prog1 | prog2 | prog3,管道会将prog1的标准输出重定向为prog2的标准输入,将prog2的标准输出重定向为prog3的标准输入,prog1的标准输入和 prog3的标准输出并没有改变。比如命令"ps -ef | grep -w "nginx""将ps命令的标准输出内容作为grep的输入,两个命令的组合的只输出

2013-08-06 16:58:15 1623

转载 ARM的AREA指令的使用

AREA指令指示汇编程序汇编新的代码节或数据节。节是不可分的已命名独立代码或数据块,它们由链接器处理。有关详细信息,请参阅ELF节和AREA指令。语法    AREA sectionname{,ATtr}{,ATtr}...其中:    sectionname是将要指定的节名。可以为节选择任何名称。但是,以数字开始的名称必须包含在竖杠内,否则会产生一个缺

2013-07-26 11:37:17 2698

转载 windows 开始-运行-命令大全

开始-运行-命令大全 1. gpedit.msc-----组策略 3. Nslookup-------IP地址侦测器 4. explorer-------打开资源管理器 5. logoff---------注销命令 6. tsshutdn-------60秒倒计时关机命令 7. lusrmgr.msc----本机用户和组 8. services.msc--- 9. oobe/msoobe /a--

2013-06-01 11:49:46 549

原创 core dump

什么叫Core Dump ?--------------------------- 当一个进程要异常终止时,可以选择把进程的用户空间内存数据全部保存到磁盘上,文件名通常是core,这叫做Core Dump。进程异常终止通常是因为有Bug,比如非法内存访问导致段错误,事后可以用调试器检查core文件以查清错误原因,这叫做Post-mortemDebug。 一个进程允许产生多大的cor

2013-06-01 11:48:49 740

原创 linux --- 信号 --- 信号的产生

1. 通过终端按键产生信号以SIGINT为例,这个信号的默认动作是终止进程, SIGQUIT的默认处理动作是终止进程并且CoreDump。 详细见:http://blog.sina.com.cn/s/blog_67c294ca01014a4v.html 关于core dump 的说明 2. 调用系统函数向进程发信号#include int main(void)

2013-06-01 11:48:14 891

原创 QML ---- Keyboard Focus in QML --- 键盘交互

当一个键被按或者释放的时候,一个Key事件就被创建并且传递给当前 QML中焦点Item。 1. 按键处理概述当用户按或者释放一个按键的时候,如下将发生:QT 接受到按键动作,并且产生一个按键事件 如果QT 包含有 QDeclarativeView Widget 有焦点, 那么key事件传递给他, 否则例行Key处理继续 如果没有一个Item有active focus, 那么

2013-06-01 11:47:16 5352 1

原创 linux --- 信号 --- 基本概念

场景:用户输入命令,在Shell下启动一个前台进程 用户按下Ctrl+C,这个键盘输入产生一个硬件中断。 如果CPU当前正在执行这个进程的代码,则该进程的用户空间代码暂停执行,CPU从用户态切换到内核态处理硬件中断。 终端驱动程序将Ctrl-C解释成一个SIGINT信号,记在该进程的PCB中(也可以说发送了一个SIGINT信号给该进程)。 当某个时刻要从内核返回到该进程的用户空间代码继续执

2013-06-01 11:46:33 751

原创 Source Insight --- 配置 SVN

SVN Diffoption->Custom Commands添加一个命令名字:SVN Diff  (随便自己写)运行:"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:log /path:%f /notempfile /closeonendTortoiseProc.exe的目录以自己电脑上的为是。

2013-06-01 11:46:06 3861

原创 objdump --- 生成符号表

objdump -t **.a/obj/..  > 1.txt------------------------------------------------将符号表保存在1.txt里面

2013-06-01 11:44:40 3461

转载 linux --- shell --- cut 妙用

1. cut命令用法如下:  (转)cut -b list [-n] [file ...]cut -c list [file ...]cut -f list [-d delim][-s][file ...] l      上面的-b、-c、-f分别表示字节、字符、字段(即byte、character、field);l      list表示-b、-c、-f操

2013-06-01 11:10:25 1882

原创 linux ---- Shell --- test

1. 条件测试: test [命令test 或 [  可以测试一个条件是否成立, 如果测试结果为真, 则该命令的Exit Status 为0, 反之为1.这个和C语言是正好相反的。测试两个数的大小关系:

2013-06-01 11:09:24 754

redis desktop manager windows

redis windows桌面客户端,非常好用。便宜不贵,欢迎下载。

2017-11-15

android 最新 API

本chm API是基于android 网上android API 修改重新编译而成的,网上下载的那个API通常会打不开。通过重新编译,解决了。 本API打开顺利,通畅。

2014-11-17

window 多标签工具

本工具可以让window 的窗口管理器 拥有多标签的功能。

2014-11-17

dfx 高音质软件

很不错的音质软件,可以让用户选择各种不同的音质效果,还可以自行调整。

2014-11-17

ffmepg 最新代码

别人发上来的的要求的资源份抬高了,我穿上来少些哦~~~ 最新的ffmepg源代码。

2009-10-07

mp4 个人解析。。。

按照标准的mp4文件逐个字符的分析,很不错~~。。。。。。。。。。。。。。。。。。

2009-09-28

mp4 format parse

不错的mp4格式文件 ...........

2009-09-28

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

TA关注的人

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