本文介绍Godson32I开发系统的光盘内容和软件使用说明。
1. 光盘内容
2. 在开发板上运行Linux系统
2.1 使用DOM盘
2.2 使用NFS
3. 建立开发环境
3.1 GCC工具链安装要求
3.2 安装过程
——————————————————————————-
1. 光盘内容
Godson32I开发系统配备的光盘,主要包含下面内容:
(1) \GS32I_datasheet-confidential.pdf 处理器数据手册
(2) \BootLoader 包括BootLoader的二进制代码及源代码
(3) \Debug-tools 辅助调试底层软件的工具软件
(4) \toolchain GCC工具链
(5) \Linux Linux内核源代码,以及根文件系统发行包
(6) \utils 一些工具软件
2. 在开发板上运行Linux系统
在光盘的\Linux目录下存放了在开发板上运行Linux操作系统的全部二进制文件。
http://www.linux-mips.org/ 上面详细介绍了Linux到MIPS平台的移植,下面的介绍也是基于其中的内容。
Linux系统的启动过程可以分为两个部分:核心的启动,和根文件系统的启动。
开发板上的龙芯BIOS支持从TFTP服务器(通过以太网),或者IDE设备(本地硬盘或者DOM盘),获取Linux核心映像文件执行(ELF格式)。因此,可以将编译好的Linux核心
(vmlinux,或者zImage),复制到IDE设备(主分区,EXT2文件系统)的/blx目录下,或复制到TFTP服务器的根目录,供BIOS下载核心执行。
TFTP服务软件有Windows版本,也有Linux版本,在网上可以很容易获取和安装。
Linux核心执行到最后,将会挂接根文件系统。根文件系统的位置通过启动核心时的命令行参数指定,可以在BIOS中配置,例如使用root=/dev/hda1,或root=192.168.0.1:/home/nfsroot/godson32i。
关于如何配置龙芯BIOS可以参考光盘根目录中的BIOS使用手册。
下面介绍Linux根文件系统的安装。
根文件系统以压缩方式存放在光盘的\binarycode\dist+XWindow目录下,在使用需要解开到Linux根设备(本地IDE或者NFSROOT)中。其中包含了X Window窗口系统。
2.1 使用本地IDE设备存放根文件系统
如果开发板从本地IDE设备(硬盘或者DOM盘)读取Linux核心和根文件系统,需要满足下述要求:
· 硬盘/DOM盘的第一个分区必须格式化为EXT2文件系统,存放根文件系统;
· Linux核心映像文件必须放置到此分区的/blx目录,才能被BIOS找到;
· 硬盘/DOM盘在装入根文件系统后,被正确连接到开发板。
制作用于在开发板启动Linux的硬盘,简单步骤如下所述:
1. 将硬盘连接到一台Linux PC机,使用fdisk, mke2fs等命令在其第一个分区建立EXT2
文件系统;
2. 使用mount命令将该分区挂接到PC机的某目录,如: # mount /dev/hdc1 /mnt/myhd
3. 将光盘中的Linux根文件系统压缩包解开到硬盘根目录,如
# cd /mnt/myhd
# (假定压缩包已从光盘复制到/tmp目录)
# tar xzvf /tmp/NC-GS32I-TVIA-4M-0.6.tar.gz
# cd /tmp; umount /mnt/myhd
4. 将该硬盘连接到开发板,启动后确保BIOS配置正确,就可以启动Linux了。
Linux的启动过程在串口控制台或者显示器上都可以看到。详细的启动信息在串口控制台都可以看到。
2.2 使用NFS存放根文件系统
光盘中提供的Linux核心映像都支持NFS文件系统,允许将其挂接为根。因此也可以将Linux根文件系统放到NFS服务器,允许nfs client加载。
可以按照如下步骤设置NFS服务器:
1. 为开发板Linux发行包创建根目录,一般为/home/nfsroot/godson32i;
2. 使用tar命令将压缩的发行包(如NC-GS32I-TVIA-4M-0.6.tar.gz)解压到此目录;
3. 配置NFS服务器,将/home/nfsroot/godson32i导出。这样配置完成后,重新启动NFS服务即可使用。
NFS服务器软件,在Linux下安装了nfs-utils、portmap即可使用,通过/etc/exports文件配置导出目录;在Windows 2003下可以使用微软的SFU套件。具体的配置请参考相关资料。
3. 建立开发环境
光盘中提供了一套基于GCC3.2的交叉编译工具链,用来编译Linux核心、busybox、XFree86,也可以用来编译用户自己的应用软件甚至操作系统。
3.1 GCC工具链安装要求
安装光盘中的GCC工具链,需要系统上安装有RedHat 8.0或者9.0,安装有For X86体系的GCC工具。
3.2 安装过程
开发板自带的工具链的安装非常简单,只需要以root身份登录,到根目录(/)下使用tar命令展开光盘\toolchain\目录下的文件gcc-3.2.tgz.tgz。
这样,工具链将被安装到/usr/tools-trad目录下,然后将/usr/tools-trad/bin目录添加到每个开发用户的默认路径(环境变量$PATH),就可以使用了。
3.3 使用交叉编译工具
如3.2建立好编译环境之后,就可以以非root用户登录Linux开发主机,编写“hello world”程序试验了。步骤如下:
1. 使用VI等编辑工具编写如下的hello.c:
#include
int main( int argc, char *argv[]){
printf(“Hello world.\n”);
return 0;
}
2. 使用mipsel-linux-gcc -Wall -o hello hello.c命令编译,生成了目标文件hello。此时如果使用file命令查看hello,可以看到它是面向MIPS体系结构的可执行文件。
3. 启动开发板,进入Linux,下载hello文件到本地运行,就可以看到其运行结果了。此开发工具的使用方法和普通GCC相同,只是生成的代码针对MIPS体系结构处理器。