使用Rtlinux命令运行可执行文件和使用FIFO策略调度进程/线程之间的区别

时间:2014-05-09 05:24:26

标签: linux linux-kernel embedded-linux

我是Rtlinux的新手,并试图了解基本面。我在某处读到了一个可执行文件也可以使用 rtlinux 命令运行,但我没有找到有关该命令的更多信息。使用Rtlinux命令运行可执行文件和使用带有rtlinux补丁的FIFO策略调度进程/线程之间有什么区别。

提前致谢!!

更新:看到从here下载的rtlinux书中使用的相同命令:页码:7

The resulting object binary must be inserted into the kernel, where it will be executed by RTLinux.
Use the command 'rtlinux' (you need to be the 'root' to do so).
$ rtlinux start hello

1 个答案:

答案 0 :(得分:1)

由于RTLinux使用微内核架构,它允许您绕过常规Linux内核引入的任何延迟。考虑这个草图:

 ----- ----- -----
| App | App | App |                      (1)
 ----------------- --------- ---------
| Linux (RTL App) | RTL App | RTL App |  (2)
 -------------------------------------
|               RTLinux               |
 -------------------------------------
|                  HW                 |
 -------------------------------------

使用Linux的FIFO调度程序安排程序时,它将在第(1)层运行。 Linux内核本身是RTLinux调度程序中最低(通常)优先级的“进程”。

但是当您将程序编译为RTLinux模块并在第(2)层运行时,它可以在收到中断时以最小的延迟抢占Linux内核。

注意:据我所知,RTLinux不再被积极开发。请考虑查看XenomaiPREEMPT_RT补丁集。