『木子李同学』究竟有什么优势,用RTOS做嵌入式开发( 二 )

文章图片
2、并发性从并发的角度来看 , 各个线程在使用delay/事件等待这类函数时 , 会自动的让出CPU给其他有需要的线程 , 不仅书写delay延时函数操的心少了 , 整个CPU的利用率也得到了提高 , 最终提升并发性 。 
文章图片
3、实时性再来看实时性 , 像ucos/RT-Thread这些RTOS本身就被设计为实时的操作系统 , 各个线程都有不同的优先级别 , 重要的线程可以设为高优先级 , 不重要的线程可以降低优先级 , 做好全局的统筹规划后 , 这样整个软件的实时性也能得到保证 。 
文章图片
4、开发效率由于操作系统提供了统一的抽象接口层 , 方便了可重用组件的积累 , 提高开发效率操作系统其实是一群软件大牛们智慧的结晶 , 他们站在应用软件、底层驱动的开发角度 , 对很多常见的软件功能进行了封装、抽象 , 比如:信号量、事件通知、邮箱、环形缓冲区、单向链表/双向链表等等 , 这些功能拿来即用 , 对于开发者方便极了还有一些操作系统 , 比如:Linux和我们国产的RT-Thread , 他们这些系统对碎片化的硬件 , 统一封装了一套标准的硬件操作接口 , 一般称为设备驱动框架 。 这样我们的应用软件工程师 , 就可以专攻应用的工作 , 再也不用怕更换硬件 , 又需要重复造轮子了 。 
文章图片
5、软件生态生态的丰富带来了量变到质变的过程(自己玩->大家一起玩)使用操作系统所带来的软件可模块化、重用性的提升 , 也使得我们自己在做软件开发时 , 可以封装一套基于操作系统、适合嵌入式的可重用组件 , 这些组件不仅可以用在自己的项目中 , 还能开源出来分享给更多有需要的嵌入式开发者 , 把软件的价值最大化 。 个人感觉这是一件蛮有意义事情 , 我自己本身也是一名开源极客 , 也有在GitHub上开源一些嵌入式软件 。 说实话在做开源软件前 , 能够深入交流嵌入式软件的地方非常少 , 毕竟大家的代码不是芯片不一样 , 就是硬件不一样 , 你的代码给了他 , 也不一定能运行起来 。 但是自从用了操作系统后 , 软件的可重用性提高了 , 能够让更多的人很迅速的用起来我的开源软件 , 这个时候能够有更多的人可以一起交流 , 还接触到了很多的大牛们 , 甚至是国外的朋友 。 俗话说:水涨船高 , 我的能力也从此得到了快速的提升 。 所以总结下来 , 有一个能一起交流嵌入式软件圈子还是蛮重要的 , 自己闭门造车 , 可能都是在重复造轮子 。 
文章图片
常见RTOS优势对比
ucos/freertos/RT-Thread , 选择这三款OS的原因是 , 它们的年限都比较长了 , 在市面上都蛮有知名度 , 用过的人比较多 , 更有说服力 。 1、基本功能、性能各家RTOS差异很小 , 可比性并不是很大2、易用性/可读性这块FreeRTOS应该说是最差 , 奇葩的匈牙利命名法 , 代码实现用了很多宏 , 可读性非常差 。 ucos可读性还可以 , 注释也很全 。 这块做的比较好的是RT-Thread , 它是类Linux的代码风格 , 面向对象的设计模式 , 代码简洁易懂 。 在保证了体积(最小ROM:3KRAM:1.5K)的同时 , 还借鉴了Linux的设备驱动框架、虚拟文件系统、Shell等功能 , 设计更加优雅 。

文章图片
3、组件丰富性RT-Thread比起传统UCOS、FreeRTOS不仅仅在基础功能上多而全 , 多达50个以上的可重用软件组件 , 还有很多物联网组件 , 对于物联网产品几乎做到开箱即用 。 RT-Thread还可以运行Python、Java、Lua这些高级语言的脚本 , 进一步降低开发难度 。
推荐阅读
- 尹同学10的安卓10更新已在进行,具有新的手势控制和暗黑模式,索尼Xperia
- 尹同学Pro蜂窝版开卖:多花1200元买个SIM卡位,苹果新iPad
- 【万众同学】抖音运营心得(6)
- 「木子李同学」12最新渲染图出炉,iPhone8低至百元,任性无敌,iPhone
- 『尹同学』Mate30沦为百元机改写历史,华为Mate40强悍配置悉数出炉
- 【木子李同学】Neo3开售30分钟突破亿元,iQOO价比百元机,买早的网友心碎,iQOO
- 木子李同学■魅族16价比百元机改写历史,魅族17强悍配置曝光
- 尹同学■,Note10低至百元,友商直呼亮瞎眼,三星新机发布时间确认
- 维林:比孙正义投资阿里还神奇的投资,投资同学1.5万,今赚回了1千多亿
- 『尹同学』Pro,华为Mate30前辈价格首当其冲,麒麟1020+66W快充华为Mate40
