为x86构建FreeRTOS

时间:2012-05-10 21:46:18

标签: ubuntu operating-system x86 freertos

我在网上看到,可以在Windows上为外部设备构建FreeRTOS。你能在ubuntu上为x86构建它吗?

由于

3 个答案:

答案 0 :(得分:11)

使用FreeRTOS在X86上可以做几件事。

第一种是在CPU上运行FreeRTOS作为操作系统。 FreeRTOS适用于微控制器,因此只有(正式)支持实模式(16位)。如果您运行的是基于186的微控制器,例如过去由AMD制造的那些(现在是?)RDC,那么这是有效的。您也可以在任何X86上运行代码,但仅在实模式下运行,并且它曾经是使用Open Watcom等工具的核心FreeRTOS代码的开发平台。我不确定一个等效的Linux托管16位编译器,但可能有一个。

另一个在X86上使用FreeRTOS是运行FreeRTOS模拟器。完成后,FreeRTOS不是运行CPU的内核,Windows或Linux正在运行CPU,但有Windows或Linuxs线程运行FreeRTOS代码。这是现在进行核心开发工作的首选方式 - 但它只是一个模拟器,意味着时间到处都是,模拟时间远低于实时(因为Windows中的时序分辨率和精度与实时系统)。

可以使用Visual Studio(免费版)运行Windows模拟器,并维护该端口。您也可以将它与MingW和Eclipse一起使用,虽然演示功能较少,但我相信Eclipse的更高版本存在一些问题。

Linux FreeRTOS模拟器是一个贡献端口,所以我无法真正评论它。

Windows模拟器页面: http://www.freertos.org/FreeRTOS-Windows-Simulator-Emulator-for-Visual-Studio-and-Eclipse-MingW.html

Linux模拟器页面: http://www.freertos.org/FreeRTOS-simulator-for-Linux.html

问候。

答案 1 :(得分:2)

根据FreeRTOS ports page x86构建支持的工具是:

  • Visual Studio 2010 Express
  • MingW平台
  • 打开Watcom
  • Borland公司
  • 范式

所以你的问题的答案似乎是否定的。

由于以上都是基于Windows的工具,我猜你需要一台Windows PC才能构建一个x86版本的FreeRTOS,尽管你可以在Ubuntu下使用WINE这样的模拟器。

答案 2 :(得分:2)

我不知道如何构建 FreeRTOS 以在基于 x86 的成熟计算机上作为操作系统运行,但我真的很想了解自己!

如何在 Linux 上构建和运行 freertos

不过,我可以说我可以很轻松地在 Linux 上运行 FreeRTOS 模拟器。我无法真正评论它的“实时”程度,据说(它明确指出它不是实时的,因为它运行在非实时 Linux 内核之上),但是构建和运行它非常容易.

在此处获取源代码:https://github.com/FreeRTOS/FreeRTOS。以下是在 Linux 上构建和运行模拟器的方法:

git clone https://github.com/FreeRTOS/FreeRTOS.git --recurse-submodules
cd FreeRTOS/FreeRTOS/Demo/Posix_GCC
make

现在已经建好了。要运行它,请执行以下操作:

./build/posix_demo

就是这样!它工作得很好!这是演示项目:https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS/Demo/Posix_GCC

然后您可以自己修改该项目,以根据您的确切需求和目的对其进行自定义。只需将该演示作为基线开始即可。这是一个很棒的小演示,有 2 个任务(线程)和一个线程安全队列(多生产者/多消费者兼容)以在它们之间传递数据。

参考文献

  1. 主要 FreeRTOS Linux 模拟器参考页面:https://www.freertos.org/FreeRTOS-simulator-for-Linux.html。您也可以在那里看到他们的构建和运行说明。