必要なもの

参考にしたもの

インストール手順

  1. linuxカーネルとRTAIのソースを /usr/src/ におく.
  2. ソースを展開してパッチをあてる
    # cd /usr/src
    # bunzip2 -c linux-2.6.20.21.tar.bz2 | tar xvf -
    # bunzip2 -c rtai-3.6.1.tar.bz2 | tar xvf -
    # cd linux-2.6.20.21
    # patch -p1 < ../rtai-3.6.1/base/arch/i386/patches/hal-linux-2.6.20.21-i386-1.12-03.patch
    patching file Makefile
    patching file arch/i386/Kconfig
    (略)
    patching file mm/mlock.c
    patching file mm/vmalloc.c
  3. カーネルパラメータの設定
    # cp /boot/config-2.6.20-1.2320.fc5 .config
    # make oldconfig
    (略)
    Interrupt pipeline (IPIPE) [Y/n/?] (NEW) (リターンキーを押す,計4箇所,全てデフォルトでリターンを押す)
    # make menuconfig (以下,順不同,要修正)
       * Lodable module support → Module versioning support を外す.(マニュアルに指示あり)
       * Processor type and features
             o Subarchtecture Type: PC-compatible
             o Processor family: Processor family : Pentium-4/Celeron(P4-based)/Pentium-4 M/older Xeon
    	  o Toshiba Laptop support 外す
    	  o Dell laptop support 外す
       * Bus options (PCI, PCMCIA, EISA, MCA, ISA) 
    	  o PCCard(PCMCIA/CardBus) support 外す
       * Power management support
    	  o ACPI Support 外す
    	  o APM BIOS Support 外す
    	  o CPU Frequency scaling 外す
       * Networking
             o IrDA 外す
             o Bluetooth 外す
    	  o Networking option
    		Network packet filtering framework (Netfilter) 外す
    		DDCP Configuration (EXPERIMENTAL) 外す
    		SCTP Configuration (EXPERIMENTAL) 外す
    		TIPC Configuration (EXPERIMENTAL) 外す
    		Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) 外す
    		DECnet: router support (EXPERIMENTAL) 外す
    		The IPX protocol 外す
    		Appletalk protocol support 外す
    		WAN route 外す
    		QoS and/or fair queueing 外す
    		Network testing 外す
       * Device Drivers
             o IEEE1394 外す
             o ISDN 外す
             o Telephony Support 外す
             o Sound 外す
             o Multimedia devices 3つ全て外す
             o MMC/SD Card support 外す 
    		Parallel port support 外す
    		Fusion MPT device support 全部外す
    		Machintosh device drivers 全部外す
    		Character devices
    			Watchdog Cards 外す
    			Sony Vaio Programmable I/O Control Device support 外す
    		USB support 外す(外れていると思ってた)
    		DMA Engine support 外す
             o EDAC 外す
    	  o Virtualization 外す
    • 編集結果

../RTAI/

[[./../RTAI/.config]]

&ref(): File not found: "../RTAI/" at page "RTAIのインストール";

&ref(): File not found: "RTAI/" at page "RTAIのインストール";

http://localhost/RTAI/

http://orren/RTAI/

http://orren/RTAI/

テスト

テスト

テスト:/RTAI/

  1. コンパイル・インストール
    # make
    # make modules_install
    # make install
  2. /etc/grub.conf を編集
  3. リブート

# make

/pre>

li>モジュールのインストール

pre>

# make modules_install

/pre>

font color="red">この手続きは後の make install に含まれているはずだが,再コンパイル後の make install では,モジュールがインストールされないことがあるので,明示的にインストールする方が無難.</font>

br>

br>

li>カーネル,test用プログラム等のインストール(この際に /etc/grub.conf にエントリが追加更新される)

pre>

# make install

/pre>

li>リブート.

li>RTAI のコンパイル

pre>

# cd /usr/src

# ln -s linux-2.6.19 linux (このシンボリックリンクがないと,make menuconfig がエラーになる)

# cd /usr/src/rtai-3.5

# make menuconfig Machine (x86) ---> Number of CPUs を 2→1 に変更

# make

# make install

/pre>

li>テストプログラムの実行

pre>

# cd /usr/realtime/testsuite/kern/latency/

# ./run

Type ^C to stop this application.

## RTAI latency calibration tool ##

# period = 100000 (ns)

# avrgtime = 1 (s)

# do not use the FPU

# start the timer

# timer_mode is oneshot

RTAI Testsuite - KERNEL latency (all data in nanoseconds) RTH| lat min| ovl min| lat avg| lat max| ovl max| overruns RTD| -1968| -1968| 537| 5877| 5877| 0 RTD| -1971| -1971| 702| 5797| 5877| 0 RTD| -1975| -1975| 540| 6363| 6363| 0 RTD| -1975| -1975| 746| 6714| 6714| 0 RTD| -1976| -1976| 503| 6072| 6714| 0 RTD| -1976| -1976| 503| 6072| 6714| 0

/pre>

font color="red">ACPI が有効になっていると overrunsが大量に出ることがある.その場合は /etc/grub.conf 中,カーネルパラメータで acpi=off を指定する.もしくは,カーネルのコンパイルオプションで,最初から ACPI を外しておいてもいいかもしれない</font>

br>

br>

li>リブート後,デバイスファイルが消えてしまうのに対処する(/usr/src/rtai-3.5/README.INSTALL に記載あり)<br> 以下を,/etc/rc.d/rc.local 最後に追記:

pre> if test \! -c /dev/rtai_shm; then

       mknod -m 666 /dev/rtai_shm c 10 254

fi for n in `seq 0 9`; do

       f=/dev/rtf$n
       if test \! -c $f; then
               mknod -m 666 $f c 150 $n
       fi

done

/pre>

li> TODO: freqresp


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS