版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wuli_dear_wang/article/details/86154542
Linux 进程的系统调用:
首先什么是系统调用?
1、系统调用是受控的内核入口,借助这一机制,进程可以请求内核以自己的名义去执行某些动作,以应用程序编程接口的形式(API),内核提供了一系列服务。
2、实现系统调用2种方式:
- 封装C库调用
- 直接调用
sys-fork:完整派生
sys_clone:通过参数复制资源
sys_vfork:复制 task_struct ,其他共享,阻塞父进程
结构流程图如下:
Linux进程管理和调度
执行完进程的系统调用后,下面来看看进程的管理和调度
一张图带你看懂 Linux 进程管理和调度的整个过程:(流程线上面的函数名就是内核里面相应执行过程的代码段)
Linux 进程销毁
进行执行结束,销毁事件的驱动有如下三个原因:
- 正常的进程结束
- 信号
- exit函数的调用
结构流程图如下: