qemu

来源:互联网 发布:尔湾安全知乎 编辑:程序博客网 时间:2024/06/01 10:49
qemu-system-arm选项:

qemu-system-arm -M vexpress-a9 -m 512M \
    -kernel /home/ivan/kernel_git/linux/arch/arm/boot/zImage \
    -nographic -append "console=ttyAMA0"
-M vexpress-a9 模拟vexpress-a9单板,你可以使用-M ?参数来获取该qemu版本支持的所有单板
-m 512M 单板运行物理内存512M
-kernel /home/ivan/kernel_git/linux/arch/arm/boot/zImage  告诉qemu单板运行内核镜像路径
-nographic 不使用图形化界面,只使用串口
-append "console=ttyAMA0" 内核启动参数,这里告诉内核vexpress单板运行,串口设备是哪个tty。


文件系统:
1.  创建rootfs目录(根目录),根文件系统内的文件全部放到这里

sudo mkdir rootfs

2. 拷贝busybox命令到根目录下

sudo cp busybox-1.20.2/_install/* -r rootfs/

3. 从工具链中拷贝运行库到lib目录下

sudo cp -P /usr/arm-linux-gnueabi/lib/* rootfs/lib/

4. 创建4个tty端终设备
sudo mknod rootfs/dev/tty1 c 4 1
sudo mknod rootfs/dev/tty2 c 4 2
sudo mknod rootfs/dev/tty3 c 4 3
sudo mknod rootfs/dev/tty4 c 4 4

制作根文件系统镜像
1. 生成32M大小的镜像

 dd if=/dev/zero of=a9rootfs.ext3 bs=1M count=32

2. 格式化成ext3文件系统

mkfs.ext3 a9rootfs.ext3

3.  将文件拷贝到镜像中

sudo mkdir tmpfs
sudo mount -t ext3 a9rootfs.ext3 tmpfs/ -o loop
 cp -r rootfs/*  tmpfs/
sudo umount tmpfs


qemu-system-arm -M vexpress-a9 -m 512M -kernel /home/ivan/qemu/linux/arch/arm/boot/zImage \

-nographic -append "root=/dev/mmcblk0  console=ttyAMA0" -sd a9rootfs.ext3

制作交叉编译器:

http://wiki.ubuntu.org.cn/Crosstool-ng制作交叉编译工具链


制作文件系统:

http://www.linuxidc.com/Linux/2011-12/49878p5.htm

http://www.cnblogs.com/Charles-Zhang-Blog/p/3419301.html

0 0
原创粉丝点击