朱恒志(与最后申请证书的姓名务必一致)+《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000
操作系统三大功能:
进程管理(最核心最基础)
内存管理
文件系统
fork系统调用在父进程和子进程各返回一次
子进程中返回的是0,父进程中返回值是子进程的pid。
以程序中的else if(pid==0)和else都会被执行,它的背后有两个进程,可以利用这一点在用户态创建子进程。
fork、vfork和clone三个系统调用都可以创建一个新进程
而且都是通过调用do_fork来实现进程的创建
实验
cd LinuxKernel
rm menu -rf
git clone https://github.com/mengning/menu.git
cd menu
mv test_fork.c test.c
make rootfs
qemu -kernel linux-3.18.6
gdb
file linux-3.18.6/vmlinux
target remote:1234