gpt4 book ai didi

c - 如何知道环境变量是否继承自父进程?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:09:48 24 4
gpt4 key购买 nike

考虑一个运行在 PID 100 的进程(它可以是一个普通的 shell 命令行)。因此,我们启动一个程序 (fork()/exec()),它开始在 PID 101 中运行。现在我们的 playground 已准备就绪:

在 PID 101 中运行的程序导出一些环境变量,并在第二个程序中执行 exec(),然后,它开始在相同的 PID 101(“环境”)中运行。

第二个程序如何知道某个环境变量是从父 PID 100 导出的,还是由在“重用”当前 PID 中运行的前任程序定义的?

最佳答案

How can this second program know if a certain environment variable was exported from the parent PID 100 or was defined by the predecessor program running in the "reused" current PID ?

没有办法区分它(除非变量本身包含一些额外的信息——例如它们的名称或值中的前缀/后缀等)。

就 PID 101 而言,每个环境变量都来自其父级(一个进程只有一个父级),它不关心也不知道它是来自 PID 100 还是来自 PID 100 的父进程或导致 PID 101 执行的其他进程。

关于c - 如何知道环境变量是否继承自父进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39294459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com