linux – 有可能将单核集中在非常实时的计算上,而将其他核心用作常规核心吗?

我正在完成我刚开始的项目的一部分,我需要合适的内核.有一些代码对于一直运行至关重要,因为大于1us的延迟可能会对生成的信号质量产生影响.

我的硬件很可能是ARM Cortex A-53,4×1.2GHz,1GB RAM(在Pine64板上测试).简单地说,我让代码一直在循环运行,这是检查内存中数据的变化,然后计算和发送信号.因此,除了GPIO引脚操作之外,不会有任何系统调用,如打印输出到控制台,文件打开,malloc / free等等……所有这些东西都将在其他内核中运行.

我想使用linux,因为它有很多我想在其他三个内核上使用的功能,比如GUI渲染,使用OpenGL渲染简单的机器模拟以及接收指令.我知道对这么小的芯片有很多要求,但有没有办法让它起作用?

我尝试将isolcpus = 3参数传递给linux内核并禁用此cpu上的irqs.然后我用taskset产生了简单的进程 – 但它没有按预期工作,因为有5us的抖动.

最佳答案
我不确定我完全理解这个问题,但this earlier question似乎涵盖了类似的领域?

转载注明原文:linux – 有可能将单核集中在非常实时的计算上,而将其他核心用作常规核心吗? - 代码日志