接触WINCE和linux都有一定年头了,结合最近工作的感受,做一些对比。
1、WINCE和LINUX的兼容性对比
最近碰到了几个问题:
(1)根据SBC8100/Plus底板修改的板子,使用DM3730核心板,用SD卡居然死活烧写不了WINCE6的内核到FLASH上,测试了5个不同型号和不同厂家的SD卡都是这样;但奇怪的是,用SD卡烧写linux却没有任何问题。
(2)在Devkit8000板子上测试U盘,同一个U盘,在linux下可以识别,但WINCE下识别不了。
上面的2个问题隐约说明,WINCE对硬件的容错性不如linux。
2、WINCE和LINUX的社区对比
有问题不要紧,但在WINCE下碰到问题,有一种束手无策感觉;而linux下却完全不同。
如果说Android出来之前,WINCE和linux在嵌入式系统平分秋色的话,Android出来以后,linux就比WINCE要更有生命力了;无论是ARM联合TI等6家公司联合投资的linaro、还是最新涌现的meego,tizen和Mer等智能操作系统、还是Android,都给linux注入了强大的活力,这对于中小型公司或者创业团队做嵌入式开发提供了很好的资源。
反观WINCE,除了一些大厂能得到微软的支持,我相信中心型企业或者创业团队,如果碰到问题,很可能是致命的。
也就是说,对于中小型企业或者创业团队,使用WINCE也许能“加快产品上市速度”,但其风险也是相当大的;从长远来看,其可控性远不如linux。
3、WINCE和LINUX对开发者的机会
对于像我这样的开发者、技术爱好者,无法容忍在WINCE下内核开发的缚手缚脚,更无法满足于仅仅开发几个C#设备程序。而在linux下,由于有活跃社区的支持,确实大有可为。
换句话说,linux才有自己的空间;WINCE再好,也没有自己的任何机会。
4、结论
放弃WINCE,专注Linux。