实验六 分析 Linux 内核创建一个新进程的过程
首先打开实验楼,进入LinuxKernel目录下,将menu文件夹删除并重新下载
然后进入menu目录下,首先使用mv test_fork.c test.c命令将test.c覆盖,并执行make rootfs命令进行编译,能够正常得到qemu窗口
此时在qemu中使用help命令,发现已经配备有fork命令,执行fork能够创建子进程
此时返回LinuxKernel目录下,执行qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img -S -s命令,编译内核并暂停,然后在另一个窗口使用qdb进行调试
按照课程视频的指示设置如下六个断点:sys_clone、do_fork、dup_task_struct、copy_process、copy_thread、ret_from_fork
运行,所得到的结果如下所示: