- 博客(17)
- 收藏
- 关注

原创 使用netconsole发送linux驱动程序调试信息和kernel panic消息
1、首先在以太网驱动中实现net_device结构中的poll_controller接口,否则提示: eth0s network driver does not implement netlogging yet, aborting.2、给以太网接口配置一个IP地址,否则会有如下错误提示信息: no IP address for eth0, aborting3、
2011-06-28 14:04:00
1222
转载 多线程使用不可重入函数localtime要互斥
这个问题是在付出了惨重的代价之后才发现的,多线程使用不可重入函数相当于共享一块内存,必须使用同步手段来使用,加锁互斥或者使用可重入版本的函数。比如localtime,将一个time_t类型的时间转成tm结构体,就是一个不可重入函数,例如有以下两个线程: thread1: 1.tm1 = localtime(&time1);2.tm1->tm_second -= 10;/
2012-01-21 13:38:41
854
3
转载 快速放松的11种简单方法
在现实生活中,来自工作或是家庭的压力,总会人感到焦虑烦躁,对于如何放松身心,解决生活压力必须有实际的方法,以下提供数种实际可行的压力消除法: 1、吹气: 深呼吸可以缓和即将爆发出来的情绪反应,你只要从鼻子吸气,慢慢的流经你的腹部,然后到你的肋骨,再慢慢地从鼻子呼出这些气,而且轻轻地说声放松,只要几秒钟的动作就可以你就可以焕然一新。 2、放松肌肉: 在三
2012-01-21 13:33:26
741
转载 STRNCPY的使用方法及与STRCPY的区别
http://www.51testing.com/?uid-71943-action-viewspace-itemid-66887strcpy ,strncpy ,strlcpy好多人已经知道利用strncpy替代strcpy来防止缓冲区越界。但是如果还要考虑运行效率的话,也许strlcpy是一个更好的方式。1. strcpy我们知道,strcpy 是依据 \0 作为结
2012-01-21 13:30:59
531
转载 程序减肥三步走
http://blog.youkuaiyun.com/aaronychen/archive/2008/03/18/2193696.aspx对于设计嵌入式Linux系统的研发人员来说,有一个问题是必须要考虑到的,那就是存储器的空间。 我们知道嵌入式Linux系统所用的存储器不是软磁盘、硬盘、ZIP盘、CD-ROM、DVD这些众所周知的大容量常规存储器,它使用的是例如Rom, CompactFlash,M
2012-01-21 13:29:05
376
转载 secureCRT使用技巧
http://www.gtdlife.de/securecrt%E4%BD%BF%E7%94%A8%E6%8A%80%E5%B7%A7.html 说明:如果您在阅读中产生疑问,请与文档维护人联系。如果您发现有更好的新的功能,请直接在修订上增加,并把修订后的文档发给我一份。本文档适用对象为需要使用secureCRT做网络调试的工程师,其必须有用过该款软件,基础功能会使用。对于那些需要修改
2012-01-21 13:27:07
934
转载 grep的使用详解
GREP 是 Global Regular Expression Print 的缩写 对于标准输入的每一行,grep执行以下的操作: (1) 把下一输入行复制到模式空间中. 模式空间是只可保存一个文本行的缓冲区. (2) 对模式空间应用正则表达式. (3) 如果有匹配存在,该行从模式空间中被复制到标准输出. 注意grep处理下列情况的方式: 1.gr
2012-01-21 13:23:29
659
转载 缓冲区的非法操作
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。 msn: yfydz_no1@hotmail.com 来源:http://yfydz.cublog.cn1. 前言 本文所描述的缓冲区可以是静态的,如通过数组方式定义;也可以是动态的,如通过malloc等函数分配的。 2. 非法操作 对
2012-01-21 13:20:56
629
转载 如何调试core文件
调试一个core按照如下的步骤执行: 一.gdb 程序名 core名前提是应用程序编译时要加-g选项,这样看到的core信息比较多。 二.info thread 如果是多线程程序,这样可以看到每个线程的信息。但是至于程序挂在哪个线程里了要用肉眼去分辨,这个应该不难。 三.thread 1 进入第一个线程 四.bt 查看退出时的堆栈信息。 五.dire
2012-01-21 13:17:55
510
转载 使用snprintf函数时的两点注意事项
使用snprintf函数时要注意两点,这是我看过无数使用这个函数的程序员绝大部分都存在的两点隐患: 比如: char buf[LEN]; int n = snprintf(buf, LEN, "%s%d%s", str1, int2, str3);1.snprintf会自动在格式化后的字符串尾添加\0, 所有格式化长度,也就是第二个参数没有必要用LEN-1
2012-01-21 12:58:24
846
转载 僵尸进程(zombie)以及避免方法
僵尸进程在多进程环境下,父进程要长时间运行 ,期间可能创建子进程,然后子进程有退出时,但是父进程还在运行,这时就产生了zombie进程。 子进程退出后,在进程表中还要占一项,并且子进程的一些资源等待父进程回收。如果父进程没有显示地调用wait来为子进程回收资源的话,在父进程退出之前子进程就变成了僵尸进程。如果父进程退出了,僵尸子进程也消失了。 还有一
2012-01-21 12:55:05
1096
原创 gratuitous ARP(免费Arp)
当主机启动的时候,将发送一个免费的arp请求,即请求自己的ip地址的mac地址。此免费arp请求有两个作用:1、通告整个lan说ip地址XXX是我的,对应的mac是XXX,他没有期望有人会应答这个请求2、另外一个目的就是检测ip地址冲突,如果有主机的ip和我的相同,他
2011-08-18 18:23:52
2265
原创 DHCP Transaction ID生成和使用方法
今天领导问了一下DHCP事务ID的问题。仔细研究了一下。 下面三段摘录于rfc1541,大致解释了xid的生成和使用方法。 The client generates and records a random transaction identifier a
2011-08-18 18:07:40
11390
转载 DHCP之简要分析(包括C语言实现过程,IP冲突的检测与解决办法)
原文出处:http://blog.youkuaiyun.com/Niosm/article/details/5160403DHCP 主要有四个过程: discover、offer、request、ack。step 1:客户端(PC机或移动终端)以广播包的形式,找寻可以提供分配ip
2011-08-18 18:01:04
1976
转载 Linux与BSD之间的10个不同之处
也许你经常会听到人们把Linux 及BSD 系统混为一谈,甚至于媒体都这么说。当然,事实上这两者确实有很多相似之处,比如它们都是基于Unix 演变而来,而且基本上这两类系统都是由非盈利组织及团队开发,另外,这两个系统都有一个共同的目标——那就是创建最有用、最可靠的操作系统。那么这
2011-07-24 19:35:17
445
原创 oops(swapper)搞定了
操作系统:嵌入式linux 2.4.31(snapgear)CPU :intel IXP425问题模块:madwifi无线驱动现象:当用户从AP去关联时,串口打印如下信息后,重新启动。 Unable to handle kernel paging request at virtual address 203c6469pgd = c0004000[203c6469]
2009-09-19 12:24:00
1262
原创 讨人喜欢的26个原则,让你的人际关系更上一层楼!
讨人喜欢的26个原则,让你的人际关系更上一层楼! 1.长相不令人讨厌,如果长得不好,就让自己有才气;如果才气也没有,那就总是微笑。 2.气质是关键。如果时尚学不好,宁愿纯朴。 3.与人握手时,可多握一会儿。真诚是宝。 4.不必什么都用“我”做主语。 5.不要向朋友借钱。 6.不要“逼”客人看你的家庭相册。 7.与人打
2007-04-22 20:22:00
753
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人