Do everything if needed

Only to note everything I meet.

10 2010 档案

如何写出优秀的代码
摘要:从业十年,看到过许多优秀的程序员,也见过不少平庸之辈,更有不少只能转做其它。原因我想也许他们一开始对自己的要求就不高,更重要的也可能是他们没有抓住程序的本质,没有搞清楚如何才能把事情做好。首先想把每个程序都做到最好这种信念是先决条件,人首先要有志向,只要想做好才有可能做好,下文所有的内容都是给这类人写的,如果只想混口饭吃,或者以后想做市场等其它方面的人就不用想这些事了。以下是我认为比较重要的几个原... 阅读全文

posted @ 2010-10-17 21:44 microsun 阅读(5758) 评论(13) 推荐(4)

待机唤醒速度慢的跟踪及解决历程
摘要:这两天又接到一个Bug:大家都抱怨待机唤醒的速度太慢。首先我们假定应用程序没有这么大的功力来影响系统,主要从驱动方面入手。当然主要是要找出是哪个模块在待机和唤醒时比较慢,有以前编译PM模块的经验这个问题变得很简单:在PM调用SetDevicePower设置各驱动的电源状态时计算一下实际花了多少时间。经统计发现NLED和AUDIO驱动都比较慢,花费300ms以上,而且AUDIO驱动在进D3和D4状态... 阅读全文

posted @ 2010-10-17 19:01 microsun 阅读(2723) 评论(0) 推荐(0)

解决唤醒屏不亮的问题之总结
摘要:前几天报来一个BUG:有时唤醒后屏不亮,USB连接已经在起作用,但连不上ActiveSync。初步判断是哪个驱动在进入D0状态时死掉了,从而引起PM无法继续进行下面的动作。所以写了一个程序去查是哪些驱动还在D4状态,果然有一些驱动依然是D4状态。但无法确定是哪个驱动的问题。所以在PM.dll中打印调试信息。  首选将PM的代码都拿过来加上信息,将其链接成动态链接库。搜索WPC下的PM.dll文件,... 阅读全文

posted @ 2010-10-13 07:13 microsun 阅读(1645) 评论(1) 推荐(0)

Mobile 6.5的音频问题
摘要:Windows Mobile从5.0开始就有一个问题:打电话时cprog.exe会有内存泄露。以前系统内存小,很快就发现可用已经内存消耗完,最近做的系统内存变大了,没有注意到这个问题。但会把cprog.exe全身的内存空间用完,以致引起一些奇怪的现象,最后使用一些内存分析工具才会现是这个程序的内存使用完了。 最后通过试验发现cprog.exe在打电话时会播放MID文件,文件名在如下注册表中: [HKEY_CURRENT_USER\ControlPanel\Sounds\Dialing] [HKEY_CURRENT_USER\ControlPanel\Sounds\Ending]通过将声音文件. 阅读全文

posted @ 2010-10-04 09:40 microsun 阅读(411) 评论(0) 推荐(0)

导航