RTAI
RTAI
- https://www.rtai.org/RTAILAB/RTAI-TARGET-HOWTO.txt
- http://rtai.dk/cgi-bin/gratiswiki.pl
- http://www.captain.at/programming/rtai/examples.php
- http://rtai.dk/cgi-bin/gratiswiki.pl?Makefile_For_Kernel_2.6
Get RTAI from:
cd /usr/local/src
mkdir rtai-cvs
cd !$
cvs -d:pserver:anonymous@cvs.gna.org:/cvs/rtai login
cvs -d:pserver:anonymous@cvs.gna.org:/cvs/rtai co magma
cd magma
Get the kernel 2.6.10 from:
cd /usr/src
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.10.tar.bz2
tar xjvf linux-2.6.10.tar.bz2
rm linux
ln -s linux-2.6.10 linux
cd linux
patch -p1 </usr/local/src/rtai-cvs/magma/base/arch/x86_64/patches/hal-linux-2.6.10-x86_64-r10c1.patch
Compile the kernel and reboot with it.
Compiling rtai:
cd /usr/local/src/rtai-cvs/magma
make
Kernel 2.6
http://www.captain.at/programming/kernel/
Download kernel 2.6.17
from kernel.org.
Download rtai-3.4
from www.rtai.org
.
Compile kernel and boot the new kernel. Working config for my system you can find Kernel-conf-rtai-2.6.17.txt .
Now patch RTAI into the kernel:
cd /usr/src/linux
patch -p1 -b < /usr/local/src/rtai-3.4/base/arch/i386/patches/hal-linux-2.6.17-i386-1.3-08.patch
make oldconfig
make
make install
make modules_install
And boot the new kernel. I use the following parameters:
kernel (hd0,0)/vmlinuz-2.6.17 root=/dev/hda2 vga=0x317 console=ttyS0,115200 console=tty0 resume=/dev/hdb2 splash=silent showopts
Compile the rtai with:
cd /usr/local/src/rtai-3.4/
make
make install
Now edit your PATH environment and add /usr/realtime/bin to it.
Now it is necessary to load the kernel modules type. At first we define some parameters for the rtai load script:
cp idefix:/usr/local/src/rtai-3.4/testsuite/kern/latency/runinfo /root/.runinfo
insmod /usr/realtime/modules/rtai_hal.ko
insmod /usr/realtime/modules/rtai_up.ko # or rtai_lxrt.ko for userspace
insmod /usr/realtime/modules/rtai_fifos.ko
insmod /usr/realtime/modules/rtai_sem.ko
insmod /usr/realtime/modules/rtai_mbx.ko
insmod /usr/realtime/modules/rtai_msg.ko
insmod /usr/realtime/modules/rtai_netrpc.ko ThisNode="127.0.0.1"
insmod /usr/realtime/modules/rtai_shm.ko
insmod /usr/realtime/modules/rtai_leds.ko
insmod /usr/realtime/modules/rtai_signal.ko
insmod /usr/realtime/modules/rtai_tasklets.ko
To test if RTAI is running we can do the following:
cd /usr/realtime/testsuite/kern/latency/
./run