经过一段时间努力,一个初步能在思蜕盟的豆皮开发板(stm32f103处理器)上运行的Billux OS最小系统基本完成。由于Billux OS最初是在ARM s3c2410a上开发起来的,这次在stm32上应该算是一个移植过程,本人的出发点是为了在不同的平台上对现有系统代码的正确性进行验证。
 
由于stm32(CORTEX-M3)系列ARM处理器与传统的ARM7/ARM9有较大的不同,所以在整个过程中,很多次强迫我不得不重新改造原有代码,甚至架构,以使Billux OS能真正的提供一种跨平台的兼容性。
 
由于我对这款处理器的认识还没有达到一定的深度,所以很多细节的处理上难免存在问题,好在从目前来看,系统还是能比较正常的运行很长时间。
 
发布Billux OS for stm32f103第一个预览版本_第1张图片
 
另外,Billux OS开始提供一些形式上与vxWorks形式上类似的调试接口,比如:
 
(1)i 命令显示系统内所有任务
发布Billux OS for stm32f103第一个预览版本_第2张图片
 
(2)ti 命令显示任务详细信息
发布Billux OS for stm32f103第一个预览版本_第3张图片
 
(3)tt 命令用来显示任务的函数调用栈
很可惜的是cortex-m3上的tt命令,还没有实现,因为gcc编译器在处理O2优化以及生成TPCS帧时似乎有冲突,如果哪位仁兄有这方面的资料不妨提供,谢了。
下面是s3c2410上的tt结果:
 
目前在stm32上的进一步开发暂时停止了,因为Billux OS内核有太多的东西需要完善了。