问题标签 [rtos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - RTOS 的优势,而不是单一的顺序程序
拥有支持 RTOS 的多任务程序而不是单个顺序程序有什么优势?
有什么缺点吗?
c - 单个线程中的函数调用跟踪,似乎不是预期的顺序
我有一个线程,它执行函数调用,
通常我以这种方式获得 printf 痕迹,
但从长远来看,有时我会以这种方式获得痕迹
这与嵌入式 RTOS 设备环境有关。(MQX) 语言 - C 无论如何,我们是否可以怀疑为什么系统会以这种方式运行。当系统负载重且运行时内存使用量约为 93% 时,就会发生这种情况。
embedded - RTOS 的内存映射
我期待了解内存映射在嵌入式系统中的用途。这里的函数堆栈与普通的 unix 系统有何不同。
任何可以帮助我调试嵌入式系统内存相关崩溃的见解都会有所帮助。
vxworks - 访问 VxWorks 目标 Shell
我想问一个关于 Tornado/VxWorks 5.4 的问题
我想访问在我的嵌入式交换机下运行的VxWorks目标 shell 。我正在使用带有 VxWorks 5.4 内核的 Tornado。在 Tornado 中有一个 WindSh ( Host Shell ),我可以直接从 Tornado IDE 本身访问它。但是我的问题是如何访问目标 shell?在某些站点中,他们说可以通过串行端口完成,但是没有直接连接到我的嵌入式设备的串行接口。我也尝试通过 telnet 或 FTP 进行操作,但也没有成功。你有什么建议吗?提前感谢您的回答。
问候,
阿尔珀
embedded - RTOS:一个任务是否可以有两个消息队列?
我创建了一个任务 A 和两个消息队列 Q1、Q2。任务 A 是否可以等待两个消息队列?
我知道这是不可能的,因为在阻塞消息 Q 调用的情况下,当没有任何消息要处理时,任务将阻塞自身(阻塞状态)。
例如,如果 Q1 有 msgs 而 Q2 没有 msgs,那么在 Q1 的情况下,任务将处于就绪状态,而在 Q2 的情况下,任务必须处于阻塞状态。
一个任务不能同时处于两种状态。
我的理解正确吗?
qt - 在经过认证的航空平台上有 Qt 的替代品吗?
发布了一个类似的问题,一般询问 Qt 的替代品。好吧,我对任何经过认证的 Qt 替代品特别感兴趣。具体来说,如果有任何 Qt 替代品已经在经过认证的航空堆栈上飞行或正在飞行。(所以只知道 Qt 替代方案是不够的)
我正在追问这个问题,因为 Digia 一直没有回应有关商业 Qt 的信息请求,该商业 Qt 应该在 WindRiver/VxWork 和 Integrity(Green Hills)和 Qnx(我认为)上运行。我特别询问了他们在飞行认证的 DO-178 环境中对 Qt 的追求,得到了零回复,并收到了来自诺基亚的类似回复(如您所想)。
鉴于这种反馈水平,并且作为降低风险的努力,我正在寻找替代方案。
感谢您的任何反馈和见解。
c - 编译器相关 - 这两个 C 代码真的相同吗?
在多线程或 RTOS 环境中,以下这些代码是否相同?
我相信他们不是。但是第一个代码绝对保存在多线程环境中吗?编译器是否有规则为“ga”分配一个寄存器,并且稍后在 func_a() 中不会再次读取“ga”?
我知道我可以使用锁,但这不是关于如何保护数据的问题。这只是关于编译器行为的问题。
// ga 是一个全局变量。
我的意图是寻找一种标准方式(不是特定于平台的)来读取 ga 一次并将其值分配给局部变量“a”。
然后可以始终使用“a”,而不管“ga”是否已更改。
c - LinkedList 添加元素
我们在 C 中的 LinkedList 有问题。当我计算列表中应该有多少节点时,我总是得到 1
LL计数:1
这是列表代码的添加、计数和获取最后一个元素:
它是这样调用的:
其中 LL * 列表;是一个全局变量,而 temp 在本地范围内。我希望任何人都可以看到我哪里出错了
问候,Sjaak 和 Gerrit
embedded - RTOS - 等待队列中的不同数据
我正在对 TI 的电路板进行编程,并且我希望能够以某种方式将两个不同的 ISR 发布到任务的消息队列中。那部分工作正常。但是,在接收端,是否有任何智能方式让任务挂在其队列上,并根据 ISR 发布的数据对数据执行不同的操作?
基本上,我有一个 LCD 更新任务,它显示来自我的电机的信息。但是,如果我有一个电机传感器 ISR 和一个按钮按下 ISR,它们发送不同的信息进行更新,这可以在一个队列中完成吗?
malloc - RTOS - 传递分配结构并将其传递给队列
我正在运行的几个任务遇到了一些问题。我有三个任务,其中一个是 LCD 更新任务,另外两个是电机驱动器任务。我还有两个 ISR 可以向两个电机驱动任务发布消息。至于安全地传递指针,我正在考虑创建一个结构:
现在共享内存的问题出现了,所以我在想:
然后我将通过队列将指针发送到结构:
在最后一个任务收到消息并使用成员变量完成所需的操作后,我将不得不释放内存。
这样的事情是合理的吗?