经过几天的努力,终于把Hello China V1.76版的内核移植到基于Cortex-M3内核的STM32 chipset上。因为还希望进一步写一个USART驱动程序,因此详细的移植文档,预计一周之后能够发布出来。但内核已移植完毕,下面是大致的情况描述:
1、所有代码运行在previledge模式,不论用户线程还是异常处理程序,都使用MSP作为堆栈;
2、根据功能的裁剪情况,编译后的映像文件大概在10K到30K的样子。因为使用的是MDK 4.72评估版,最大支持32K二进制文件的编译,因此很多功能都裁剪掉了,比如文件系统支持、GUI等;
3、线程切换代码,跟x86实现的不一样。在x86上,分为线程内切换和中断上下文切换,但在STM32中,线程的切换统一在中断上下文(PendSV)中进行。大多数嵌入式操作系统都是这么做的;
4、实际上,跟硬件强相关的代码行数并不多,大概有150行左右的汇编代码(包括简单的BSP),同时有50行左右的C语言代码。这些代码量大约占Hello China V1.76版本内核的0.5%左右;
5、支持的线程数量、线程堆栈尺寸、支持的内存数量、同步对象数量、中断层级等,都是由目标系统的内存决定,无固定范围。这样可支持最大程度的伸缩性。
还有其它的一些技术细节情况,就不详细说明了,在即将发布的移植指南中将会详细描述。
Hello China定位为物联网操作系统,其内核也是按照物联网的需求进行设计和优化,同时也规划了大量针对物联网的特性,将在后续版本中实现。我们很清楚,如果是作为研究或者学术目的,封闭开发就足够了。但是要真正支撑行业发展、培育物联网应用生态圈,目前还远远不够,最欠缺的就是实际应用。因此,我们真诚的寻找应用合作伙伴,共同推动物联网操作系统的成熟,共同推动我国物联网产业的更快更健康的发展。
我个人认为,与互联网一样,物联网也必须秉承开放合作、互相包容、共同成长的文化,才能真正成功。因此,任何单位或个人,只要愿意在实际项目或实际产品中使用Hello China操作系统,就是我们的合作对象。如果能够找到合作的共同价值点,达成合作协议,不论最终结果如何,相信对双方都是进步和成长。
具体的合作条款和提供的服务,在这里不做限定。诸如提供技术支持、源代码永久免费使用和修改等基础条款,肯定是必备的。我个人更看重的, 合作代表认同,是一种对行业预期的认同,或者说对未来的认同。如果您也认为像Android操作系统对互联网的影响一样,物联网也需要一个基础的平台来承载其发展,聚集其能力,那么不要犹豫,我们一起合作吧,让我们一起构筑这个托起物联网产业腾飞的平台。
联系方式:QQ/微信:89007638,email:garryxin@gmail.com
现在的物联网,就像是大雨过后,地面上的一个一个的小水湾,如果有一个平台能够提升这些小水湾的水平高度,那么必然能够形成一个广阔的海洋。物联网操作系统,就是这样一个平台,或者平台的一部分。
对物联网操作系统的概念和Hello China操作系统的详细情况,请访问blog:blog.csdn.net/hellochina15