什么叫做实时控制?为什么有人说树莓派不是实时控制而arduino是?

论坛 期权论坛 知乎     
知乎用户   2019-8-14 01:08   4978   2
转载声明:本文由互联网用户自发贡献,部分转载来源来自知乎(zhihu.com),强烈建议您访问知乎查看完整内容。本社区不拥有所有权,也不承担任何法律责任。如有侵权,请联系optbbs@163.com。一经查实,即刻删除。
我的理解是:

树莓派本身是一个完整的电脑,跑了操作系统以及各种任务,操作系统本身需要不停的调度各种进程切换,导致操作gpio的进程并不是实时独占整个cpu时间的,在监听电平变化的操作只有等到操作系统分配到了时间片给gpio的操作进程才会触发对应的中断处理程序。

而arduino从一上电就在跑rom里面的操作io口的代码,所以是独占整个cpu的,一旦有任何触发中断处理程序的操作都能立马被监听到,所以arduino就是实时控制。

我的理解对吗?
分享到 :
0 人收藏

2 个回复

倒序浏览
2#
热心回应  16级独孤 | 2019-8-14 01:08:09 发帖IP地址来自
谢邀!首先实时realtime是操作系统提出的一个概念。请参考Silberschatz、Galvin和Gagne的《操作系统概念》。分为硬实时和软实时,这些都有很明确的描述。

而从概念描述看实时是一个相对的概念。硬实时处理请求在规定时间内得不到响应系统会出现致命错误;软实时要求低一点。

比如VxWorks的响应时间是微秒级的,在他的应用范围内这种响应时间满足要求他就是实时控制。如果哪天有变态用户提出纳秒级的响应要求,VxWorks用不上,那在这个应用场合就不算实时控制了。

现在市场上的RTOS基于目前的技术水平普遍只能做到微秒级,有纳秒级响应要求的就必须借助其他技术手段比如Linux下的ARTiS
【多处理器下的硬实时操作系统研究-电子产品世界手机版】https://mr.baidu.com/7o2i1dj

题主对arduino比树莓派响应速度快的原因基本理解正确,但是否是实时控制得根据应用场景定。
3#
热心回应  16级独孤 | 2019-8-14 01:08:10 发帖IP地址来自
实时是指微机对输人信息以足够快的速度进行处理,并在一定时间内作出反应或进行控制。
很明显,两者都满足。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:182358
帖子:1746
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP