码迷,mamicode.com
首页 > 系统相关 > 详细

linux的子进程调用exec( )系列函数

时间:2017-04-20 18:31:26      阅读:294      评论:0      收藏:0      [点我收藏+]

标签:cve   通过   exec函数   name   系统   argv   文件名   变量   文件   

exec( )函数族 :
   以下我们来看看一个进程怎样来启动还有一个程序的运行。在Linux中要使用exec函数族。系统调用execve()对当前进程进行替换,替换者为一个指定的程序,其參数包含文件名称(filename)、參数列表(argv)以及环境变量(envp)。exec函数族当然不止一个。但它们大致同样,在Linux中,它们各自是:execl,execlp。execle,execv,execve和execvp,以下我仅仅以execlp为例,其他函数到底与execlp有何差别,请通过manexec命令来了解它们的详细情况。
   一个进程一旦调用exec类函数,它本身就"死亡"了。系统把代码段替换成新的程序的代码,废弃原有的数据段和堆栈段,并为新程序分配新的数据段与堆栈段,唯一留下的,就是进程号。也就是说,对系统而言,还是同一个进程,只是已经是还有一个程序了。

(只是exec类函数中有的还同意继承环境变量之类的信息。

linux的子进程调用exec( )系列函数

标签:cve   通过   exec函数   name   系统   argv   文件名   变量   文件   

原文地址:http://www.cnblogs.com/cxchanpin/p/6740004.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!