从零开始掌握FreeRTOS(序)裸机与RTOS的区别

目录

裸机系统

RTOS(实时操作系统)

举例分析

裸机系统

RTOS

对比


 

        RTOS,是中文名叫做 实时操作系统 ,这个专栏的主要内容则是掌握 FreeRTOS 。接下来,我们来对比一下它和裸机系统的区别,以及了解RTOS的优势,让我们清晰地认识到为什么要学习RTOS。

         RTOS,是中文名叫做 实时操作系统 ,这个专栏的主要内容则是掌握 FreeRTOS 。接下来,我们来对比一下它和裸机系统的区别,以及了解RTOS的优势,让我们清晰地认识到为什么要学习RTOS。

裸机系统

        裸机系统,我们在main函数中的while循环里实现的功能,就是逻辑系统的实现方式。也就是安顺序执行每个功能并无限地循环下去。

        像上述的那种执行方式,无限的循环执行固定的内容,也叫做轮询系统。

        如果出现需要立刻响应的情况,我们可以通过中断来打断正在执行的任务,优先执行中断,然后再继续执行未完成的任务。当然,中断也会被优先级更高的中断打断。

RTOS(实时操作系统)

        RTOS,是由操作系统的调度器判断执行哪个任务,每个任务都是无限循环,任务间按优先级执行,高优先级任务就绪,则放弃低优先级去执行高优先级。在此任务完成之后再执行低优先级任务,以此类推。通过这样的方式,可以在宏观上达到多个任务同时执行的效果。

        而我们要学习的 FreeRTOS 包含以下特点;

        1. FreeRTOS 是一款开源免费的RTOS,因为它免费且开源;

        2. FreeRTOS 具有可裁剪的优点,这意味着我们可以根据需求来对 FreeRTOS 进行各种修剪以适应用户的使用要求;

        3. FreeRTOS 作为一款轻量级的操作系统,其源代码量只有 9000+ 行,使其能够轻易部署在硬件要求低的产品上,进一步提升了 FreeRTOS 的可移植性。

        4. FreeRTOS 本身对于任务的数量和优先级并没有做出限制,多个任务可以在同一优先级下;需要注意的是,FreeRTOS 系统本身对任务的数量和优先级内容没有限制,但如果使用硬件本身的优先级定义的话,则需要根据硬件的支持来定义这些内容。

        5. FreeRTOS 支持抢占式、协程式(该方式目前已暂停支持)、时间片轮转等任务调度算法来管理任务的执行。

        6. 所有任务都是死循环,由任务调度算法来管理每个任务的运行情况。

        7. 在当前任务进入等待的情况下,CPU会被释放出来,使其可以执行其它低优先级任务。

举例分析

        接下来,让我们模拟一个场景:早上,我们一边吃饭一边和朋友在手机上聊天,突然发现要迟到了,于是我们立刻起身离开家,坐车前往目的地。

        上述过程我们可以分别用裸机系统和RTOS来模拟:

裸机系统

        我们一直在执行吃饭的任务,朋友的消息就相当于中断,迟到就像标志位,当标志位置位的条件满足后,我们就出门打车,然后一直等待到达目的地,期间偶尔回一下朋友的消息。

RTOS

        将吃饭定为一个任务,回朋友消息为一个任务,回消息的优先级更高,以求及时回信息;出门打车到达目的地也是一个任务,其优先级最高。在执行出门坐车的任务时,在等待到达目的地的时间里,我们规划了一下之后的行程。

对比

        因为 RTOS 对任务的调度管理,使得CPU工作的效率变高,这点直接反映在坐车时可以做其他事情上。而裸机系统为了防止出现问题,中断中只能处理一些耗时很少的事情,只能一板一眼地做完一件事情之后才能做下一件事,顶多回个消息。

        总的来说,RTOS 的优越之处在于对CPU的高效利用上,还有实时响应、多任务并行、资源管理优化等优点。

        综上所述,裸机系统适用于逻辑简单的场景,而在一些大型、复杂的环境下,RTOS则是我们的不二之选。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pQAQqa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值