Linux内核及分析 第六周 分析Linux内核创建一个新进程的过程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux内核及分析 第六周 分析Linux内核创建一个新进程的过程相关的知识,希望对你有一定的参考价值。
实验过程
1.github上克隆相应的mengning/menu.git
2.测试menuOS,测试fork直接执行结果
3.配置调试系统,进入gdb调试,利用file linux-3.18.6/vmlinux和target remote:1234来配置加载初始调试环境
4.在linux内核进程创建可能用到的点设置断点分别为sys_clone,do_fork,dup_task_struct,copy_thread,copy_process和ret_from_fork.
总结:
1.通过调用do_fork来实现进程的创建;
2.复制父进程PCB--task_struct来创建一个新进程,要给新进程分配一个新的内核堆栈;
3.修改复制过来的进程数据,比如pid、进程链表等等执行copy_process和copy_thread 4、成功创建新进
作者: 王雪铖
原创作品转载请注明出处
《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000
以上是关于Linux内核及分析 第六周 分析Linux内核创建一个新进程的过程的主要内容,如果未能解决你的问题,请参考以下文章
20135327郭皓--Linux内核分析第六周 进程的描述和进程的创建