免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1158 | 回复: 0
打印 上一主题 下一主题

rtai-3.1编译安装指南(基于rhas4) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-23 00:56 |只看该作者 |倒序浏览

       
       
       
       
       
       
1
解压缩linux内核及rtai源码
[root@haitao-desktop
~]# cd /usr/src
[root@haitao-desktop
src]# tar jxvf linux-2.6.7.tar.bz2
[root@haitao-desktop
src]# tar jxvf rtai-3.1.tar.bz2
2
针对linux-2.6.7打rtai-3.1补丁
[root@haitao-desktop
src]# cd linux-2.6.7
[root@haitao-desktop
linux-2.6.7]# patch -p1
patching
file Documentation/adeos.txt
patching
file Makefile
patching
file adeos/Kconfig
patching
file adeos/Makefile
patching
file adeos/generic.c
patching
file adeos/x86.c
patching
file arch/i386/Kconfig
patching
file arch/i386/kernel/Makefile
patching
file arch/i386/kernel/adeos.c
patching
file arch/i386/kernel/apic.c
patching
file arch/i386/kernel/cpu/mcheck/p4.c
patching
file arch/i386/kernel/entry.S
patching
file arch/i386/kernel/i386_ksyms.c
patching
file arch/i386/kernel/i8259.c
patching
file arch/i386/kernel/io_apic.c
patching
file arch/i386/kernel/irq.c
patching
file arch/i386/kernel/nmi.c
patching
file arch/i386/kernel/process.c
patching
file arch/i386/kernel/signal.c
patching
file arch/i386/kernel/smp.c
patching
file arch/i386/kernel/smpboot.c
patching
file arch/i386/kernel/time.c
patching
file arch/i386/kernel/timers/timer_tsc.c
patching
file arch/i386/kernel/traps.c
patching
file arch/i386/mm/fault.c
patching
file include/asm-i386/adeos.h
patching
file include/asm-i386/io_apic.h
patching
file include/asm-i386/mach-default/do_timer.h
patching
file include/asm-i386/mach-default/irq_vectors.h
patching
file include/asm-i386/mach-pc9800/do_timer.h
patching
file include/asm-i386/mach-pc9800/irq_vectors.h
patching
file include/asm-i386/mach-visws/do_timer.h
patching
file include/asm-i386/mach-visws/irq_vectors.h
patching
file include/asm-i386/smp.h
patching
file include/asm-i386/system.h
patching
file include/linux/adeos.h
patching
file include/linux/init_task.h
patching
file include/linux/preempt.h
patching
file include/linux/sched.h
patching
file init/main.c
patching
file kernel/Makefile
patching
file kernel/adeos.c
patching
file kernel/exit.c
patching
file kernel/fork.c
patching
file kernel/panic.c
patching
file kernel/printk.c
patching
file kernel/sched.c
patching
file kernel/signal.c
patching
file kernel/sysctl.c
要分析x86系统上的RTAI实现,patch对于我们来说是最好的一个入口点了。
3、配置内核
[root@haitao-desktop
linux-2.6.7]# cp /boot/config-2.6.9-22.EL .config
直接将rhas4发行版的config文件复制过来,这样省了我们不少的配置工作,后面就只要在此基础上进行少量的配置修改便可。
[root@haitao-desktop
linux-2.6.7]# make menuconfig
Loadable
module support

       

  • Enable loadble module support
           

  •   Module unloading
           

  •                 Forced module unloading
            [
    ]         Module versioning support (EXPERIMENTAL)
           

  •   Automatic kernel module loading
    Processor
    type and features

           

  • Preemptible Kernel
            [
    ] Use register arguments (EXPERIMENTAL)
    Device
    drivers -> Character devices

            [M]
    Enable Real Time Clock Support
    Adeos
    Support

           
    Adeos support (NEW)
    Kernel
    hacking

            [
    ] Compile the kernel with frame pointers
    4、编译Linux内核
    [root@haitao-desktop
    linux-2.6.7]# make bzImage       
    [root@haitao-desktop
    linux-2.6.7]# make modules
    [root@haitao-desktop
    linux-2.6.7]# make modules_install
    呵呵,以上几步工作可是最费时的,还是泡杯咖啡、打开音乐先享受一番了;当然,要是你有受虐倾向的话,强烈建议死死盯着显示屏,包你满意
    : p
    5、安装新编译的linux内核
    [root@haitao-desktop
    linux-2.6.7]# make install
    这一步可算是劳苦功高了,看看/boot目录下是不是一切都为我们准备好了,包括initrd-2.6.7-adeos.img、vmlinuz-2.6.7-adeos和System.map-2.6.7-adeos。而且,grub引导项也自动为我们添加了,当然对于引导项后面还要作一点小的修改。
    [root@haitao-desktop
    linux-2.6.7]# df -h     
    Filesystem
               容量  已用 可用 已用%
    挂载点
    /dev/sda1
                9.7G  5.3G  3.9G  58%         /
    none
                    125M   0  125M           0%                 /dev/shm
    /dev/sda2
                4.2G  160M  3.9G   4%         /home
    可知,/目录的挂载点是/dev/sda1,这在下面的引导项中root要用到。
    [root@haitao-desktop
    linux-2.6.7]# vi /boot/grub/grub.conf
    在make
    install之后生成了如下的引导项:
    title
    Red Hat Enterprise Linux AS (2.6.7-adeos)
            root
    (hd0,0)
            kernel
    /boot/vmlinuz-2.6.7-adeos ro root=LABEL=/ rhgb quiet
            initrd
    /boot/initrd-2.6.7-adeos.img
    将其修改为:(区别在root处)
    title
    Red Hat Enterprise Linux AS (2.6.7-adeos)
            root
    (hd0,0)
            kernel
    /boot/vmlinuz-2.6.7-adeos ro root=/dev/sda1
            initrd
    /boot/initrd-2.6.7-adeos.img
    6、重启以使用新编译内核
    [root@haitao-desktop
    linux-2.6.7]# reboot
    引导时,选择“Red
    Hat Enterprise Linux AS
    (2.6.7-adeos)”项,呵呵,激动人心的时刻到来了,千万不要panic了,没关系,即便出现了我们再尝试解决问题就是。然而结果是好的,顺利进入系统之后,运行如下命令:
    [root@haitao-desktop
    ~]# uname –a
    Linux
    haitao-desktop 2.6.7-adeos #1 Wed Apr 23 03:09:26 CST 2008 i686
    athlon i386 GNU/Linux
    可见现在已经是使用我们新编译的内核2.6.7-adeos,当然在VMware里日期时间有些问题,懒得管了,继续下面我们的RTAI编译安装吧!
    7、配置RTAI
    [root@haitao-desktop
    rtai-3.1]# make menuconfig
    General
    (/usr/src/linux-2.6.7)
    Linux Source tree

  • Enable source compatibility mode

  • Enable extended configuration mode
    一定要记得,linux源码树位置一定是指向自己新编译的内核/usr/src/linux-2.6.7,其它的就使用缺省配置吧,以后确实要用到什么,再重新配置就可以。记得最后要保存对配置文件所做的修改。
    8、编译RTAI
    [root@haitao-desktop
    rtai-3.1]# make
    9、安装RTAI
    [root@haitao-desktop
    rtai-3.1]# make install
    安装目录有make
    menuconfig中已经指定了,我们使用的是缺省的/usr/realtime目录。
    10、测试RTAI
    [root@haitao-desktop
    rtai-3.1]# cd /usr/realtime/testsuite/kern/latency
    [root@haitao-desktop
    latency]# ./run
    [root@haitao-desktop
    latency]# ls
    display
    latency_rt.ko  run
    [root@haitao-desktop
    latency]# ./run
    *
    *
    *
    Type ^C to stop this application.
    *
    *
    ##
    RTAI latency calibration tool ##
    #
    period = 100000 (ns)
    #
    avrgtime = 1 (s)
    #
    check overall worst case
    #
    do not use the FPU
    #
    start the timer
    #
    timer_mode is oneshot
    2008/04/23
    08:00:06   min:    -4498    max: 15130864    average:   154531
    2008/04/23
    08:00:07   min:    -4498    max: 15749943    average:   161019
    2008/04/23
    08:00:08   min:    -4498    max: 15749943    average:   131757
    2008/04/23
    08:00:09   min:    -4498    max: 15749943    average:   100065
    2008/04/23
    08:00:10   min:    -4498    max: 15749943    average:   112296
    2008/04/23
    08:00:11   min:    -4498    max: 15749943    average:   134921
    2008/04/23
    08:00:12   min:    -4498    max: 15749943    average:   150379
    2008/04/23
    08:00:12   min:    -4498    max: 15749943    average:   150379
    梦寐以久的RTAI是不是就跑起来了,是时候站起身来活动活动了,在电脑前面呆久了可不好
    : - )
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/27708/showart_573299.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP