位置:51电子网 » 技术资料 » 其它综合

在MIPS开发板上建立Linux系统及开发环境

发布时间:2007/8/30 0:00:00 访问次数:524

来源:21IC中国电子网作者:李杰 贺占庄


作者Email: jie_yi@sohu.com


介绍了利用已有的MIPS版Linux源文件包,编译可运行的Linux内核的方式;讨论了在主机上建立相关服务器,通过NFS服务从主机上下载内核,在无盘开发板上启动Linux的方法。


关键词:MIPS NFS 启动Linux


一、引言


大多数基于MIPS处理器的平台上都没有提供软、硬盘接口,一般情况下,也没有在板载Flash里烧入可使用的操作系统。没有操作系统,用户的使用就会受到很多限制,应用程序的开发、调试过程就会变得相当复杂。因此,建立合适的操作系统及开发环境,可以方便用户,简化开发调试过程。本文以RedHat Linux 为例,说明在RM7000A处理器无盘开发板上建立Linux系统的方法。所用硬件设备:带有10/100Mb以太网接口和用于显示的串口的开发板、装有Redhat Linux 9.0的主机(Host PC)。


二、编译内核


l准备工作


编译前,需要有MIPS处理器版的Linux源文件包,简单的方法是从MIPS公司或者SGI公司等的FTP服务器上下载(ftp://ftp.mips.com/pub/linux或ftp://oss.sgi.com或ftp://ftp.linux-mips.org/linux/mips )。另外,由于所用主机是x86体系,要编译在MIPS处理器上运行的内核,需要有能在x86处理器上工作的交叉编译工具;为了使Linux启动后,可以在开发板上直接开发应用程序,还需要MIPS版的NFS根目录结构包,它包括了Linux运行需要的目录结构、配置文件、工具等等。同样,根目录结构包和工具包也可在上述网站的服务器上下载。下载根目录结构包和交叉编译工具时,要注意选择与开发板设置的数据格式(高序Big Endian或低序Little Endian)一致的版本。


获得源文件包、根目录结构包文件后,将其解压至指定目录,如分别指定为:/tftpboot和/tftpboot/mips,包内文件和子目录就全部展开在相应目录中;


对于rpm格式的工具包文件,可在终端窗口用命令行方式展开:


rpm –ihv toolchain-mips-*.rpm


交叉编译工具自动安装到/usr/tools的目录下。进入/tftpboot/linux目录,打开Makefile文件,更改以下语句为:


ARCH=mips


CROSS_COMPILE=/usr/tools/bin/mips-linux-


l配置工作


接下来,是对编译能否顺利通过至关重要的配置过程。所谓配置,就是根据开发板具体情况,只选择必需选项,使重编译的内核既提供所需要的功能,又占据最小存储空间。由于Linux系统各功能模块之间存在不同程度的依赖关系,配置过程中有可能会破坏这些关联;因此配置完成后不一定能通过关联检测,可能需要反复地进行配置取舍。


配置过程需要注意:


1.数据格式与开发板的设置和交叉编译工具一致,才能生成正确的内核;


2.设置正确的处理器,以及相近的开发板类型;


3.需提供对标准串口的支持和通过串口显示的功能;


4.由于编译内核的主机不是MIPS处理器,所以一定要设置CROSSCOMPILE项;


5.因为要通过网络下载内核来启动,对PCI设备、网络协议、网络设备的支持必不可少,此外,在网络文件系统中还要选择NFS_FS和ROOT_NFS选项;


以上为配置基本选项,其余功能可根据开发板具体情况取舍。配置步骤如下:


cd /tftpboot/linux-- 进入目录/tftpboot/linux


make config -- 进行行命令配置


make dep-- 关联检测


l编译内核


如果无出错提示,表明配置正确,可以编译内核:


make boot


编译完成后在/tftpboot/linux和/tftpboot/linux/arch/mips/boot中都会出现不同格式的内核映像文件vmlinux、及System.map文件。


三、设置主机服务


1.设置TFTP服务器


在RedHat Linux安装CD3中找到tftp文件包:tftp-0.32-4.i386.rpm,在终端输入:rpm –ihv tftp-0.32-4.i386.rpm,系统自动安装好tftp服务器;


cd /etc/xinetd.d-- 进入目录/etc/xinetd.d


vi tftp--只有在安装了tftp服务后,才会出现tftp文件


修改其中disable和server_args项,其余可保持不变。以下为一个完整的tftp文件:


Service tftp


{


socket_type= dgram


protocol = udp


wait= yes


user= root


server=/usr/sbin/in.tftpd


server_args= -s /tftpboot/linux-- 根据需要设置tftp服务默认目录


disable= no -- 默认为yes,应修改成no


per_source= 11


cps= 100 2

<

来源:21IC中国电子网作者:李杰 贺占庄


作者Email: jie_yi@sohu.com


介绍了利用已有的MIPS版Linux源文件包,编译可运行的Linux内核的方式;讨论了在主机上建立相关服务器,通过NFS服务从主机上下载内核,在无盘开发板上启动Linux的方法。


关键词:MIPS NFS 启动Linux


一、引言


大多数基于MIPS处理器的平台上都没有提供软、硬盘接口,一般情况下,也没有在板载Flash里烧入可使用的操作系统。没有操作系统,用户的使用就会受到很多限制,应用程序的开发、调试过程就会变得相当复杂。因此,建立合适的操作系统及开发环境,可以方便用户,简化开发调试过程。本文以RedHat Linux 为例,说明在RM7000A处理器无盘开发板上建立Linux系统的方法。所用硬件设备:带有10/100Mb以太网接口和用于显示的串口的开发板、装有Redhat Linux 9.0的主机(Host PC)。


二、编译内核


l准备工作


编译前,需要有MIPS处理器版的Linux源文件包,简单的方法是从MIPS公司或者SGI公司等的FTP服务器上下载(ftp://ftp.mips.com/pub/linux或ftp://oss.sgi.com或ftp://ftp.linux-mips.org/linux/mips )。另外,由于所用主机是x86体系,要编译在MIPS处理器上运行的内核,需要有能在x86处理器上工作的交叉编译工具;为了使Linux启动后,可以在开发板上直接开发应用程序,还需要MIPS版的NFS根目录结构包,它包括了Linux运行需要的目录结构、配置文件、工具等等。同样,根目录结构包和工具包也可在上述网站的服务器上下载。下载根目录结构包和交叉编译工具时,要注意选择与开发板设置的数据格式(高序Big Endian或低序Little Endian)一致的版本。


获得源文件包、根目录结构包文件后,将其解压至指定目录,如分别指定为:/tftpboot和/tftpboot/mips,包内文件和子目录就全部展开在相应目录中;


对于rpm格式的工具包文件,可在终端窗口用命令行方式展开:


rpm –ihv toolchain-mips-*.rpm


交叉编译工具自动安装到/usr/tools的目录下。进入/tftpboot/linux目录,打开Makefile文件,更改以下语句为:


ARCH=mips


CROSS_COMPILE=/usr/tools/bin/mips-linux-


l配置工作


接下来,是对编译能否顺利通过至关重要的配置过程。所谓配置,就是根据开发板具体情况,只选择必需选项,使重编译的内核既提供所需要的功能,又占据最小存储空间。由于Linux系统各功能模块之间存在不同程度的依赖关系,配置过程中有可能会破坏这些关联;因此配置完成后不一定能通过关联检测,可能需要反复地进行配置取舍。


配置过程需要注意:


1.数据格式与开发板的设置和交叉编译工具一致,才能生成正确的内核;


2.设置正确的处理器,以及相近的开发板类型;


3.需提供对标准串口的支持和通过串口显示的功能;


4.由于编译内核的主机不是MIPS处理器,所以一定要设置CROSSCOMPILE项;


5.因为要通过网络下载内核来启动,对PCI设备、网络协议、网络设备的支持必不可少,此外,在网络文件系统中还要选择NFS_FS和ROOT_NFS选项;


以上为配置基本选项,其余功能可根据开发板具体情况取舍。配置步骤如下:


cd /tftpboot/linux-- 进入目录/tftpboot/linux


make config -- 进行行命令配置


make dep-- 关联检测


l编译内核


如果无出错提示,表明配置正确,可以编译内核:


make boot


编译完成后在/tftpboot/linux和/tftpboot/linux/arch/mips/boot中都会出现不同格式的内核映像文件vmlinux、及System.map文件。


三、设置主机服务


1.设置TFTP服务器


在RedHat Linux安装CD3中找到tftp文件包:tftp-0.32-4.i386.rpm,在终端输入:rpm –ihv tftp-0.32-4.i386.rpm,系统自动安装好tftp服务器;


cd /etc/xinetd.d-- 进入目录/etc/xinetd.d


vi tftp--只有在安装了tftp服务后,才会出现tftp文件


修改其中disable和server_args项,其余可保持不变。以下为一个完整的tftp文件:


Service tftp


{


socket_type= dgram


protocol = udp


wait= yes


user= root


server=/usr/sbin/in.tftpd


server_args= -s /tftpboot/linux-- 根据需要设置tftp服务默认目录


disable= no -- 默认为yes,应修改成no


per_source= 11


cps= 100 2

<
相关IC型号

热门点击

 

推荐技术资料

罗盘误差及补偿
    造成罗盘误差的主要因素有传感器误差、其他磁材料干扰等。... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!