社区之星推荐语:满鉴霆,获得2020 年RT-Thread社区杰出贡献奖。RT-Thread社区工作小组成员之一,热衷于分享、推广RT-Thread操作系统,为RT-Thread英文社区翻译BSP文档,半年时间贡献了49个PR、11个软件包,配合RT-Thread制作中英文视频教程。
2020开发者*会获得RT-Thread社区杰出贡献奖
社区贡献
在使用RT-Thread之前,我使用的是uCOS-III的操作系统,因为项目的缘故需要移植一些在Linux上跑的软件包移植到STM32上,因为uCOS-III本身就是一个内核,而基于Linux开发的软件都是使用统一的read/write方式进行操作(一切皆文件),因此我费了半天劲将写了一个虚拟文件系统层,将FATFS和LWIP统一起来,而且还要实现一些标准的libc库函数,其实就是重新造了一个轮子,而且这个轮子还特别的简陋。那时候我逐渐意识到必须要向Linux看齐,于是我找到了RT-Thread操作系统。其实只要你用了RT-Thread,你就会爱上他,离不开他;因为所有的驱动开源社区的小伙伴都给你写好了,只要使用Env工具或者RT-Studio就可以快速配置出一套工程。这让我想到了王境泽的真香定理。
我也将RT-Thread推荐给其他的工程师使用,但是工程师们的心态都是,我已经使用了uCOS或者FreeRTOS,我也*惯了自己写设备驱动,你还让我再学一个其他的操作系统,多麻烦。所以很多工程师都是,RT-Thread听过、了解过,就是没有用过,不愿意走出自己的舒适圈。于是我发现了RT-Thread在推广上面临的一个巨*阻力,即市场是有惯性的。于是针对这个痛点,我决心为我国独立自主的操作系统做些什么,既然这些工程师不愿意走出自己的舒适圈,那么好,我就走进你的舒适圈。于是从2020年6月末开始,每天熬到凌晨3-4点钟,花了一个月的时间,编写出了RT-Thread的uCOS-III兼容层(https://github.com/mysterywolf/RT-Thread-wrapper-of-uCOS-III),让工程师可以沿用已有的uCOS-III的编程经验,以前编写的应用层和业务逻辑模块都不需要做任何修改,就可以直接运行在RT-Thread上,即只要你有其他RTOS的基础,借助兼容层,入门RT-Thread不需要任何额外的成本。
在uCOS-III兼容层发布之后,有小伙伴希望我编写uCOS-II兼容层,于是我在2020年9月开始编写uCOS-II兼容层,由于学业缘故,uCOS-II兼容层的编写比较慢,花了将近3个月的时间,已经于12月发布(https://github.com/mysterywolf/RT-Thread-wrapper-of-uCOS-II)。真心希望,尤其是在中美贸易战的背景之下,中国的工程师尽量使用我们国家自己的操作系统。
同时,我还负责给RT-Thread英文社区翻译一些BSP文档,在半年时间里,我贡献了49个PR,除了RT-Thread源码的PR之外,这其中的一小半是在翻译文档。现在我正在忙于撰写和录制英文教学视频,配合RT-Thread的“Going Global”计划,让RT-Thread走出国门,走向世界。目前RT-Thread的第一支以英语、系统性讲解RT-Thread的教学视频就要发布啦!
自从我加入RT-Thread开源社区,我接触到了很多技术*佬。在2020年深圳开发者*会上,终于有机会见到了他们,听他们谈话甚至一些术语我听都没听过,这也让我意识到自己还有很多东西要去学*。
技术展望
目前,嵌入式领域在迎来一场革新,以RTOS+MCU的设计方案正在挤占和逐渐取代传统的Linux+MPU的方案的市场,加之MCU与MPU之间的界限越来越模糊,一些MCU也具备了丰富的资源和超群的性能,这种低成本的解决方案使得高性能物联网终端得以*范围普及。我认为AI在终端上的运用将是未来的趋势,以RTOS+MCU为平台的设备也将实现AI算法,并使产品落地。这倒逼传统AI算法的迭代和升级,以适应MCU资源受限的情况。因此AIoT将是未来的趋势。
开发者寄语
RT-Thread不同于uCOS或者FreeRTOS这类实时内核(real-time kernel),RT-Thread是一个完整的实时操作系统(real-time operating system),除了基本的实时内核之外,还有设备框架、虚拟文件系统等一系列“上层建筑”。因此若沿用uCOS或FreeRTOS的学*方法,即什么都要搞明白是不现实的,建议初学者用到什么学什么,在运用过程中搞清机理,而不是盲目的死磕源码。如果你还没有接触过RTOS,或者刚从其他RTOS转过来,建议先使用RT-Thread Nano版本(该版本仅是一个实时内核+必要组件)学*,学*成本**降低。然后再转入完整版进行学*,用到什么学什么。
在这里给初学者介绍一下如何高效检索RT-Thread的相关资料。自RT-Thread3.0发布之后,在社区小伙伴和RT-Thread工程师们的共同努力下,RT-Thread的中文资料得到了极*丰富。但是与此同时,面对现如今信息碎片化的网络资源,对于刚刚入门RT-Thread的小白来说,如何找到自己想要的学*资料就变成了一个麻烦的问题。在这里我和*家分享一下经验。
1) 搜索引擎的选择
在此之前,我们搜索嵌入式相关的资料时,一般使用百度和Google,这两个搜索引擎各有侧重,百度一般侧重于中国本土的技术博客和论坛等资料,而Google一般侧重于外文资料和文献。但是无论是百度还是谷歌都有一个很*的问题就是没有办法搜索微信公众号的文章,因为微信公众号的搜索权限仅授权给了搜狗搜索引擎。而在微信公众号上,除了RT-Thread官方以外,还有很多嵌入式相关的微信公众号也推送了相当多质量极高的教学文章。如果使用百度或者谷歌去搜索,这些文章将不会被检索到。因此我建议如果*家要检索RT-Thread基础教学资料的话,一定要考虑使用搜狗搜索引擎的微信搜索功能,当然也可以直接在微信中搜索。
2) 官方文档中心
官方的文档中心是由RT-Thread工程师撰写的说明文档,具有很高的权威性,一些基础的概念与使用方法,建议到官方文档中心查找(https://www.rt-thread.org/document/site/
)。为了能够加速官方文档中心的文档丰富速度,日后,官方文档中心将开放权限给社区小伙伴,可以类似于提PR一样修改或者增加文档的内容。
3) 视频资源
视频资源建议*家去B站 (www.bilibili.com)
去搜索,B站没有广告,不需要登陆也可以看视频,目前除了官方账号以外,还有很多社区的小伙伴也上传了*量关于RT-Thread的教学视频。欢迎*家关注RT-Thread
B站官方账号 (https://space.bilibili.com/423462075/)。
RT-Thread官方网站:https://www.rt-thread.org/index.html