文章目录






一、系统调用简介



在开发应用程序时 , 进行 " 进程创建 " , 调用的 ​​fork()​​​ , ​​vfork()​​​ , ​​clone()​​ 等函数 , 就是 " 系统调用 " ;

" 系统调用 " 是 操作系统 提供的 应用程序 调用 内核功能 的接口 , 如 : 创建进程 , 文件操作 等 ;



系统调用 与 内核 的关系 :

在 应用进程 中调用 ​​fork()​​​ 系统调用 函数 , 实际上调用的是 Linux 内核中的 ​​sys_fork()​​ 函数 ;

在 应用进程 中调用 ​​vfork()​​​ 系统调用 函数 , 实际上调用的是 Linux 内核中的 ​​sys_vfork()​​ 函数 ;

在 应用进程 中调用 ​​clone()​​​ 系统调用 函数 , 实际上调用的是 Linux 内核中的 ​​sys_clone()​​ 函数 ;



Linux 内核中的 ​​sys_fork()​​​ , ​​sys_vfork()​​​ , ​​sys_clone()​​​ 函数 , 调用的是 ​​_do_fork()​​​ 函数 , ​​_do_fork()​​​ 函数调用的是 ​​copy_process()​​ 函数 ;

【Linux 内核】进程管理 ( 系统调用简介 | 进程相关系统调用源码 )_系统调用






二、进程相关系统调用源码



Linux 进程相关 " 系统调用 " 对应的源码在 ​​linux-5.6.18\kernel\fork.c​​ 源码中 ,

【Linux 内核】进程管理 ( 系统调用简介 | 进程相关系统调用源码 )_fork_02

【Linux 内核】进程管理 ( 系统调用简介 | 进程相关系统调用源码 )_进程管理_03