exec系统调用

因为调用exec并不创建新进程,所以前后的进程ID并未改变。exec只是用一个全新的程序替换了当前进程的正文、数据、堆和栈段。

exec函数函数:通常exec函数不返回,成功的调用会调转到新程序的入口点作为结束,而刚刚才被运行的代码是不会存在于进程进程的地址空间中。

exec函数调用,改变哪些属性:

  1. 任何挂起的信号都被丢失;
  2. 捕捉的任何信号会被还原为缺省的处理方式;
  3. 任何内存的锁定都会丢失;
  4. 多数线程的属性会被还原到初始值;
  5. 多数关于进程的统计信息会复位。
  6. 与进程内存相关的任何数据都会丢失,包括映射的文件。
  7. 包括C语言函数库的一些特性,独立存在于用户空间中的数据都会被丢失

没有改变:

  1. 各种ID;pid ppid 
  2. 优先级 、用户组等

 

 

 

 

 

参考:https://www.cnblogs.com/nufangrensheng/p/3510821.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值