gpt4 book ai didi

linux - 环境变量是内核空间的一部分吗?

转载 作者:太空宇宙 更新时间:2023-11-04 10:14:18 24 4
gpt4 key购买 nike

我已经搜索这个问题好几个小时了,但找不到简单的是或否答案(或者可能取决于操作系统或架构),这正是我要找的。这可能是一个非常微不足道的问题。

我的直觉是,进程的环境变量位于内核空间中,因此是内核数据结构,并且位于虚拟地址空间中进程镜像的正上方。

最佳答案

为什么你认为环境存储在内核中?

这将需要一个专门的系统调用来导出它或映射到进程中的共享内存区域。但是进程可以修改它自己的环境,那么现在会发生什么?检查环境最初是否与 argv 一起存储在堆栈中是微不足道的。

同样,您为什么要四处搜索而不是检查实现。例如,有/proc/PID/environ 并检查清楚地表明它正在从目标进程的地址空间中读取。 http://elixir.free-electrons.com/linux/latest/source/fs/proc/base.c#L908

关于linux - 环境变量是内核空间的一部分吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47169141/

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