![Linux:为什么要先执行一个程序,我们需要复制当前程序?](https://linux22.com/image/161379/Linux%EF%BC%9A%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%85%88%E6%89%A7%E8%A1%8C%E4%B8%80%E4%B8%AA%E7%A8%8B%E5%BA%8F%EF%BC%8C%E6%88%91%E4%BB%AC%E9%9C%80%E8%A6%81%E5%A4%8D%E5%88%B6%E5%BD%93%E5%89%8D%E7%A8%8B%E5%BA%8F%EF%BC%9F%20.png)
在我看来,这是一个非常普遍的问题,我想在计算机科学网站上问,但找不到合适的标签,所以在这里问。如果合适请版主移走。
正如我在很多地方读过的那样,例如这里eval 和 exec 有什么区别?在 Linux 中运行程序父进程forks
(复制所有信息)本身,然后通过调用替换该 fork 本身执行与所需的程序。
为什么不直接制定/开始一个新流程呢?它如何更好(因为它是这样实现的,从某些标准来看它看起来更好)?
我无法通过网络搜索找到答案Linux: why to execute a program first we need to copy (fork) current one?
,这里的 SE 问题exec
fork
是关于技术细节,而不是为什么类型。