登录 注册
当前位置:主页 > 资源下载 > 11 > 鸿鹄论坛上的华为认证h35-211-hcnp-access network题库涉及exec函数

鸿鹄论坛上的华为认证h35-211-hcnp-access network题库涉及exec函数

  • 更新:2024-11-05 10:21:44
  • 大小:18.16MB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:Unix - 操作系统
  • 格式:PDF

资源介绍

8.9 exec函数 8 . 3节曾提及用f o r k函数创建子进程后,子进程往往要调用一种e x e c函数以执行另一个程序。 当进程调用一种 e x e c函数时,该进程完全由新程序代换,而新程序则从其 m a i n函数开始执行。 因为调用e x e c并不创建新进程,所以前后的进程 I D并未改变。e x e c只是用另一个新程序替换了 当前进程的正文、数据、堆和栈段。 有六种不同的e x e c函数可供使用,它们常常被统称为 e x e c函数。这些e x e c函数都是U N I X进 程控制原语。用f o r k可以创建新进程,用e x e c可以执行新的程序。e x i t函数和两个w a i t函数处理 终止和等待终止。这些是我们需要的基本的进程控制原语。在后面各节中将使用这些原语构造 另外一些如p o p e n和s y s t e m之类的函数。 #include int execl(const char *p a t h n a m e, const char *a rg 0, ... /* (char *) 0 */); int execv(const char *p a t h n a m e, char *const a rgv [] ); int execle(const char *p a t h n a m e, const char *a rg 0, ... /* (char *)0, char *const e n v p [] */); int execve(const char *p a t h n a m e, char *const a rgv [], char *const envp [] ); int execlp(const char *f i l e n a m e, const char *a rg 0, ... /* (char *) 0 */); int execvp(const char *f i l e n a m e, char *const a rgv [] ); 六个函数返回:若出错则为- 1,若成功则不返回 这些函数之间的第一个区别是前四个取路径名作为参数,后两个则取文件名作为参数。当 指定f i l e n a m e作为参数时: 1 5 6 U N I X环境高级编程 下载