自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 收藏
  • 关注

原创 奇怪的linker问题

下面这个linker的问题找了3个小时:gcc -o example example.o -Wl -L/home/kensey/cdev/lib -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -L/usr/lib/x86_64-linux-gnu -lm -lrt -ldl -lcdev -L/home/kensey/w...

2014-09-23 14:56:32 648

原创 write error: Bad file descriptor

int pip[2];pipe(pip);fork();/* parent process *//* Close Read end of the pipe */ close(pip[0]); /* child process *//* Close Write end of the pipe */ close(pip[1]); stra...

2014-05-12 17:13:23 6886

原创 coredump with calloc()

Program terminated with signal 11, Segmentation fault.#0 0x0e0ec2e8 in malloc_consolidate () from /lib/libc.so.6#1 0x0e0ef21c in _int_malloc () from /lib/libc.so.6#2 0x0e0f078c in calloc () f...

2014-04-29 14:23:10 528

原创 pthread_create: Resource temporarily unavailable (errno = 11)

原来是pthread_create后没有调pthread_join或者pthread_detach, 导致memory leak.A thread may either be joinable or detached. If a thread is joinable, then another thread can call pthread_join(3) to wai...

2014-04-29 14:21:05 1163

原创 agentx协议格式

agentx协议格式: AgentX PDU Header +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | h.version | h.type | h.flags | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+...

2014-04-22 22:23:54 391

原创 GCC __attribute__((mode(XX))

用gcc -E可以得到下面的预编译结果:typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));typedef unsigned int u_int32_t __attribut...

2014-03-21 10:34:29 622

原创 读锁和写锁的区别

共享锁(S锁)又称读锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S 锁。这保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。排他锁(X锁)又称写锁。若事务T对数据对象A加上X锁,事务T可以读A也可以修改A,其他事务不能再对A加任何锁,直到T释放A上的锁。这保证了其他事务在T释放A上的锁之前不能再读...

2014-03-03 10:20:06 5271 1

原创 nux下共享库(SO)有关的几个环境变量 zz

Linux支持共享库已经有悠久的历史了,不再是什么新概念了。大家都知道如何编译、连接以及动态加载(dlopen/dlsym/dlclose) 共享库。但是,可能很多人,甚至包括一些高手,对共享库相关的一些环境变量认识模糊。当然,不知道这些环境变量,也可以用共享库,但是,若知道它们,可能就会用得更好。下面介绍一些常用的环境变量,希望对家有所帮助: LD_LIBRARY_PATH 这个环境变量...

2014-01-06 10:32:05 190

NSS环境下getpwnam_r总是返回NULL的问题(busybox的login.c)

用了6个小时解决这个问题.下面是busybox的login.c的code:pw = NULL;getpwnam_r(username, &pwdstruct, pwdbuf, sizeof(pwdbuf), &pw);if (!pw)goto auth_failed;getpwnam_r()总是返回NULL, 换成getpwnam()也是一样的。但是自己类似busy...

2014-01-04 17:52:19 1018 1

原创 c语言数组排序小结(转载)

c语言数组排序小结(for beginner)  很多朋友是以谭浩强老师编的《c语言教程》作为学习c语言的入门教程的。书中涉及排序问题一般都以“冒泡法”和“选择法”实现。为了扩大视野,增加学习编程的兴趣,我参阅了有关书籍,整理了几种排序法,写出来同大家共勉。(高手们不要笑,这篇文章是写给出学者的,而且我自己也是只菜鸟,虽然内容陈旧,但值得初学者一看)。  让我们先定义一个整型数组a...

2013-12-30 20:59:08 180

原创 syslog协议介绍

1、介绍 在Unix类操作系统上,syslog广泛应用于系统日志。syslog日志消息既可以记录在本地文件中,也可以通过网络发送到接收syslog的服务器。接收syslog的服务器可以对多个设备的syslog消息进行统一的存储,或者解析其中的内容做相应的处理。常见的应用场景是网络管理工具、安全管理系统、日志审计系统。 完整的syslog日志中包含产生日志的程序模块(...

2013-12-20 11:01:46 144

原创 The TACACS+ Protocol

IETF protocol: http://tools.ietf.org/html/draft-grant-tacacs-02A free tacacs+ server: http://tacacs.net/The TACACS+ Protocol Version 1.78Status of This Memo...

2013-12-08 10:20:25 644

原创 radius协议(转载)

转自: http://blog.csdn.net/zhaori/article/details/5540041、 RADIUS协议的包格式RADIUS数据包是被封装在UDP的数据域中的。RADIUS的包数据格式如下所示,各域(Fields)的先后次序是从左到右。 0 1 2 ...

2013-12-08 10:08:46 336

原创 gprof(转载)

CPU profiling tool: O'profile, kernel shark, trace-cmd, gprof, perf.Memory tool: mpatrol: mem leak detection glibc-util:gprof 1.1 简介 gprof实际上只是一个用于读取profile结果文件的工具。gprof...

2013-10-23 11:07:41 120

原创 转载: PAM验证

转载一.PAM简介 Linux-PAM(linux可插入认证模块)是一套共享库,使本地系统管理员可以随意选择程序的认证方式. 换句话说,不用(重新编写和)重新编译一个包含PAM功能的应用程序,就可以改变它使用的认证机制. 这种方式下,就算升级本地认证机制,也不用修改程序. PAM使用配置文件/etc/pam.conf(或/etc/pam.d/下的文件),来管理对程序...

2013-10-10 14:49:13 228

scp的prompt为啥隐藏不掉

把scp的标准输出和标准错误都重定向到一个文件,为什么shell界面还能打出"Enter windows password:"的字符串呢?scp fromfilename username@x.x.x.x:/topath/tofilename 2>&1 > /tmp/tmp.txtEnter windows password:查了openssh的代码,答案很明显了。char *...

2013-08-07 15:25:51 139

原创 java socket example

ObjectServer.java[code="java"]import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.net.ServerSocket;import java.net.Socket;public class ObjectServer { publi...

2013-07-17 17:08:48 103

原创 Linux 之 shell 比较运算符 (转载)

转自:http://blog.csdn.net/sunboy_2050/article/details/6836382运算符 描述 示例 文件比较运算符 -e filename 如果 filename 存在,则为真 [ -e /var/log/syslog ] -d filename 如果 filename 为目录,则为真 [ -d /tmp/mydir ] -f file...

2013-07-09 11:13:05 97

原创 strtok 与 strsep 函数说明 (zz)

From:http://www.cnblogs.com/longzhao1234/archive/2012/05/31/2528317.html这几天处理字符串,突然遇到字符串分割问题,上网查了一些资料后,找到这两个函数,strtok与strsep函数。网上举的例子千篇一律,下面我根据函数的实现源码,记录一下使用说明,供大家讨论,欢迎大牛拍砖!PS:找个库函数源码的在线查询网站真不容易,先...

2013-07-02 09:29:41 133

原创 【转载】跨平台时基于数据结构的网络通信

转载自:http://bbs.kylin-linux.com/htm_data/10/1005/339.html网络通信通常分为基于数据结构的和基于流的。HTTP协议就是后者的一个例子。 有时为了提高程序的处理速度和数据处理的方便,会使用基于数据结构的通信(不需要对流进行解析)。但是,当需要在多平台间进行通信时,基于数据结构的通信,往往要十分注意以下几个方面:[1] 字节...

2013-06-09 10:08:21 147

原创 net-snmp命令简介

1) snmpget.exe——snmpget [OPTIONS] AGENT OID[OID]...用来查询叶子节点实例:snmpget –v2c –c public localhost .1.3.6.1.2.1.1.5.0-v2c: 使用的是2c的snmp版本,可选1|2c|3 -c public:community 名为public localhost: 代...

2013-04-19 17:33:43 420

原创 linux内核版本为何有时会自动添加“+”号

转载自:http://blog.csdn.net/adaptiver/article/details/72259801. 引子编译2.6.35.7 kernel版本的时候发现,“2.6.35.7“的内核版本编译成功后生成的版本号变成了“2.6.35.7+”,为什么后面会多一个加号呢?问题出现在linux的版本控制这一块:打开Makefile我们可以在文件的最上面可以发现VE...

2013-04-16 16:16:32 229

原创 LD_PRELOAD导致的问题

今天费了3个小时发现一个LD_PRELOAD导致的问题,转载一篇相关的文章,以做纪念。转自:http://blog.csdn.net/haoel/article/details/1602108LD_PRELOAD简介 在UNIX的动态链接库的世界中,LD_PRELOAD就是这样一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定...

2013-04-11 16:49:28 1778

原创 利用mkfs.ubifs和ubinize两个工具制作UBI镜像——转载

有了mkfs.ubifs和ubinize两个工具后,就可以制作UBIFS镜像了,具体步骤如下:1. 使用mkfs.ubifs命令将某个文件夹制作为UBIFS镜像,具体命令为:mkfs.ubifs -r /tmp/rootfs-m 2048 -e 126976 -c 1500 -o ubifs.img 以上命令的含义为将/tmp/rootfs文件夹制作为UBIFS文件系统镜像...

2013-04-10 11:17:00 201

原创 dup和dup2

名称:: dup/dup2 目标: 复制一个现存的文件描述符. 头文件: #include 函数原形: int dup(int oldfd)int dup2(int oldfd,int newfd) 参数: oldfd 原有文件描述符 newfd 新的文件描述符 返回值: -1 遇到错误...

2013-04-03 17:21:04 94

原创 UBI FAQ and HOWTO

from: http://www.linux-mtd.infradead.org/faq/ubi.htmlUBI FAQ and HOWTOTable of contentsHow do I enable UBI? How do I attach an MTD device? How do I create/delete UBI volumes? How do ...

2013-03-27 11:54:29 272

原创 U-BOOT env 太长如何设置

分成两部分设置:setenv bootargs 'xxxxxx'setenv bootargs $bootargs yyyyyyyy

2013-02-27 14:41:00 434

原创 git branch(zz)

git中branch有三种类型:1.local branch 本地分支,就是我们平常操作的分支,git中默认是master分支 可以通过 git branch b1 来建立本地分支,通过 git checkout b1 来切换分支2.tracking branch 引用A 'tracking branch' in Git is a local bra...

2012-12-26 16:04:21 99

原创 在linux pc上挂载jffs2文件系统(zz)

http://www.sourceware.org/jffs2/zz from: http://blog.sina.com.cn/s/blog_4a4163880100cozw.html因为jffs2是构建于MTD设备上的文件系统,所以无法通过loop设备来挂载,但是可以通过mtdram设备来挂载。mtdram是在用RAM实现的MTD设备,可以通过mtdblock设备来访问。使用m...

2012-12-24 17:54:53 232

原创 loop设备

loop 设备介绍在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备。它能使我们像块设备一样访问一个文件。在使用之前,一个 loop 设备必须要和一个文件进行连接。这种结合方式给用户提供了一个替代块特殊文件的接口。因此,如果这个文件包含有一个完整的文件系统,那么这个文件就可以像一个磁盘设备一样被 mount 起来。上面说的文...

2012-12-24 17:39:20 119

原创 网络相关驱动点滴

1. proto_register: rc = proto_register(&proto, 1);把proto加到一个prot_list中,proto_list是一个全局的静态链表,inet域支持的所有协议全部在这个链表中,但这个链表在协议栈中并没有太大用途,它只是用于在/proc/net/protocols文件中输出当前系统所支持的所有协议。这个函数是在 linux/net/cor...

2012-12-20 18:26:58 170

原创 全面解析PowerPC架构下的扁平设备树FDT(ZT)

Sailor_forever sailing_9806#163.com(本原创文章发表于Sailor_forever 的个人blog,未经本人许可,不得用于商业用途。任何个人、媒体、其他网站不得私自抄袭;网络媒体转载请注明出处,增加原文链接,否则属于侵权行为。如有任何问题,请留言或者发邮件给sailing_9806@163.com)http://blog.csdn.net/sailo...

2012-12-19 14:58:03 452

原创 linux内核启动过程学习总结 (转载)

转载自:http://blog.chinaunix.net/uid-27052262-id-3404074.html下面是学习linux内核启动过程的记录平台是:powerpc mpc8548 + linux2.6.23 内核 通用寄存器的作用r0 :在函数开始时使用r1 :存放堆栈指针,相当于ia32架构中的esp寄存器r2 :存放当前...

2012-12-18 17:01:54 180

原创 platform device <==> platform driver

platform_driver_register(struct platform_driver *drv)注册后如何找到驱动匹配的设备:do_basic_setup()->driver_init()->platform_bus_init()->...初始化platform bus(虚拟总线)设备向内核注册的时候platform_device_register()->platform_d...

2012-12-14 15:21:25 84

原创 install kernel module failed issue

运行"insmod abc.ko"报错如下:abc: version magic '3.0.43 preempt mod_unload ' should be '3.0.43-913-ga691c40-dirty preempt mod_unload 'insmod: cannot insert abc.ko': invalid module format别人编的正常的module...

2012-12-12 14:30:39 373

原创 ldconfig的作用

转载:ldconfig是一个动态链接库管理命令为了让动态链接库为系统所共享,还需运行动态链接库的管理命令--ldconfigldconfig 命令的用途,主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文...

2012-11-15 18:17:20 398

原创 ln创建整个目录下所有文件的link file

源目录下三个文件:ubuntu@ubuntu-VirtualBox:~$ ls -lrt lnsrctotal 0-rw-r--r-- 1 ubuntu ubuntu 0 2012-11-02 17:50 ok1.txt-rw-r--r-- 1 ubuntu ubuntu 0 2012-11-02 17:50 ok2.txt-rw-r--r-- 1 ubuntu ubuntu ...

2012-11-02 17:55:19 1037

原创 用gdb获得寄存器的值

[code="C"]//gdb_debug.c#include f1(){ register int i = 12345; printf("%d\n", i); double x = -5.5625; printf("%d\n",x);}main(){ f1();}[/code]gcc -g -o gdb_debug gdb_debug.c...

2012-11-02 15:21:38 1988

原创 POSIX线程私有数据

在JAVA中是使用ThreadLocal来实现线程特定数据。POSIX中操作线程私有数据的主要通过以下4个函数来实现:pthread_key_create(创建一个键),pthread_setspecific(为一个键设置线程私有数据),pthread_getspecific(从一个键读取线程私有数据),pthread_key_delete(删除一个键)。这几个函数的声明如下:#inclu...

2012-10-31 17:53:10 89

原创 #, ##

#和##都是作用于其后面的宏参数。1. #符号是一个预处理运算符,它可以把语言符号转化成字符串。例如,如果x是一个宏参量,那么#x可以把参数名转化成相应的字符串。该过程称为[b]字符串化[/b](stringizing)。2. ##符号把两个语言符号组合成单个语言符号。(变量化?)例如:#define XNAME(n) x##n这样宏调用:XNAME(4)展开后:...

2012-10-31 11:49:14 279

空空如也

空空如也

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

TA关注的人

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