进程相关知识的整理
来源:互联网 发布:淘宝店铺做淘宝客 编辑:程序博客网 时间:2024/05/17 01:01
关于进程 :fork 以及 vfork 之间的一些比较。
fork :1.使用fork创建进程时,子进程采用COW(写时复制)技术复制父进程中的内容。
2.子进程具有独立的地址空间,相同的变量,在父进程中发生变化并不会影响子进程中的变量。
3.fork之后的程序会分别被父进程以及子进程执行一遍,即一共执行两次。
4.fork的父子进程并没有确定的执行顺序。
vfork :1.vfork功能也是启动一个进程,使用其启动的进程,父子进程共用一个地址空间,内容都是共享的。
2.vfork启动的进程,有特定的执行顺序,子进程首先执行,而在子进程为结束之前父进程会处于阻塞状态。
3.其中一个进程中的变量发生变化会影响另一个进程中对应的数值。
4.vfork产生的子进程必须使用exit()函数来将他结束。
两种特殊的进程 :1.孤儿进程 :子进程在未结束之前,其父进程先行结束(死亡),此时该子进程的父进程就变成了pid = 1的初始进程。
2.僵尸进程: 子进程结束的时候,由于父进程忙于执行其他的程序而无法为其收尸(即回收它),这时它就变成了僵尸进程。
(僵尸进程过多会导致系统崩溃,所以要预防其的产生,为预防僵尸进程,我们可以调用wait和waitpid函数。
进程的退出:1.正常退出: return ,exit(),_exit()
2.异常退出: about函数,进程收到某种信号,使其退出。
进程间的通信: 1.管道通信:管道通信是单向的,而且其中的数据一旦被读出就会被删除。
管道通信分为无名管道和有名管道,无名管道针对有亲缘关系的进程,有名管道无这种限制。
2.共享空间:共享空间在内存上创建一块空间,可以被多个进程共享。(可类比于公告栏)
3.信号:产生可由硬件产生,也可以由软件产生。处理方式有三种:忽略,执行和捕捉。
fork :1.使用fork创建进程时,子进程采用COW(写时复制)技术复制父进程中的内容。
2.子进程具有独立的地址空间,相同的变量,在父进程中发生变化并不会影响子进程中的变量。
3.fork之后的程序会分别被父进程以及子进程执行一遍,即一共执行两次。
4.fork的父子进程并没有确定的执行顺序。
vfork :1.vfork功能也是启动一个进程,使用其启动的进程,父子进程共用一个地址空间,内容都是共享的。
2.vfork启动的进程,有特定的执行顺序,子进程首先执行,而在子进程为结束之前父进程会处于阻塞状态。
3.其中一个进程中的变量发生变化会影响另一个进程中对应的数值。
4.vfork产生的子进程必须使用exit()函数来将他结束。
两种特殊的进程 :1.孤儿进程 :子进程在未结束之前,其父进程先行结束(死亡),此时该子进程的父进程就变成了pid = 1的初始进程。
2.僵尸进程: 子进程结束的时候,由于父进程忙于执行其他的程序而无法为其收尸(即回收它),这时它就变成了僵尸进程。
(僵尸进程过多会导致系统崩溃,所以要预防其的产生,为预防僵尸进程,我们可以调用wait和waitpid函数。
进程的退出:1.正常退出: return ,exit(),_exit()
2.异常退出: about函数,进程收到某种信号,使其退出。
进程间的通信: 1.管道通信:管道通信是单向的,而且其中的数据一旦被读出就会被删除。
管道通信分为无名管道和有名管道,无名管道针对有亲缘关系的进程,有名管道无这种限制。
2.共享空间:共享空间在内存上创建一块空间,可以被多个进程共享。(可类比于公告栏)
3.信号:产生可由硬件产生,也可以由软件产生。处理方式有三种:忽略,执行和捕捉。
阅读全文
0 0
- 进程相关知识的整理
- 进程的相关知识
- 进程的相关知识
- 进程的相关知识
- 整理View的相关知识
- 进程的相关知识总结
- 进程控制的相关知识
- 多进程的相关知识
- 【黑马程序员】CSS的相关知识整理
- IP地址库的相关知识整理
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- JVM的相关知识整理和学习
- Tensorflow深度学习之二:简单卷积神经网络CNN
- ubuntu live cd修复grub引导项
- How Many Nines (前缀和 + 模拟日期)
- LA 4794(dp+枚举子集)分享巧克力
- ARM定时器
- 进程相关知识的整理
- python弱引用使用介绍
- PHP实现生成word文档
- Log4J入门教程(一) 入门例程
- Wi-Fi CSI的那些事(一)
- 图的邻接表表示法
- jboss小结
- 面试题58:二叉树的下一个结点
- Zookeeper源码解析——快速选举流程