我怎样才能编译FreeRTOS 源代码并在 Ubuntu 11.04 上运行它(可能在 qemu 上)?
答案1
问题始终是:您想要模拟目标系统的精确度如何? :)
有一个FreeRTOS 项目移植到 pthreads,因此您将能够将 FreeRTOS 作为普通线程应用程序运行。这应该可以满足您的要求?
严格的实时限制不再存在,但正如页面上所说:
“这个端口允许 FreeRTOS 充当进程内 pthread 的调度程序。它旨在允许在 Posix 环境中开发和测试代码。它被认为是一个模拟器,因为它不会保持实时,但会保留相同的确定性任务切换。”
在工作中,我发现维护系统的 x86 端口/模拟/模拟是值得的。这样,当新硬件到达时,我可以制作出更好的第一个原型。当然,您需要预先进行一些设计并选择合适的抽象级别,但至少根据我的经验,这会在清晰度、可维护性和可测试性方面得到回报。
我还在研究 QEMU Cortex-M3 环境中的 FreeRTOS。如果我解决了一些问题,我会继续发帖。
答案2
从表面上看,作为一个起点,您需要加载他们的一个演示项目(特定于 uP)并从那里构建代码。
我查看了 PIC 项目,它确实包含构建代码所需的所有文件以及 preproc 定义。
他们还表示,他们开发的代码已尽可能符合 std C。因此,如果您拥有正确的工具链,并且正在构建受支持的 uP,请尝试构建他们的演示项目之一。