微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C中的exec家族函数

正如我们所知,exec系列函数调用最终会调用execve() ,这是一个系统调用,剩下的就是库函数。 所以,一般来说,不pipeexecve()是否适用于其他exec*()函数都是如此。

我想知道在执行execve() ,是否所有的信号都被阻塞,直到成功,或者是否有信号传递pid exec对应的pid ? (我知道它不会成功返回,调用函数的进一步执行不会发生)

创build一个应用程序钩子?

不能为C ++方法添加perf探针

防止用户从“保存文件”对话框中操作文件

从C程序中确定TASK_SIZE

以编程方式获取Windows操作系统版本

我不知道我的问题是否正确,如果我错了,请随时纠正。

但是,基本上,从过程的角度来看,系统调用可以被认为是“原子”的。 因此,一旦启动了execve()系统调用,只有内核才会启动,直到运行新的命令或者出现错误代码失败或者SIGKILL信号失败(因为SIGKILL是唯一的不可阻挡的信号)。

但是,一旦execve()产生了一个新的进程(并从内核返回),它完全可以与任何信号中断。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐