初在arm开发板测试经历
测试环境: pc1——arm开发板——pc2,pc2作为nfs server,arm板作为nfs client,之间通过无线连接。然后在nfs server上创建一个32G的块文件用来安装操作系统。通过linux的mass storage. gadget 使的arm板能作为pc1的一个usb盘访问。测试步骤: 1. 通过虚拟终端将nfs serve
测试环境:
pc1——arm开发板——pc2,pc2作为nfs server,arm板作为nfs client,之间通过无线连接。然后在nfs server上创建一个32G的块文件用来安装操作系统。通过linux的mass storage. gadget 使的arm板能作为pc1的一个usb盘访问。
测试步骤:
1. 通过虚拟终端将nfs server上的e盘挂载到arm板上,命令:mount -t nfs -o nolock 192.168.1.100:/e /home/nfsroot 前提:将无线网络配置好,后面会讲到配置无限网卡的时候出现的问题。
2. 在/home/nfsroot目录下创建一个约32G块文件,命令:dd if=/dev/zero of=/home/nfsroot/system.img bs=10M count=3200
然后用mdfs命令将其格式成ntfs格式:mkfs -t ntfs /home/nfsroot/system.img
还有一种快速方式创建块文件的方法就是:将一个32G的u盘插入到linux系统,然后通过dd if=/dev/sdb1 of=/home/nfsroot/system.img 然后再格式化。
3. 在arm板上加载g_mass_storage.ko 模块,命令:modprobe g_mass_storage file=/home/nfsroot/system.img 或 insmod g_mass_storage.ko file=/home/nfsroot/system.img
4. 3完成后,在pc1上就可以看到一个接近32G的u盘了,其实就是pc2上 e:/system.img这个虚拟快文件。这时开始向这个“u盘”安装操作系统,用winpe或者wintousb都行。 g_mass_storage的写速度大概是1.7MB/s左右,所以写一个win8系统或者win7系统会花很长的时间,ubuntu和winpe会快很多。
5. 安装操作系统完成之后就从“u盘”启动系统。会比直接在pc上插u盘启动操作系统要慢很多。
测试问题:
1.主要问题是交叉编译网卡驱动,需要把linux-at91/ 的makefile做些修改,内核构建系统默认内核是本地编译,即编译的内核是运行在与宿主系统相同的体系架构上 。交叉编译的话,需要设置两个变量:ARCH和CROSS_COMPILE。其中:
ARCH指明目标体系架构,即编译好的内核运行在什么平台上,如x86、arm或mips等。
CROSS_COMPILE指定使用的交叉编译器的前缀。对于我们的交叉工具链来说,其前缀是arm-none-linux-gnueabi-。
有三种方式可以给这定义这两个变量:
a.可比如通过在环境变量中定义ARCH、CROSS_COMPILE;
b.每次执行make时,通过命名行为这两个变量的赋值:
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-;
c.也可以直接更改顶层Makefile:
ARCH ?= $(SUBARCH) 改成ARCH ?= arm
CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%) 改成CROSS_COMPILE ?= arm-none-linux-gnueabi-
2.http://blog.csdn.net/w616589292/article/details/48715333 上讲述的错误4,原因和解决方案上面介绍的很清楚。
3. 测试用的内核源码,以及交叉编译工具,还有虚拟机都放在了百度云盘中。
更多推荐
所有评论(0)