删除emacs的CVS backup file
被emacs的CVS backup file困扰了很久了,一直没有找到合适的解决办法,怎么都去不掉。今天在google group上看到了一个类似问题的回答,试了一下,竟然OK了,真是高兴。
原来一直以为是设置
其实应该是
ASCII画图工具
今天找资料的时候无意间发现一个ascii的画图工具javE,试用了一下感觉很不错。以前都是用emacs的artist-mode画图,现在又多了一个选择了。 :)
下载的地址如下:
顺便说一下,是java的,必须安装了java支持库才行。
IGMP proxy开发笔记
这两天被igmp proxy搞的焦头烂额,有时候工作,有时候又不工作。最后下了狠心,把代码翻出来啃了一遍,总算是找到了问题,简单的总结一下。
igmp proxy的原理其实就是通过在downstream的interface上接收igmp report,然后再从upstream的interface上广播出去;同时在router上添加对应的virtual interface(VIF)的路由信息(MFC)。最后,使得从upstream的interface收到的multicast包,能发送到downstream的interface对应的网络中去。
library陷阱
今天在做一个embedded system的测试的时候发现一个奇怪的问题。新做的fs, 启动后一切正常。ping外部ip也可以正常工作,但是添加/etc/resolv.conf后,始终无法解析dns。
skype修改字体
装了linux下的skype 2.0,发现中文字体比较难看。查了下,原来skype是基于qt4开发的,只要配置下qt的字体就好了。
$ qtconfig-qt4
配置自己喜欢的字体,然后就OK了。
关于sync
今天同事遇到一个问题,就是用open打开了一个mtdblock,然后在写完后close了,接着就重新启动设备,最后却发现没有写进去。追了很久,最后发现是没有做sync的原因。
理解fork
今天因为给mini_httpd添加一个功能,用mmap给父子进程创建共享空间,又顺便复习了下fork。
fork的关键在于调用一次,返回两次。这里说的返回两次从字面上讲可能比较难于理解,但如果知道了fork在内核里的实现机制就很容易搞懂了。
qemu-router 之环境设计
最近想用qemu在linux下 build 一个环境,来模拟开发路由器。好处有很多,比如便于调试kernel阿,乱搞不会破坏系统阿之类的。
于是写了两个script,一个负责模拟router端,一个负责模拟客户机。整个环境配置如图:
| |
| Host PC |
+--------------------+
| tap0 | tap1 | |
+--+------+----------+
| |
| |
+--+------+---+------+
wan | eth0 | eth1 | |
+-------------+------+
+-------------+ | Qemu emulate router
lan | eth2 | eth3 | |
+---+------+--+------+
| |
| |
+-----------+ | +--+---------+
| client 1 |--+ | client 2 | Qemu emulate PCs
| | | |
+-----------+ +------------+
snprintf的困惑
这两天在整理c语言基本函数的一些注意点和用法,整理到snprintf的时候却犯了难,到底应该怎么用?
按理说,要正确使用很简单,至少有两种写法: