QEMU 运行 Linux 内核
模拟x86
qemu-system-x86_64 \
-kernel bzImage \
-append "root=/dev/vda rw" \
-drive file=rootfs.img,format=raw,if=virtio
模拟asm
qemu-system-arm \
-M vexpress-a9 \
-m 512M -kernel zImage_vexpress \
-dtb vexpress-v2p-ca9.dtb \
-drive file=rootfs_vexpress_1.ext2,if=sd,format=raw \
-append "rootwait root=/dev/mmcblk0 console=ttyAMA0" \
-nographic
编译内核
make -j$(nproc) 2>&1 | tee log
make clean # 删除大多数的编译生成文件, 但是会保留内核的配置文件.config, 还有足够的编译支持来建立扩展模块
make mrproper # 删除所有的编译生成文件, 还有内核配置文件, 再加上各种备份文件
make distclean # mrproper删除的文件, 加上编辑备份文件和一些补丁文件。
启动uboot
make vexpress_ca9x4_defconfig
make -j$(nproc)
qemu-system-arm \
-M vexpress-a9 \
-m 512M \
-kernel ./u-boot \
-nographic \
-sd rootfs_vexpress.ext2
uboot cmd
mmc dev 0
mmc info
ls mmc 0
setenv bootargs rootwait root=/dev/mmcblk0 console=ttyAMA0
load mmc 0:0 0x60000000 zImage_vexpress
load mmc 0:0 0x61000000 vexpress-v2p-ca9.dtb
bootz 0x60000000 - 0x61000000
# 或者
load mmc 0 $kernel_add_r zImage_vexpress
load mmc 0 $fdt_addr_r $fdtfile
bootz $kernel_add_r - $fdt_addr_r


浙公网安备 33010602011771号