Chinaunix首页 | 论坛 | 博客
  • 博客访问: 260345
  • 博文数量: 86
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 398
  • 用 户 组: 普通用户
  • 注册时间: 2014-09-27 15:56
文章存档

2017年(3)

2015年(21)

2014年(62)

我的朋友

分类: LINUX

2014-09-27 17:31:27

平台和工具说明:

硬件平台:AM3359开发板

操作系统:Linux – Ubuntu 12.04

交叉编译版本::arm-none-linux-gnueabi-gcc 4.7.3


一、准备源码包

1.   xenomai官网下载xenomai源码包xenomai-2.6.2.1tar.bz2。将xenomai-2.6.2.1.tar.bz2和内核源码linux-3.2.21.tar.bz2放到同一目录下。我把它们放在home/ljl/am3359目录下。

2.   打开终端进入该目录并解压源码包

home/ljl/am3359# tar xvf linux-3.2.21.tar.bz2

home/ljl/am3359# tar xvf xenomai-2.6.2.1.tar.bz2

 

二、Linux内核打上xenomai补丁

    方法一:

    在终端执行如下命令

home/ljl/am3359# 

xenomai-2.6.2.1/scripts/prepare-kernel.sh --arch=arm --linux=linux-3.2.21

    如果prepare-kernel.sh成功运行,会自动选择合适的I-pipe patch 。默认选择了如

    I-pipe patch,然后按直接回车。


    如果出现patch:未找到命令,请尝试使用命令sudo apt-get install patch来安装

    patch命令。看到如下信息说明补丁已经打上去了。

    


方法二:

在当前目录下新建脚本文件patch_kernel.sh脚本文件,把一下代码复制到脚本中。

点击(此处)折叠或打开

  1. #! /bin/bash
  2. echo "starting patch...."
  3. curdir=`pwd`
  4. XENOMAI_ROOT=$curdir/xenomai-2.6.2.1
  5. LINUX_TREE=$curdir/linux-3.2.21
  6. $XENOMAI_ROOT/scripts/prepare-kernel.sh --linux=$LINUX_TREE --arch=arm

运行该脚本,成功运行脚本后,同样会自动选择合适的I-pipe patch,然后按直接回车。

 

三、配置、编译Linux内核

1.   进入到linux-3.2.21目录下,执行make menuconfig。在顶层内核配置菜单中会多出一个“Real-time sub system-à”菜单选项。

如果菜单上方提示xenomai的配置和当前内核的配置参数有冲突,可按照提示关闭那些冲突的选项,直到不在出现冲突。

2.   xenomai配置做如下修改:

Real-time sub system-à

            Interfaces ---à

                    <*> Native API-à

                            [*] Interrupts

3.   编译内核,将内核镜像下载到板子上运行系统。

4.   测试Xenomai是否成功安装Linux系统中。

内核启动log出现如下信息说明安装成功。

          

图中应当是你说使用的平台架构,如armi86等。如果内核启动失败或者log信息中提示有错误。请参考xenomai-2.6.2.1/doc/generated/pdf目录下的TROUBLESHOOTING.pdf


四、配置、编译和安装xenomai源码

1.   home/ljl/am3359目录下新建build_xenomai.sh脚本,并进入到该目录。脚本内容如下:

           

点击(此处)折叠或打开

  1. #! /bin/bash
  2. curdir=`pwd`
  3. if [ -d xenomai_install ]; then
  4.     rm -rf $curdir/xenomai_install
  5. fi
  6. mkdir $curdir/xenomai_install && cd $curdir/xenomai-2.6.2.1

  7. ./configure CFLAGS="-march=armv7-a -mfpu=vfp3" LDFLAGS="-march=armv7-a -mfpu=vfp3" \
  8. --build=i686-pc-linux-gnu --host=arm-none-linux-gnueabi
  9. make DESTDIR=$curdir/xenomai_install install

2.   运行脚本后会生产一个xenomai_install目录,里面有devusr目录。把xenomai_install/dev/目录下的所有文件拷贝到文件系统的/dev/目录下。把xenomai_install/usr/目录下的整个目录拷贝到文件系统的/usr/目录下。

3.   运行Xenomai的应用程序来测试是否安装成功,可运行二进制文件在/usr/xenomai/bin/下。

           
           运行latency测试程序,测试结果如下:
       

            然后可以尝试使用xeno-test来测试系统。
             

五、说明

1.   有关于更多的Xenomai信息,可查看一下这些文件。

           


2.   Xenomai2.2.21支持哪些版本的Linux内核,哪些平台?Xenomai-2.2.21/ksrc/arch/目录可知,它支持armx86powerpc等平台。

我们在进入Xenomai-2.2.21/ksrc/arch/patches目录,发现有下面几个补丁。

由此可看出对应arm平台,它支持3.2.213.4.63.5.3版本的Linux内核。

 

以上仅供参考,谢谢!



阅读(9118) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Linux mint 17下安装配置NFS服务器

给主人留下些什么吧!~~