qemu仿真执行uboot和barebox

先安装qemu:

apt-get install qemu-system

交叉编译器可以选择友善之臂:http://arm9download.cncncn.com/mini2440/linux/arm-linux-gcc-4.4.3-20100728.tar.gz

下载下来后解压缩,并将bin文件夹路径添加到.bashrc中或者/etc/profile中。

嵌入式系统下通常需要有bootloader来引导linux内核,常见的bootloader有:Redboot,uboot,Barebox

维基百科有一篇对bootloader进行比较的文章,地址:http://en.wikipedia.org/wiki/Comparison_of_boot_loaders

uboot是当前最流行的bootloader,支持硬件最丰富,功能最强大。

Barebox原名uboot-v2,是在uboot源代码基础上改造成类似于linux内核源代码的形式,对习惯linux内核源码的人来说可能会感觉用起来得心应手。

本文中选择versatilepb来进行仿真,该开发板用户手册地址:http://infocenter.arm.com/help/topic/com.arm.doc.dui0224i/index.html

先用qemu仿真来执行uboot:

下载uboot:ftp://ftp.denx.de/pub/u-boot/u-boot-2010.06.tar.bz2

然后执行下面命令进行配置和编译:

make versatilepb_config
make 

 再用qemu来进行仿真:

qemu-system-arm -M versatilepb -nographic -kernel u-boot.bin

接下来用qemu方针来执行barebox,下载地址:http://barebox.org/download/barebox-2014.04.0.tar.bz2

下载下来后进行解压缩,进入到解压后的文件夹。

执行配置和编译:

make ARCH=arm versatilepb_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-

再用qemu来进行方针:

qemu-system-arm -M versatilepb -nographic -kernel barebox.bin

 类似地,linux内核也可以用qemu仿真,执行方式和barebox类似,但是因为编译需要的时间比较长,我就不再详细说明了。

原文地址:https://www.cnblogs.com/qiaoqiao2003/p/3754851.html