首先要从昨天的开会说起,会上说到我们这个项目的软件需要规划,然后自然想到用什么OS的问题,傅说用VxWorks,我一想用那个不是等于做了一个玩具嘛,VxWorks又大又不提供源码怎么和我们的芯片用在一起呢,不过不用VxWorks的话只能用现在的那个老OS,这个OS用是能用,不过有点版权问题啊,
后来想想不如在网上看看有没有什么好用的,我的想法是找一个和原来的OS差不多的微型化的kernel就可以了,另外也要考虑是否可以后续的和其他高级的OS进行连接以扩展功能,于是自然想到了RTLINUX,这个东东以前也看过,用一个小的硬实时核作为起点然后启动linux作为它的一个最低级别的任务,不过它是商业化的实现,不适合我们公司使用,只能作为一个参考,
忽然想起之前玩NS2的时候无意中看到过一个OKL4,貌似也是个和RT类似的东东,不过没仔细研究,于是又翻出来看看,一看之下原来大有来头,OKL4源自Jochen Liedtke(2001年去世了)的L4微内核,Open Kernel Labs 公司改进以后提出了虚拟化技术,使得在L4上面可以跑各种操作系统,这个东东居然还被用到了qualcomm的3G手机里,它把linux和qualcomm原有的brew同时运行了起来,真是让人大吃一惊,看来天外有天这个道理是永恒正确的。这些都是我ozlab的blog上看到的,看的时候又看到了Nanokernel for embeded linux的东西,我以前也听说过这个Nano,和RT是很像的东西,于是又去看Nano,找了一个blog和slides出来--Jserv's Blog
看Nano的时候又在Jserv的blog里看到了更让我眼前一亮的Open Moko,是一个完全开放的linux手机应用平台(不像MOTO就是不开放接口),而且已经有成形的产品出来了,就是Neo1973 ,真的很有意思,有空我去会研究一下,说不定也去买个NEO1973用用,以便把烂E680扔掉,呵呵,
说道这里我就谈谈我对embedded linux的一些看法,对于embedded linux有很多种实现方法,有如RT这样完全架空linux的,有如MontaVista那样基于linux内核改造的,也有一些中间路线的,不过我还是倾向于架空linux的做法,因为我是做通信的,明白硬实时性能对通信系统的重要性,在通信系统中很多操作是必须在指定的时间内完成的,要不就是失败了,架空linux对linux内核的改动几乎没有,也比较好移植,当然缺点也有,就是用户进程与实时内核通信的效率相对比较低,如果有大量需要调用实时内核的资源的话就不太合适了,不过对我来说我一开始可能连linux都不需要用,只要用实时内核就好了,以后需要扩展应用的时候再把它加上,这样对我来说就非常的灵活了,
哎,今天有是不务正业了,我要做的component的设计文档还没有写好呢,一个月内写完还是有点难度的,明天开始要好好工作了,有空的话在研究研究OKL4和NANO,呵呵,
看Nano的时候又在Jserv的blog里看到了更让我眼前一亮的Open Moko,是一个完全开放的linux手机应用平台(不像MOTO就是不开放接口),而且已经有成形的产品出来了,就是Neo1973 ,真的很有意思,有空我去会研究一下,说不定也去买个NEO1973用用,以便把烂E680扔掉,呵呵,
说道这里我就谈谈我对embedded linux的一些看法,对于embedded linux有很多种实现方法,有如RT这样完全架空linux的,有如MontaVista那样基于linux内核改造的,也有一些中间路线的,不过我还是倾向于架空linux的做法,因为我是做通信的,明白硬实时性能对通信系统的重要性,在通信系统中很多操作是必须在指定的时间内完成的,要不就是失败了,架空linux对linux内核的改动几乎没有,也比较好移植,当然缺点也有,就是用户进程与实时内核通信的效率相对比较低,如果有大量需要调用实时内核的资源的话就不太合适了,不过对我来说我一开始可能连linux都不需要用,只要用实时内核就好了,以后需要扩展应用的时候再把它加上,这样对我来说就非常的灵活了,
哎,今天有是不务正业了,我要做的component的设计文档还没有写好呢,一个月内写完还是有点难度的,明天开始要好好工作了,有空的话在研究研究OKL4和NANO,呵呵,
No comments:
Post a Comment