必要なもの

参考にしたもの

インストール手順

  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
    gccがインストールされていない場合、エラーになる。その場合はgccをインストールすること。gccのインストール
    (〜上記のつづき)
    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 options (ACPI, APM)
    	  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 外す 
             o Parallel port support 外す
             o Fusion MPT device support 全部外す
             o Machintosh device drivers 外す
             o Character devices
                   Watchdog Cards 外す
    		Sony Vaio Programmable I/O Control Device support 外す
             o USB support 外す
             o DMA Engine support 外す
             o EDAC 外す
    	  o Virtualization 外す
  4. コンパイル・インストール
    # make
    # make modules_install
    # make install
  5. リブート
  6. BIOSの設定
    Integrated Devices
           Diskette Controller ... Off
    	Embedded Gb NIC ... Enabled without PXE
           USB Controller ... Off
    CPU Information
    	Logical Processor ... Enabled → Disabled
    	Adjacent Cache Line Prefetch ... Enabled → Disabled
    	Hardware Prefetcher ... Enabled → Disabled
    Report Keyboard Errors ... Do Not Report
    
  7. BIOSの設定終了後、リブート続行。grub の画面で、2.6.20.21を選択。(2.6.20-1.2320.fc5等は、Fedora Core に最初から入っているものなので、選択しない)
  8. RTAI 本体のコンパイル・インストール
    # cd /usr/src
    # ln -s linux-2.6.20.21 linux (既にシンボリックリンクが存在する場合は、一度消してからリンクを張ること)
    # cd rtai-3.6.1
    # make menuconfig
    Machine (x86) ---> Number of CPUs を 2→1 に変更
    # make
    # make install
  9. テストプログラムの実行
    # 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|      -2023|      -2023|        -51|      16120|      16120|          0
    RTD|      -2014|      -2023|        -58|      16010|      16120|          0
    RTD|      -2014|      -2023|        -89|      15956|      16120|          0
    RTD|      -2014|      -2023|        -51|      16202|      16202|          0
    RTD|      -2014|      -2023|        -98|      16056|      16202|          0
    RTD|      -2014|      -2023|        -65|      16066|      16202|          0
    RTD|      -2014|      -2023|        -97|      16082|      16202|          0
    RTD|      -2014|      -2023|        -61|      16065|      16202|          0
    RTD|      -2014|      -2023|        -90|      15183|      16202|          0
    RTD|      -2014|      -2023|        -66|      16184|      16202|          0
    RTD|      -2014|      -2023|       -106|      16059|      16202|          0
    RTD|      -2014|      -2023|        -62|      16092|      16202|          0
    RTD|      -2014|      -2023|        -78|      16133|      16202|          0
    RTD|      -2014|      -2023|        -57|      16077|      16202|          0
    RTD|      -2014|      -2023|        -96|      15986|      16202|          0
    RTD|      -2014|      -2023|        -73|      16020|      16202|          0
    RTD|      -2014|      -2023|        -90|      15986|      16202|          0
    RTD|      -2014|      -2023|        -57|      15925|      16202|          0
    RTD|      -2014|      -2023|       -100|      16069|      16202|          0
    RTD|      -2108|      -2108|        -71|      16020|      16202|          0
    RTD|      -2014|      -2108|        -82|      16149|      16202|          0
    RTH|    lat min|    ovl min|    lat avg|    lat max|    ovl max|   overruns
    RTD|      -2014|      -2108|        -77|      16140|      16202|          0
    RTD|      -2014|      -2108|        -81|      16059|      16202|          0
    RTD|      -2014|      -2108|        -81|      16059|      16202|          0
    
    overruns が 0 になっていればOK.
  10. /etc/rc.local に以下、追記
    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
  11. 一般ユーザが実験できるようにする
    # chmod u+s /sbin/insmod
    # chmod u+s /sbin/rmmod 
    # chmod u+s /bin/mknod
    # vi /etc/sudoers
    ALL     ALL=(ALL)       NOPASSWD: ALL
    (1行追加)

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-06-22 (火) 12:16:14