全部博文(685)
发布时间:2014-09-05 10:43:33
原文地址:http://blog.chinaunix.net/uid-26517122-id-4263289.html内核有spinlock的调试选项,在spinlock被获取时会记录它的owner。owner是一个struct task_struct指针,在owner里有pid字段,通过pid就能确认是哪个进程持有锁。自己做了个实验,在同一个函数里两次调用spin_lock,直接锁死,然后用kdb结合gdb来找锁.........【阅读全文】
发布时间:2014-09-05 10:42:38
原文地址:http://blog.chinaunix.net/uid-26517122-id-4263265.html本文介绍一些平时查找内核报栈时用的到的小技巧1、 使用gdb 取得结构体中某一字段的偏移量命令: p ((struct xxx *)0)->xxx例:>> gdb vmlinux(gdb) p ((struct sk_buff*)0)->dataCannot acce.........【阅读全文】
发布时间:2014-09-05 10:40:29
原文地址:http://blog.chinaunix.net/uid-26517122-id-4418083.html openwrt是通过一系列shell脚本进行启动流程的组织,下面是启动流程的提纲。如果想详细了解启动的过程,则需要仔细走读脚本文件。1、在make menuconfig 选择target平台“ShenZhou Loongson”,在Subtarget选择“GSC3280 Develop Board”平台。&n.........【阅读全文】
发布时间:2014-09-05 10:35:14
原文地址:http://blog.chinaunix.net/uid-26517122-id-4418110.htmlOpenWrt是一个典型的嵌入式Linux工程,了解OpenWrt的Makefile工作过程对提高嵌入式Linux工程的开发能力有极其重要意义。 OpenWrt的主Makefile文件只有100行,可以简单分为三部分,1~17行为前导部分,1.........【阅读全文】
发布时间:2014-09-05 10:33:19
原文地址:http://blog.chinaunix.net/uid-24631445-id-3428100.html1:device_driver结构体struct device_driver { const char *name; struct bus_type &.........【阅读全文】