《Unix网络编程》Unix/Linux中exec系函数辨析
来源:互联网 发布:大麦盒子怎么安装软件 编辑:程序博客网 时间:2024/05/21 09:07
存放在硬盘上的的可执行程序在Unix系操作系统上能够被操作系统执行的唯一方法是:由一个现有的进程调用六个exec函数中的某一个。 exec把当前进程映像替换成新的程序文件,而且从该新程序通常从main开始执行,进程ID不发生改变。我们称exec的进程为“调用进程”,新执行的程序为“新程序”。
#include <unistd.h>extern char **environ;int execl(const char *path, const char *arg, ... /* (char *) NULL */);int execlp(const char *file, const char *arg, ... /* (char *) NULL */);int execle(const char *path, const char *arg, ... /*, (char *) NULL, char * const envp[] */);int execv(const char *path, char *const argv[]);int execvp(const char *file, char *const argv[]);int execvpe(const char *file, char *const argv[], char *const envp[]);
返回值:若成功将不返回, 失败返回-1
这些函数往往出错才返回调用者, 否则,控制将被传递给新程序的起始点(通常是main函数)。
这六个函数只有execve是内核中的系统调用,其它都是调用execve的库函数。
应用实例:
char *path = "/bin/ls";char *argv[]={"ls","-l",(char *)0};execv(path,argv);
阅读全文
0 0
- 《Unix网络编程》Unix/Linux中exec系函数辨析
- Unix 网络编程 函数
- Linux/UNIX网络编程
- 【Linux】UNIX网络编程
- Unix exec 函数族
- unix 网络编程常用函数
- Unix网络编程 gethostbyname函数
- Unix网络编程相关函数
- Unix网络编程基本函数
- UNIX网络编程 poll函数
- Unix网络编程 函数运用
- Unix/Linux系统网络编程
- Linux/Unix网络编程之UDP的connect函数
- unix网络编程中一些常见的函数的总结
- 《unix网络编程》中readline函数改进版
- 《UNIX环境高级编程》笔记--exec系列函数
- Linux/Unix网络编程指南(Socket 编程)
- Linux/Unix网络编程指南(Socket 编程)
- 字符串进制转换(进制转换 金马五校赛-上海大学)
- BZOJ 3196 二逼平衡树 树套树
- 点击量自动增加
- 跟着示例学Ubuntu UFW防火墙设置
- C编程(八)数组
- 《Unix网络编程》Unix/Linux中exec系函数辨析
- Editplus搭建C/C++运行环境,包括gdb调试功能
- JAVA拦截器拦截SQL注入(所有参数)
- win10_java+selenium环境搭建
- “servlet监听器”以及在web.xml中的配置
- 存储过程
- A序列(最长上升子序列 金马五校赛-上海大学)
- 用两个栈实现队列,用两个队列实现一个栈
- excel数据库设计表转换成sql建表语句