1. 地址空间各段拷贝:

fork: 内核为子进程生成新的地址空间结构,拷贝父进程的代码段,数据空间,堆,栈到自身的地址空间,但注意:子进程的代码段并不会分配物理空间,而是指向父进程的代码段物理空间,保持共享;子进程的数据空间,堆,栈都会对应分配物理空间;

写时复制(COW):内核为子进程生成新的地址空间结构,拷贝父进程代码段,数据空间,堆,栈道自身的地址空间,但是相应段都指向了父进程的对应段的物理空间,并且权限是只读的,如果父子进程任一个视图修改这些区域,则内核为修改区域的内存做一个副本;

vfork: 内核不为子进程生成新的地址空间结构,直接共享父进程的虚拟地址空间,当然其对应的物理空间也是共享的;

2. 执行顺序:

  fork:父、子进程的执行顺序不确定;

  vfork:保证子进程先运行,在子进程调用了exec或者exit之后父进程才可能被调用运行,如果在调用这两个函数之前,子进程依赖父进程的进一步动作,将会导致死锁;

另:关于fork,vfork,写时拷贝请查看下面文章:

http://www.cnblogs.com/wanpengcoder/articles/5310331.html

最新文章

  1. 【荐】PHP Session和Cookie,Session阻塞,Session垃圾回收,Redis共享Session,不推荐Memcached保存Session
  2. [技术学习]js正则表达式汇总
  3. java中的抽象类和接口
  4. Oracle数据库入门——物化视图日志结构
  5. ClassLoader
  6. 第46套题【STL】【贪心】【递推】【BFS 图】
  7. c语言中register类型的变量
  8. android116 轮播 viewPager实现
  9. 大用处--PowerShell Management Library for Hyper-V.
  10. QT动画介绍(有例子可以下载)
  11. PE格式第九讲,资源表解析
  12. window 安装redis、memcache的php扩展和 reidis 、memcache 及 reids管理软件
  13. L343 中译英
  14. 谷歌浏览器内核Cef js代码整理(一)
  15. xamarin.Android ImageView 图片圆角(自定义属性、扩展控件)
  16. 【Mysql】—— 索引的分类
  17. python loggin
  18. ZT 二叉树先序,中序,后序遍历非递归实现
  19. Hibernate 不同数据库的连接及SQL方言
  20. Linux命令之ip命令

热门文章

  1. [C/C++] char data[0](柔性数组)
  2. 如何实时获取DBGrid 中当前单元格输入的内容?
  3. Delphi 的绘图功能[8] - TextOut、TextWidth、TextHeight
  4. 深入学习 Redis系列
  5. 在ios 上 按钮 disabled 样式显示异常
  6. Qt——树结点的搜索
  7. Jquery常用正则验证
  8. [Vue源码分析] v-model实现原理
  9. bzoj4300: 绝世好题(DP)
  10. mybatis <where>、<set>、<trim>、<sql>、<foreach>标签的使用