[整理]陈怀临-闲聊Kernel engineer的境界

2012年3月19日 sigma 没有评论 6,691 views

今天,看到@陈怀临的微博谈Kernel engineer的境界,觉得挺不错的,整理在此。

  1. 境界(一):1. 喜欢OS。别的啥也看不上。2. 读kernel代码,每天特来劲。饭桌上特牛逼:-)3. 觉得自己啥也不懂,看了就忘,特沮丧。4. 玩板子,特来劲,饭桌上具牛逼。
  2. 境界(二) 1. 开始谁也看不起,觉得做网络的其实就是大傻。 做Driver的其实就是脑残。 (2)喜欢做芯片的,特别是做CPU的。会开始补充体系结构的知识。 (3)发现bus很重要,但大多数人不懂。(4)慢慢往硬件上靠。
  3. 境界(三)(1)轻微自闭症倾向开始。会在办公室贴时序tu,die图,觉得漂亮。(2)会好奇做编译后端。发现做编译的人其实都不懂编译。(3)发现绝大多数人不会调程序。(4)很奇怪身边的傻子们如何混到工作,而且一个个还不知道自己特傻。(4)很痛苦ing
  4. 境界(四)(1)价值观开始改变,Open Source里的大腕才是心目中的Hero。其他的都看不起。自己的老板,老板的老板基本上都不在眼里 (2)天天琢磨如何在Open Source做贡献,而非在自己的公司做贡献。 (3)上班就是混。自己做的东西公司的人基本上不懂。
  5. 境界(五)1. 狂喜欢写汇编,而且特意从来不加注释。(2)经常看着2,3行知道有错误的priviledge的代码但不知道哪里有错,感叹网络工程师用GDB还不会抓bug,可见智商有多低 (3)最怕的不是crash,而是板子的LED不闪了,系统死了。
  6. 境界(六)1. 当一个晚上去调 5 块板子,每个板子都是不同的CPU的时候,离崩溃已经不远。2. 世界上最难的不是调厂商开发板子+自己的kernel;也不是自己的烂板子+linux;而是自己的烂板子+自己写的烂kernel。没有技术底线就与一个女人没有道德底线一样,不是可怕;而是噩梦。
  7. 境界(七) 1. Kernel工程师在某一天突然会害怕。对不确定性(undeterministic)的无法控制(板子不稳定,dram不稳定,kernel不问题) 2. 会开始往上做,看stack。发现网络的精华:代码就是一堆callback指针;实质就是几个Queue。才突然了解为什么大傻都能做网络工程师。
  8. 境界(八)1.会发现网络最难的不是转发,而是控制。2. 会特别羡慕能把网络设备config的特溜的Testing工程师。Kernel工程师通常喜欢手快和对设备熟悉的,不喜欢大傻。 3. 总是试图建立一个完整的网络Picture,但感觉不好,很喜欢去数据中心看看。

上面八条境界分别来自八条微博,原链接:

http://weibo.com/1645518723/yanDemGGg
http://weibo.com/1645518723/yarEe4eXS
http://weibo.com/1645518723/yawvk5SQ0
http://weibo.com/1645518723/yazpjjCEc
http://weibo.com/1645518723/yaBjJoUsf
http://weibo.com/1645518723/yaBLKk3iK
http://weibo.com/1645518723/yaFfC2WeB
http://weibo.com/1645518723/yaFkpBJSH

分类: 贝壳 标签: ,

Ubuntu下消除耳机电流声的方法

2012年3月16日 sigma 没有评论 65,320 views

不知什么时候开始,我在ubuntu下用耳机听歌,经常听到电流声,很郁闷,上网搜了并亲自尝试了下,发现下面的方法有效:

1.中端输入sudo alsamixer回车-输入密码后进入alsa高级控制面板
2.按F5,显示所有音轨,左右键移动音轨,上下键调节音量,把每个出现红色的音量条调节到绿色.
3.这个实时生效的,关闭窗口,再听听有没有杂音?

来源:http://forum.ubuntu.org.cn/viewtopic.php?f=74&t=154080&start=0

分类: 沙子 标签: ,

启用FTS编译sqlite并用update更新列值

2012年3月16日 sigma 没有评论 5,054 views

今天,折腾sqlite,需要update一个数据库,发现可以用下面的命令:

UPDATE <table> SET  <col=new_val> WHERE <oth_col=val>

但是,在ubuntu里面用apt-get安装sqlite后,直接执行上面的语句,会报“no such module:FTS3”,因为默认sqlite编译是没有启用FTS3的。因此,需要自己下源码编译,手动编译是加入以下编译选项:

-DSQLITE_ENABLE_FTS3
-DSQLITE_ENABLE_FTS3_PARENTHESIS

用autoconf版本的话,在configure时,加入:

CPPFLAGS= "-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS "/configure <options>

上面两种方法的目的都是一样的,就是在编译时定义SQLITE_ENABLE_FTS3 和SQLITE_ENABLE_FTS3_PARENTHESIS宏。

参考资料:http://www.sqlite.org/fts3.html

分类: 沙子 标签: ,

Matlab手动制定坐标值

2012年3月1日 sigma 没有评论 3,536 views

有时候,我们的数据坐标既不是等距坐标,也不是对数坐标,而是随意的数据,这时,可以用set gca等命令指定xticklabel。如:

plot(0:7,0:7,'--rs')
set(gca,'XLim',[0 7])
set(gca,'XTick',[0:1:7])
set(gca,'XTickLabel',['0';' ';'3';' ';'2';' ';'3';'5'])

做出的图如下: 阅读全文…

分类: 贝壳 标签: , ,

ls只列出目录

2012年2月29日 sigma 没有评论 4,356 views

ls只列出目录方法:

ls -d */

 

分类: 沙子 标签: , ,

Screen中止某个会话(session)

2012年2月24日 sigma 没有评论 9,254 views

在linux服务器上跑东西,为了防止出现网络中断或者本地终端死机导致服务器程序中断,一般可以用screen跑,具体使用可以screen –help。但是,有时远程的进程没有响应,用screen -r过去也不能杀掉,这是想吧会话中止,方法如下:

screen -S some_name -X quit

 

分类: 沙子 标签: , ,

一个关于24点游戏研究的网站

2012年2月21日 sigma 没有评论 4,810 views

一个邮件列表里看到的,发现挺有意思的:

http://www.24theory.com/

分类: 贝壳 标签: ,

无觅相关文章插件,快速提升流量