我将开始在 Zynq 板上开发应用程序。我的任务基本上是移植在双核 ARM 上的 Microblaze 上运行的现有应用程序。
我想知道在新系统上使用哪个操作系统,因为我在这个领域完全没有经验。在我看来,有四种主要方法:
1) Petalinux(使用两个内核)
2) Petalinux+FreeRTOS(使用两个内核)
3) FreeRTOS(仅使用一个内核)
4) 裸机(仅使用核心)
我的应用程序要做的是在以太网和多个自定义链路之间移动大量数据,因此它必须服务大量中断并指挥大量 DMA 操作。
Petalinux 在中断服务中引入了多少与 baremetal 或 FreeRTOS 相关的开销?对于这种工作,您是否认为单核应用程序在没有任何操作系统的情况下运行更快,或者,例如,具有操作系统开销(以及信号量或互斥体等同步机制)的 Petalinux 应用程序?
我知道这个问题并不精确而且很模糊,但是我没有该领域的经验,我强烈需要一些初步的提示。
谢谢你。