我接触过的嵌入式操作系统——rtx51、freertos等
[复制链接]
本帖最后由 dcexpert 于 2019-11-20 18:31 编辑
1. 听说过哪些嵌入式操作系统,是否实际使用过嵌入式操作系统
使用单片机多年了,从51单片机,到AVR、PIC,STM32等,也用过或研究过一些rtos,如rtx51、smll rtos、freertos、ucos、OSA、mbed os、rt-thread等。有的RTOS现在发展的不错,有的已经消失很久了。
2. 说说自己接触嵌入式操作系统的经历,有什么体会,有什么经验或教训
RTOS最兴盛的时候是应该在51单片机的后期,自从ucOS和small RTOS在51上开始流行后,就逐步出现了非常多的不同RTOS,已及在各种单片机上移植RTOS的热潮。那时最出名的就是ucos了。RTOS的出现,让单片机编程开始有了很大的变化,让处理复杂的任务也变得简单。
RTOS开始的时候使用也挺复杂的,要考虑好任务优先级、堆栈、资源共享,那时资料少,很多东西得慢慢摸索。早期的RTOS,受到硬件资源的限制,为了在8位或者16位单片机上运行RTOS,经常需要进行对RTOS裁剪。比如在51上,因为ram和flash都很小,裁剪到最后可能就只剩一个调度器和很少的功能了,即使运行起来和真正的RTOS差别也非常大。现在随着硬件的发展,RTOS的限制也越来越少,很多PC上的方法也可以逐步应用到单片机上了。
最早使用的RTOS是RTX51的简化版rtx51tiny,它是Keil c51中带有的免费版本。虽然简单和功能做了简化,任务数最大只有16个,但是用起来还是不错的,可以解决不少事情了。它包含了RTOS的基本思想,用来入门很适合。通过它在去学习和使用其它RTOS,会发现基本方法都是类似的,只是包含的功能更多。
3. 对嵌入式操作系统有什么看法
早期的RTOS,还是一个比较高端复杂的东西。那时的系统如果可以跑RTOS,顿时就显得比较高级了。而到现在,RTOS是一个在平常不过的事情,使用简单,文档丰富,参考资料也很多。现在很少有人专门把RTOS作为一个系统的重要特点来说明了,因为大部分系统中都或多或少使用了RTOS。即使自己的代码中没有直接使用RTOS,可能用到的库或者模块中也使用了RTOS。
现在开始流行的micropython、makecode等,内部也包含了RTOS。而现在创客中流行的arduino,虽然没有直接使用到rtos,但是也可以嵌入RTOS。
4. 说说对嵌入式系统编程版的建议和想法
多推荐一些RTOS的应用,以及针对主流RTOS的技术讨论吧。
|