cd/home/richardyao/kernel-study/linux-6.11.2# make help 查看帮助make clean mrproper distclean# 执行清理make defconfig make kvm_guest.config make -j8 编译完成之后会得到kernel binary文件vmlinux和打包的内核镜像文件bzImage,如下图: 第四步:创建根文件系统 要启动并运行linux的内核,仅仅有内核的镜像是不...
编译kernel make ARCH=arm64 menuconfig LLVM=1 # 可能会提示缺少部分依赖库,以及交叉编译工具链,不展开介绍 #在menuconfig中,打开需要的kernel config,本文打开KASAN配置 # 目录层级 # - Kernel hacking # -- KASAN: runtime memory debugger 将此项置为Y 保存后,可通过cat .config判断配置修改是否生效: cat ...
qemu-system-i386 -kernel miniboot.elf 启动Linux kernel,和上面启动 OS 一样,只是换了一个程序 通常有两个阶段,kernel 启动后会加载initramfs,再跳转到rootfs,这些可以通过参数指定:https://docs.kernel.org/admin-guide/kernel-parameters.html 1、可以先让 kernel 启动后在 initramfs 下执行一个小程序测试下。...
(gdb)target remote:1234 # 建立gdb和gdbserver之间的连接 (gdb)break start_kernel # 断点的设置可以在 target remote 之前,也可以在之后 (gdb)continue # 让qemu上的Linux继续运行 1. 2. 3. 4. 5. 6. 7. 注意要先跑qemu启动,但是会卡,此时运行起来,程序不会有任何的启动信息,只有挂上gdb并run后,才...
使用loop模式用来将一个档案当成硬盘分割挂上系统sudo mount -t ext3 rootfs.ext3 tmpfs/ -o loop#拷贝rootfs的所有文件到sd卡中sudo cp -r rootfs/* tmpfs/#卸载sd(块设备不能直接读写)sudo umount tmpfs#7.#使用qemu在这个最小文件系统上运行linux kernelsh step_qemu_run_os.sh#step_qemu_run_os.sh...
06—qemu运行opensbi+kernel+rootfs 新建一个run.sh文件,写入如下内容: qemu-9.1.1/build/qemu-system-riscv64 -M virt -smp 4 -m 4G \ -bios opensbi/build/platform/generic/firmware/fw_jump.bin \ -kernel linux-6.11.4/arch/riscv/boot/Image \ ...
linux-0.2.img -net nic -net tap,ifname=tap0,script=/etc/qemu-ifup qemu -kernel /opt/linux-2.6/arch/x86/boot/bzImage -hda linux-0.2.img -append "root/dev/hda" 923 qemu -kernel /opt/linux-2.6/arch/x86/boot/bzImage -hda linux-0.2.img -append "root/dev/hda" 924 qemu -kernel /...
qemu-system-arm -M vexpress-a9 -m 512M -nographic -kernel u-boot/u-boot 单独启动uboot的实验:制作文件系统 新建目录用于存放文件系统 mkdir rootfs/lib mkdir rootfs/dev 复制_install/目录下所有文件和连接库到rootfs cp -r busyboxsource/_install/* rootfs cp -p /usr/arm-linux-gnueabi/lib/*...
[linux-4.19.172]$gdb(gdb)file vmlinux # vmlinux 位于目录 linux-4.19.172中(gdb)target remote:1234(gdb)breakstart_kernel # 有些文档建议使用 hb 硬件断点,我在本地测试使用break也是 ok的(gdb)c # 启动调试,则内核会停止在 start_kernel 函数处 ...
【记录】Ubuntu下用arm-xscale-linux-gnueabi交叉编译linux-2.6.19.1内核 且已经有了对应的rootfs了,所以算是基本齐全了。 后来得知有个QEMU,和SkyEye类似,可以模拟arm开发板。 所以,尝试去试试,能否在Ubuntu下,用QEMU去模拟加载并运行Uboot,kernel,rootfs。