多核 Linux 系统上的一个核心可以专用于一个用户空间应用程序吗?

多核 Linux 系统上的一个核心可以专用于一个用户空间应用程序吗?

一个内核是否可以专用于一个用户空间应用程序(例如,为了对 GPIO 进行位操作而无需任何中断)?

答案1

您可以将内核isolcpus选项与taskset命令结合使用。

在 Raspberry Pi 上,通过将以下内容附加到 中的行来保留要使用的核心/boot/cmdline.txt

例如,保留核心 2 和 3。

isolcpus=2,3

然后使用任务集将程序分配给核心。

例如启动Python解释器。

taskset -c 3 python

(看这里有关如何使用该命令的信息)。

如果这是 Raspberry Pi 特有的,您需要 bit bang 吗?可能已经存在解决方案。

相关内容