ecos

来源:互联网 发布:软天空同类软件 编辑:程序博客网 时间:2024/05/02 11:17
好久没有来写了,最近变动太大。
想看看ecos操作系统。linux和uclinux做嵌入式问题还是很大,内核过于庞大,
不过在接触ecos的过程当中一直都很迷惑,当然和我没怎么仔细看有关系,不过
我觉得一个主要的问题是,我以一个通用操作系统的思维来看待ecos,导致陷入了死角

主要需要明白的问题有如下一些
首先引导程序是怎么弄到板子上面的,以linux在pc上的思维来理解的话
比如lilo和grub,这些往往都是直接光盘安装的时候就安装上去了,也就是有了系统才安装引导程序
可以从光盘引导,安装完系统再安装引导程序,但是嵌入式系统不一样,先把引导程序烧在板子上面
然后才能够装载程序,比如用引导程序来烧根文件系统。

还有一个问题是,我一直以linux的思维方式来想ecos,或者说uclinux的思维方式,首先这些都是支持多进程的,因此总有一个装系统的过程,比如uclinux可以认为烧根文件系统就是装系统到flash中。但是
ecos我始终不明白到底是怎么装系统的?如何把ecos装到flash中去呢。就现在目前的理解是,ecos本身不需要安装。ecos系统本身不支持多进程,所有的系统服务和引用程序都在同一个进程空间,所有的都是线程,这样就容易理解了,只需要装载一个程序就可以了,操作系统和应用程序都在这一个程序里面,通过redboot装载起来就可以运行了,因此不存在安装系统的问题,因为ecos只支持一个进程。

首先编译ecos库,把所有的服务都编译到这个库里面,然后编译应用程序,链接这个库,相当于把ecos内核也编译到这个应用程序当中,因此两者是一体的,然后通过引导程序redboot来装载这个程序,这样整个系统就跑起来了。

不知道我上面的理解对不对,因为我开始不是做嵌入式实时系统的,特别是这样的小嵌入式系统,和linux和uclinux还是有很大区别的,不同于传统的操作系统,我就进入了思维定势。

至于redboot,我目前的理解是,他可以作为引导程序使用,也可以用来调试程序。其他的功能可能用的不多。

linux和uclinux首先都是太大,太过于复杂,可定制行不好,
不过ecos可能也有自己的问题,想想操作系统和应用程序都在一个进程空间里面,可能会导致一些问题
对多线程的编程能力要求应该是很高的。另外要把那些应用程序移植到ecos里面,并且安全的运行还真是一个不小的挑战。
可能以后用ecos,所以提前了解一下。ecos发展不尽人意。另外应用程序多的话似乎用ecos也不太适合,没有多进程的话,自己要处理的问题太多,比如如果有20个应用程序的话(应用程序+其他一些服务,比如协议栈,还有一些基础设施,嵌入式也不是完全一个单独的程序在跑),那些变量,互斥,看起来会很乱。我没有怎么写过多线程的信号相关的程序,但是我总觉得多线程里面似乎不应该使用信号
这个东西给我不可靠的感觉,也可以说是一种印象吧,但是我也不知道为什么。

前些天自己看了看相关的文章就动手开始自己做了,不过文章讲的不怎么好,
比如以开始我都不知道怎么从源代码编译,因为不知道如何定制,后来才发现有一些configtool,字符的和图形的,redhat9下面可以跑,不过debian etch这个configtool居然跑不了libc库似乎不兼容。
也没有用cygwin的,定制的时候configtools频繁的crash,后来发现不能用cvs的代码,下载2.0的代码后问题减少不少,还有就是编译器的问题,用他自己的编译器才行,网上arm-elf的不行,后来编译的时候解决冲突问题怎么也有问题,因为想得到redboot,所以搞了半天,后来去掉了大多的包才可以。
还是从基础的开始比较好一些,一开始不明白所以然,想所有的都编译的话很头痛,到后来生成了redboot,也不知道如何烧,因为以grub的方式来思考不行了,生成floopy的过程没有成功,qemu
的arm模拟似乎也有些问题,只能运行linux好像,floppy启动不来,只好等什么时候有空再看看看了。
以后可能首先模拟386的ecos要好一些,qemu支持的全面一些,以后再看arm什么的吧。凡是总有先后

不过不知道真正用ecos会在什么时候,不过平时自己有时间还是多看看,接触面广一些好。



前些天收到一个人的邮件,说做技术的,。。。。其实我也不想做技术,技术不能做一辈子,尤其是在中国,我鼓动大家去做和垄断行业相关的一些,但是我自己还是在做技术方面的,另外我也劝他们不一定要做底层的,因为他们所谓的底层的就是嵌入式,但是这样做下去几乎没有出头之日,而且中国的这种高科技环境决定嵌入式也是一种低科技。做技术的人有一种偏执的想法,因为大家技术出身,所以崇拜技术大牛,但是这是一种很悲哀的想法

那封邮件里说的是技术人员的人生观的一些问题,我比较赞同的是,以现有的东西为大家的生活带来方便,而不一定非要自己研发,像perl,tcl等,做一种粘合剂也可以,总之以技术来实现价值。有就用,
并非要从零开始,最终目的是大家需要的,这样自己做自己喜欢的,大家也容易接受的,也愿意花钱的。


另外说说慈善的看法,其实中国的企业家把自己的企业做大,雇佣更多的员工就是最大的慈善,
这样对双方都有利。
 
原创粉丝点击