I don't understand -- what does the $(VAR) refer to? Which process's
environment is used for $(VAR)? Or is VAR not an environmental variable?
The process making the call, of course.
If it is an environmental variable, wouldn't the environment have to be
passed around?
Well, I don't recall whether this was in user space or not (it has been a
while). It may well be that the kernel simply maintained a pointer to the user
environment, and so had it available for reference when the kernel mapped a
name into an object.
Leonard