execve()系统调用学习
先来一个小程序, 它的功能是打印父子进程号, 传入的全部参数及两个环境变量(如果有):
process.c
#include #include#include#include
int main(int argc,char *argv[],char *env[])
{inti;
char *p;
printf("\n=========I am a process image!============\n");
printf("\nMy pid = %d, parentpid = %d\n", getpid(), getppid());for(i=0; i< argc; i++)
printf("\nargv[%d]: %s\n",i ,argv[i]);p= getenv("env1");if(p !=NULL)
printf("\nenv1 = %s\n",p);
p= getenv("env2");if(p !=NULL)
printf("\nenv2 = %s\n\n",p);
printf("\n============= process =================\n\n");
sle