2008年10月28日星期二

听到要搬到中关村去,很不开心

今天晚上听到要搬到中关村去,很不开心。那个地方离家是在是太远了。
但是现在最后搬回到知春路上,所以虽然不是那么方便,但是还可以忍受。

2008年10月22日星期三

海信出差的第三天

10月20日晚上6点多,来到青岛海信。
10月21日,在海信一天多,工作到晚上11点多。终于北京的同事搞定了大部分问题。现在剩下
的问题已经不多了,海信的人也比较现实,关注稳定性的问题,没有提更多的其他问题了。
昨天晚上青岛在下雨,还下的挺大的。

2008年10月20日星期一

出差统计

算一下我出差的次数,非常少。
1.在联想软件设计中心,去上海,为拯救者做公安部的安全论证,这是一个人去的,交通工具:飞机
2.在设计中心,去深圳,调试语音modem,接收短信,和陈长征,交通工具:飞机

3.在亿品,去武汉,在火车上调试设备,多人。交通工具:火车

4.在闪联 去深圳 解决DMA和创维板联调 交通工具:飞机
5.在闪联 去青岛 演示pandora1 和辉洲等三人 交通工具:飞机
6.在闪联 去青岛 和海信DQE部门交流 交通工具:飞机

2008年10月19日星期日

为海信准备的产品

今天是10月19日,星期天,昨天周六,把为海信准备的产品给海信的DQE部门测试,他们昨天测试了2个小时,发现一些问题后,就没有继续测试下去了。项目经理着急召集大家来加班,下午差不多都到齐了。
下午和海信确定问题详细情况后,和大家一起讨论问题,确定下面的推进方法。差不多折腾到晚上10点多,有同事着急回家,要再晚点就赶不上地铁了,所以我们就走了几个人,剩下几个人还在忙碌着。
这是上市前最后的一段时间了,熬过去应该就好了。按照我们老板的话,99拜就过去了,就差这一拜了。

2008年10月16日星期四

在uclinux平台上的经验教训

在uclinux上,如果来回启动应用程序,容易出现系统内存不足的问题。
在我们现在做的一个产品上,就经常出现这样的问题,特别是在几个程序同时运行的时候。
我们还发现在系统刚刚启动的时候,载入一个大程序容易出错。经过仔细分析,发现在启动
的时候,系统内存区域中已经有很多slab,而有这些后,会容易导致出现载入内存出错的情况。
经过仔细排查,发现系统启动的时候,做了一次列出目录的操作,这个操作会让操作系统使用
很多内存在做缓冲。由于目前我们没有找到方法处理这个问题,所以把启动的时候列出
目录的功能关闭了,这样就一切正常。

2008年10月14日星期二

关于下载多文件的时候考虑

现在在项目中需要下载opml和rss协议的节目单,这两种文件都是xml格式的,在其中有个DateModified标签,表明文件的修改时间,现在是判断如果本地文件的该标签的值比服务器上的早,那么需要更新,否则不更新。

现在出现一种情况,经常是opml文件更新了,但是下面的rss文件没有更新,以前没有考虑到这种情况。现在考虑的解决方法是:
在更新到opml文件的时候,设置它的修改时间为1700年
在所有opml下的xml文件更新成功后,设置opml的修改时间为DateModified时间
下次查询,用文件修改时间去和服务器进行比较,如果本地时间比服务器上早,去取新的。

这样也可以避免本地时间不对可能导致更新不正常的状态出现。

2008年10月8日星期三

嵌入式平台下openssl的裁剪方法

在嵌入式平台上,如果使用openssl的标准方法,编译出来的libcrypto.a和libssl.a会比较大,分别是2M多和400多K,为了减少空间使用率,可以使用下面的命令去掉一下东西:
./config no-shared no-zlib no-asm no-dso no-threads no-comp no-gmp no-krb5 no-rc5 no-zlib-dynamic no-hw no-cipher

创建出Makefile后,把gcc改成arm-elf-gcc, 把ranlib改成arm-elf-ranlib,这就可以生成比较小的libcrypto.a和libssl.a。

其实也可以用./config no-shared no-zlib no-asm no-dso no-threads no-comp no-gmp no-krb5 no-rc5 no-zlib-dynamic no-hw no-cipher -os/compiler:arm-elf-gcc编译arm版本,但是这样产生的库比上述方法大,看了一下,好像是优化级别差异,一个是-O,一个是O3

另外,如果用arm-elf-strip把库的符号去掉,库会小一半,但是应用程序就会报告找不到函数的实现,还没有找到怎么解决它。