fork后子进程保留了父进程的什么?

使用fork函数得到的子进程从父进程的继承了整个进程的地址空间

包括:

  1. 进程上下文
  2. 进程堆栈
  3. 内存信息
  4. 打开的文件描述符
  5. 信号控制设置
  6. 进程优先级、进程组号
  7. 当前工作目录
  8. 根目录
  9. 资源限制
  10. 控制终端等


子进程与父进程的区别在于:

  • 父进程设置的锁,子进程不继承(因为如果是排它锁,被继承的话,矛盾了)

  • 各自的进程ID和父进程ID不同

  • 子进程的未决告警被清除;

  • 子进程的未决信号集设置为空集。 -mickole博客

你可能感兴趣的:(fork后子进程保留了父进程的什么?)