bootloader
1. bootasm.S : start32
2. bootmain.c : bootmain
kernel
3. main.c : main
4. proc.c : userinit
创建第一个用户进程 initcode
5. main.c : mpmain
调用scheduler开始任务调度
用户空间的第一个进程
调用内核接口SYS_exec,使用 init 替换掉自己,然后开始执行init,在init中循环启动sh,等待sh执行结束,然后又启动sh ,