摘要:最近被内核时钟精度弄的很是郁闷。具体情况如下:扫盲:1秒=1000毫秒=1000000微妙=1000000000纳秒首先:linux有一个很重要的概念——节拍,它的单位是(次/秒)。2.6内核这个值是1000,系统中用一个HZ的宏表征这个值。同时有全局的jiffies变量,表征从开机以来经过的节拍次数(这里面还有故事,后面说,先记住这个)。当然还有wall_jiffies的墙上jiffies来表示...
阅读全文
摘要:English Version:http://www.kegel.com/c10k.html#topChinese Version:http://blog.csdn.net/goldou/article/details/2579781“关注C10K问题”中文翻译The C10K problem By golodu 2008年6月23日原文:http://www.kegel.com/c10k.html翻译前言:本来翻译学术论文应该本着严谨、准确的态度,否则还不如不去翻译。可是翻译这篇文章挺不容易。以我的时间和精力目前只能翻译到这种程度。以后可能会随原文进行同步更新。一些地方还需要进行推敲。译文部
阅读全文
摘要:1. 默认设置下,在调试多进程程序时GDB只会调试主进程。但是GDB(>V7.0)支持多进程的分别以及同时调试,换句话说,GDB可以同时调试多个程序。只需要设置follow-fork-mode(默认值:parent)和detach-on-fork(默认值:on)即可。follow-fork-modedetach-on-fork 说明parenton只调试主进程(GDB默认)child on只调试子进程parent off同时调试两个进程,gdb跟主进程,子进程block在fork位置child off同时调试两个进程,gdb跟子进程,主进程block在fork位置设置方法:set fol
阅读全文
摘要:加个快捷键以及简单function到.vimrc中,如下:用法:按Alt+/注释一行,再按一次解除注释。 1 " Comment a line hotkey 2 map <A-/> :call CommentLine()<CR> 3 4 """""""""""""""""""""""""""&q
阅读全文
摘要:强大的宏不需解释,后半部分更精彩。另附:不用循环打印1——10001 #include2 #define A(x) x;x;x;x;x;x;x;x;x;x;3 int main (void)4 {5 int n = 1;6 7 A(A(A(printf ("%d", n++))));8 return 0;9 }FROM:http://www.yqshare.com/use-in-the-c.html//读研这两年,平时项目都在用C语言在Linux下做,两年下来,也写了不少的代码,再加上我平时的不懈努力,多看书,也算是C语言的基础知识比较扎实了,因此在自己的简历上,就写上了“
阅读全文
摘要:C语言提供了一种可以直接定义和访问一个字中某个位字段的方法,而不需要通过按位逻辑运算符,这就是位域或者位字段(bit-field)。它通过结构体实现,只要在普通成员后面加上一个冒号以及宽度(二进制)即可,所以位字段可以看做是结构体的一个特殊成员。例如:1 struct {2 int data;3 unsigned bit1:1;4 unsigned bit2:2;5 }struct-with-bit-field;结构体struct-with-bit-field中含有一个正常字段和两个位字段。bit1的宽度为1,占一位。bit2的宽度为2,占两位。位域的几乎所有属性都同具...
阅读全文