如何在Linux中运行实时应用程序?

Adr*_*ire 5 debian real-time

为了在我的 Debian Jessie 上运行 LinuxCNC,我做了:

  • 使用 apt-get/aptitude 通过 Jessie 向后移植安装内核 4.9 RT。
  • 重新启动我的计算机并检查uname -a包含PREEMPT RT
  • 通过添加存储库并使用来安装 LinuxCNCapt-get

之后,启动 linuxCNC 向导(通过正常点击菜单)进行抖动测试。我目前的结果非常糟糕,大约140us。

我想知道是否有任何PREEMPTION 配置可以启用,或者运行应用程序以获得更精确的实时性的特定方式?

另外,我如何检查该进程是否实时运行

注:我的电脑是intel E6600

the*_*rpy 5

\n

我想知道是否有任何 PREEMPTION 配置可以启用,或者运行应用程序以获得更精确的实时性的特定方式?

\n
\n\n

请参阅以下内容:

\n\n

http://wiki.linuxcnc.org/cgi-bin/wiki.pl?延迟测试

\n\n

链接到此:

\n\n

https://forum.linuxcnc.org/18-computer/25927-reducing-latency-on-multicore-pc-s-success?limitstart=0

\n\n

(来自上面的页面:)

\n\n
\n

Linux相关的改变:

\n\n
    \n
  • 编辑 /etc/default/grub 并添加内核选项:“isolcpus=1 acpi_irq_nobalance noirqbalance”(之后调用 update-grub)
  • \n
  • 确保没有安装“irqbalance”软件,如果有则删除(Ubuntu 软件中心 -> 安装的软件 ->\n 搜索 irqbalance -> 删除)
  • \n
  • 将 upstart 脚本“irq-affinity.conf”添加到 /etc/init(请参阅附件,它将把 irq 处理移至第一个核心)
  • \n
  • 将 sh 脚本 set-irq-affinity 和 watchirqs 添加到 /usr/local/sbin (首先允许手动设置关联掩码,第二个打开一个控制台\n 窗口,该窗口实时显示如何将 irq 调度到不同的内核\n - > 除 0 之外的所有数字 irq 都应由 cpu0 处理)
  • \n
\n
\n\n

不过,您可能必须调整 Syst\xc3\xa8me D 的脚本......

\n\n

快速测试一下:\n您还可以使用 提高优先级nice -n <x>,其中<x>是所需的优先级。

\n\n
\n

另外,我如何检查该进程是否实时运行?

\n
\n\n

请参阅这个问题:Linux 中的实时进程调度

\n