算来算去,我从事嵌入式开发的年头也很久了,从最早的8031,到最近的EZ80、AT91AM9200,一个共同的特点是所有的系统中都没有使用嵌入式操作系统。
这完全是历史原因造成的。在最早使用8031的时候,还没有听说过嵌入式操作系统这个名词,当然也谈不上使用了。等到现在,嵌入式操作系统也出来了,使用的CPU AM9200也可以支持嵌入式操作系统了,可是找来找去,看来看去,商业的太贵,VxWorks动辄几十万人民币,免费的听说有问题,又不敢用,譬如Linux、uCOSII等等,唉,真是难啊。
不过不用操作系统也有好处,至少是软硬件的所有一切都在自己掌握,出了问题不用考虑是不是操作系统的问题,反正是自己的错,慢慢找问题去吧。
前些天在AM9200下编写了一个把数据保存到U盘的代码,在网上找了一堆的例子,有的就是基于操作系统的,看来看去,还是没什么帮助,只好回去仔细看USB的规范和OHCI的规范,花费了3个月的时间终于搞定。现在回头想一想,要是当时使用了操作系统,可能还更麻烦,毕竟还要花费时间学习操作系统,还要使代码适应操作系统。现在都是自己写,不说别的,至少使用OHCI规范完成U盘读写操作的整个流程搞了一个门清。
记得当时刚开始调试读写U盘程序不久,还有人跑过来问我使用的是什么操作系统,我当时回答说没用操作系统,他当时就晕掉了,半天没有说出话来,呵呵,现在想起来还是很有意思。